John has been working on enhancements to the backend of pc-sysinstaller. He describes his progress so far and brainstorms possible future features with Will Backman on today’s issue of BSDTalk. John hopes to have testing snapshots that include his changes in time for MeetBSD in early November and we’ll announce them here when they are available so you can check them out.
We’re starting to fill in the TODO list for PC-BSD 9.0 and you can view the list here. As items are marked as DONE, we’ll note them on the blog.
Two items were recently completed by Kris and he has hyperlinked their associated “DONE” with their location in the code repository.
The first is to modify the installer to allow for file-system selection when doing auto-partitioning and making UFS+SUJ the default file-system. If you’re not familiar with UFS+SUJ, it is described as follows by FreeBSD committer Ivan Voras:
The venerable UFS has finally received integrated journalling. Earlier it was possible to use gjournal (in whose making I’ve actually participated in an roundabout way) but it was a bulk-data journalling effort, making no distinction between data and metadata, requiring a large journal. The SUJ mode is an addon to SoftUpdates, extending it to record a very small intent-log journal for the edge-cases where it required a (light version of) fsck. This development makes UFS a fully fsck-less file system in the common case.
The second is the creation of the new pc-controlpanel utility. This is a “system settings”-like application which makes it easy to manage PC-BSD. After running it as root once, you can access any of the other PC-BSD specific GUI configuration utilities, regardless of the desktop environment or window manager being used.
Late last week, Kris commited the PBI command line utilities that will go into 9.0. This post contains instructions for those who wish to give the commands a try (they work on 8.x) and how you can help with documentation, usage examples, and feature suggestions. If you like using Software Manager, don’t worry as that will still be in 9–these utilities are additional goodies for those comfortable with the command line and who are looking for a FreeBSD-like PBI command suite similar to pkg_add, pkg_info, etc.
To try out the utilities, cd to your home directory (or other suitable directory) and issue the following commands:
# svn co svn://svn.pcbsd.org/pcbsd/current/src-qt4/pbi-manager
# cd pbi-manager
# sh install.sh (as the superuser)
I’ve started some documentation to briefly describe what you get. Note that the documentation gives the 9.0 paths–for now, you’ll see the described files in your pbi-manager directory.
Currently there isn’t a test repository containing 9 PBIs so pbi_add -r won’t work unless you first create a PBI and pbi_update(1) won’t work until a newer version of the underlying port is made into a PBI. We’ll announce the availability of the test repository once it is up, which should be shortly after the 9.0 alpha snapshots become available. If you’re already familiar with how to create a PBI, give the pbi_create(1) command a go. If you’d like to try converting a port skeleton into a PBI, try pbi_makeport(1). The modules-examples/ directory contains examples for firefox and gimp so that you can compare the new module format to the old module format.
Here’s where you can help us out:
- we need real-world usage examples; if you want to help us write them on the wiki, leave a comment or hop onto #pcbsd on IRC freenode and we’ll make sure you get a wiki account. If you write a how-to on your website/blog/etc., let us know so we can refer other users to it.
- we need to let others know about the new functionality, especially FreeBSD users familiar with ports and packages. Feel free to blog/tweet/etc. your experiments!
- we will need people to become PBI creators so we have a great repository of software for when 9 is released.
- we need people to review and help edit these 2 pages: the PBI Manager section of the PC-BSD 9 Handbook and the PBI Module Builder Guide so that it contains instructions for both 8.x and 9.x formats and is easy for new PBI creators to follow.
- we need feature suggestions for the PBI command line tools. Is there something you can do with a pkg_* command that you can’t do with a pbi_* command? Is there something that would be really cool to do with PBIs that currently is not being done?
- we’ll need translators for the man pages. I’ll check to get an ETA on when they will be available in Pootle.
If these PBI tools interest you, we recommend that you join the pbi-dev mailing list as there will be much discussion on the new format and tools between now and the release of 9. If getting email from a list is not your thing, check out the gmane options for this list.
One of the changes coming in 9.0 is the ability to select multiple desktop environments during installation. Kris completed the code for this late last week and was able to show it off at the PC-BSD booth during Ohio LinuxFest. Here is a preliminary screenshot:
In order to fully integrate the PC-BSD utilities into a desktop manager, the desktop manager must be XDG-compliant. At the moment, the 9.0 installer supports KDE, GNOME, XFCE, and LXDE (not shown in screenshot). In addition to selecting the desktop environment, the user can expand the selection in order to choose which components of the desktop environment will be installed.
Non-XDG-compliant window managers may be added (but won’t fully integrate) or may be made available as PBIs.
We will be looking for testers before the end of this year so we can start finding bugs and submitting bug reports for the included window managers. Leave a comment if your favourite desktop environment/window manager is not listed in this post so it can be considered for inclusion (or a PBI be made if there is not one). Stay tuned for more information on how to become a tester.