One of the new configuration icons that will be in 9.0’s PC-BSD Control Panel is called Service Manager. It is a front-end to rc.conf, allowing users to easily see which services with rc.conf knobs are currently installed; to disable or enable the startup of a service; or to start, stop, or restart a service. Here is a screenshot showing that the system services are listed first alphabetically, followed by an alphabetical list of services that were installed from FreeBSD ports/packages. In this example, cupsd is currently running and enabled at startup. Since it is highlighted, the user can stop, restart, or disable this service:
Service Manager works in PC-BSD 8.x, meaning you don’t have to wait til 9.0 to try it out. If you’d like to install the entire control panel, follow the instructions in this blog post. If you only want to install Service Manager, replace the svn command in those instructions with:
svn co svn://svn.pcbsd.org/pcbsd/current/src-qt4/pc-servicemanager/
and cd to the pc-servicemanager directory to issue your make commands.
To start just this application (rather than the whole control panel), issue this command as a regular user:
There is one known issue: some ports that provide rc scripts do not support the status directive. You will know this is the case if the port installs an rc script into /usr/local/etc/rc.d/ but the service does not appear in pc-servicemanager. We would like to locate as many of these ports as possible so that we can submit a PR to the ports bugs database so the rc script can be corrected. Let us know if you find any and we can either assist you in submitting a PR or submit one for you.
Recently we blogged about the new pc-controlpanel. For those who would like an early peek, you can install this utility on an 8.x system. As the superuser, cd to an appropriate directory and run the following commands:
svn co svn://svn.pcbsd.org/pcbsd/current/src-qt4
Note: The last command will fail with an error if you chose to not install other languages during the initial PC-BSD installation. You can fix this with:
pkg_add –r qt4-linguist
and rerun the make install command.
This will install an entry into System -> PC-BSD Control Panel. Alternately, you can run the command kdesu pc-controlpanel. Here is a screenshot of the current version:
Note: some of the tools in the control panel will not work on 8.x as their code is specific to 9.0. However, you will get a good idea of the changes that are coming in these utilities. Also, the point of the new control panel is to allow easy access to PC-BSD specific utilities from any window manager or desktop environment.
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.