arch bash cakephp dauth devops drupal fosdem foss git golang information age linux lua mail monitoring music n900 netlog openstack photos php productivity python real life thesis travel uzbl vimeo web2.0

new AIF release

My holidays present for Arch devs and users: AIF alpha-0.6 !

* Changes since alpha 0.5:

  • fully reworked disk subsystem:
    • support for lvm and dm_crypt
    • Autoprepare looks exactly the same (ui-wise) but with much cleaner code
    • Manual mode UI is entirely reworked and has a general editor (see screens)
    • Unified, more flexible/reusable backend code for partitioning, making filesystems and mounting them. Uses structured file formats for defining partitions and filesystems
    • Rollback functionality: when something failed while processing, or user changes his mind afterwards, you can do a rollback (things like umount, lvremove etc are done automatically in the correct order) and start over/retry
  • fully decoupled UI (dia/cli):
    • there are now generic, transparent functions for asking dates,numbers,strings,checklist,.. etc with an implementation in both ncurses (dialog) and cli.
    • all code now uses these functions, making the codebase much cleaner. (look at the code for autoprepare for instance)
    • with a simple command line flag you can toggle between running the program in cli or dialog mode.
  • support for commandline args
    /arch/aif -p interactive -d     # runs the interactive profile with debugging enabled
    /arch/aif -p interactive -i cli # runs the interactive profile in CLI mode.
    
  • updated howto for using AUR packages
  • replaced all refs to previous name (fifa) to aif.
  • enabled date/time setting
  • a massive amount of bugfixes
  • a lot of code cleanups

* Screenshots
- AIF manual filesystems, here showing a setup with /dev/sda3 containing a dm_crypt, containing /, and /dev/sda3 containing an LVM setup with 1 LV for /home

- Processing the filesystems. The installer automatically reorders everything

- Rolling back a "/ and /home on top of LVM on top of dm_crypt" setup

- a CLI shot where the partitions/filesystems of the autoprepare just have been processed

* Usability
I tested the installer personally in virtualbox in different scenarios (ftp & cdrom based, autoprepare, manually with normal disk layout,/ on lvm, dm_crypt,.. ), and all produced working installations.
Although I often need to fix bugs after testing a specific scenario, I don't re-test all scenarios each time. YMMV
Note that the installer doesn't automatically add the lvm2/encrypt modules to mkinitcpio yet, and doesn't add the right string for lvm/dm_crypt in grubs menu.lst yet.

There are some known issues (which are not critical, just avoid them or live with them). Here are the biggest ones (for more, see TODO)

  • keyboard and timezone settings from installer don't go into target systems config
  • long selections (eg packages) are very cumbersome to do in CLI mode.

* How?
http://github.com/Dieterbe/aif/tree/master/HOWTO

Use package aif-git from AUR.
Even though I tag releases in git, I don't build packages for them.
I now use the master branch as "stable" branch where I pull in code from the experimental branch after it has been tested.
So the master branch (package aif-git) always contains the latest, stable code.

Use "/arch/aif -p interactive -d" (the interactive procedure is the port of /arch/setup)

Have fun,
Dieter

PS: Thomas Bächler (arch dev) has let me know he wants AIF hosted at http://projects.archlinux.org/ and he will provide me access to their server so I can push to it. Sweet!!

Comments

I haven't tried AIF yet, but I've been reading your release notes and am very excited about this project. A few friends of mine recently pointed me to arch and I have fallen in love. However the installer was seriously lacking, especially in the scripted/network install sense (eg kickstart). I hope to have a chance to try out AIF this weekend, or next week during the holiday. Thanks for the hard work, this looks awesome so far!

-Miah

I've only used Arch Linux once or twice. It was nice, not my bag, but still nice.

Either way though, I really like how you setup your code. Especially your use of comments. Most bash you find on the internet name variables just as you do but never bothers to tell you where on earth it came from or what on earth it is. You have basically done both cleaning and quickly. Nice.

Thanks guys, hope you'll like it Miah.
And yes I know how hard it can be if you have to plough trough the code of someone else, hence some notes, reminders, todo's etc to assist those who dare :)

Keep the good work up, it is really appreciated! ;)


Name:


E-mail:


URL:


Comment:


What is the first name of the guy blogging here?


This comment form is pretty crude. Make sure mandatory fields are entered correctly.
Basic html tags (a,i,b, etc) are allowed, others are sanitized