PC-BSD® Roadmap

From PC-BSD Wiki
Jump to: navigation, search


Release Schedule

Table  Is there no version? a [Tables 1]
Version Date Status
11.0 TBA
 Haswell Support / VPN Support
10.2 Aug 2015 (ETA)
 Security Sweeper / improvements
10.1.2 May 2015 (ETA)
 Code Freeze: 24 April 2015
 Release: 4 May 2015
10.1.1 2 Feb 2015 - Ports Freeze Jan. 16th Released: 2 Feb 2015
10.1 Nov / Dec 2014 Released: 3 Nov 2014
10.0.3 1 September 2014 Released: 7 Sep 2014
10.0.2 June 2014 Released: 24 Jun 2014
10.0.1 March 2014 Released: 14 Mar 2014

New Features / Milestones for

Table  Is there no version? b [Tables 2]


Feature Owner Status Completion Date Details
VPN Manager Add in a VPN interface in the network manager. ken@ Not started
Security Sweeper Add in a utility that will improve the security of PC-BSD and monitor changes in libraries and files. kris@ Not started
AppCafe Proxy Add reverse proxy support for AppCafe to access configuration UI of jails/plugins/pkgs kris@ Not started https://bugs.pcbsd.org/issues/7120
Integrate haswell support This should come in from upstream FreeBSD kris@ Not started
Directory Services Rename Active Directory control panel item to Directory Services ; Add functionality to join an NIS domain ; Add additional configuration options for AD ; Enable pam only when services are enabled ; Enable ldap in pam jmaloney@ Not started
Power management Implement power management solution for PC-BSD. Should be implemeted: power control daemon (mixes powerd functionality with profiles based baclight brigtness control, battery status monitoring, power consumption statistics, ACPI events settings for buttons and notebook lid); command line tool (should be able to control most pwrd functions and may be used for hotkeys bindings like "Win + F4" -> pwrcli setbrightness +10); graphical application (should be able to display power related info ans statistics, change current profile, manage profiles, change backlight and so on) yurkis@ In progress ~20%
Table  Is there no version? c [Tables 3]


Feature Owner Status Completion Date Details
Re-theme / upgrade forums Tie in a new updated theme to the forums and upgrade to latest version josh@ kris@ Done
Secure Boot Add secure-boot shim to UEFI booting / GRUB kris@ Not started
pc-updategui Displaying "End Of Life" date ; Add ability to show and change system branches yurkis@ Done https://github.com/pcbsd/pcbsd/pull/87
Add WPA2 - enterprise to the wireless manager Add ability to distinguish WPA2 enterprise setups ken@ Not started
Improve Active Directory Support Fix screensaver unlocking issues ; Fix sudo auth issues; Fix AppCafe auth issues; Add credential caching; Add domain field to installer; Add domain field to network manager; Enable samba services when AD is enabled; Disable samba services when AD is disabled jmaloney@ Done https://bugs.pcbsd.org/issues/7905
Table  Is there no version? d [Tables 4]


Feature Owner Status Completion Date Details
If firefox is selected it becomes default web browser ken@ Users have suggested that we make firefox register as the default browser if selected during install. Should clarify that if only one browser is selected at install, that it be registered as default browser. If multiple browsers, none is default immediately unless if another prompt is added?
Life-Preserver Encrypted Backups Add support for backing up to GELI backed encrypted devices ken@ kris@ Some experimental support in life-preserver backend, need to finish connecting it to lpreserver command, and then GUI https://github.com/pcbsd/pcbsd/commit/8eb72a6267e12d42aec87967d0f756145703437d
Generic Qt-Webkit viewer Create a new webkit viewer with Qt for use on local configuration servers or html documents (such as the PC-BSD handbook) ken@ Done The new "pc-webkitviewer" utility is complete, and the control panel entries for CUPS and Webmin have been modified to access these local servers from within these containers.
First-boot sound configuration Add the ability to configure the audio output devices from the first-boot setup wizard. ken@ Done
Private mode for desktop sessions Add the personacrypt private mode options, for a desktop session ken@ kris@ Done "Stealth Sessions" may now be used through PCDM once enabled on the system.
PCDM improvements Add the personacrypt home-directory option to PCDM / system ken@ kris@ Done PersonaCrypt support fully integrated into PCDM, as well as the user manager and first-boot GUI
Tor Mode Add an option to let users connect internet traffic to the tor network. kris@ Scripts added to enable running local Tor in transparent proxy mode
LibreSSL migration Convert our ports to switch use security/libressl instead of base system openssl kris@ EDGE packages with libressl as default uploaded 02/28/2015.
IPFW Migration Change the default firewall to IPFW, Update the GUI utility, and Enable VIMAGE by default kris@ In EDGE packages from 2/20/2015
Media Center Installers Add Media Center options / support kris@ Added 02/12/15
Updated GRUB nested menus Cleanup of the grub menu structure kris@ Committed 2/6/2015
Add UEFI + MBR Support Add support for installing to MBR partition while booted in UEFI mode kris@ Done
Switch to Web-Based AppCafe Cleanup and improvements to AppCafe web-interface to make it the default kris@ Switched over 2/9/2015
Table  Is there no version? e [Tables 5]


Feature Owner Status Completion Date Details
TrueOS Frontend for optional package selection Ties in with updating the text installer to be able to select optional packages joshms@ Finished! - still need backend support
New Roles features Add the new PC-BSD Roles to the installer images / Update text-installer with selections joshms@ kris@ Finished!
Qt5 Conversion Migrate our Qt4 utilities -> Qt5 ken@ Finished! Available on EDGE repo right now for testing/usage.
Lumina Qt5 Conversion Migrate the Lumina desktop to Qt5 ken@ Finished! Lumina 0.8.0 (Qt5) available on EDGE repo. 1/6/15
Mount Tray re-write Re-write the mounttray to operate in a new client/daemon configuration, with updated device detection routines ken@ Finished! 1/15/15
Update GRUB GELI support to v7 Add support for GRUB to use the newer GELI v7 schemes kris@ Done! Enable support for GELI v7 in GRUB 1/13/2015
Improved GPT support Add support for installing to dual-boot GPT, convert first GPT partition to bios-boot and more. kris@ Added support to pc-sysinstall, and pc-installgui front-end for doing targeted GPT partition installation 1/9/15
New Update Backend Write new updating backend to improve reliability kris@ and ken@ Finished and merged into EDGE / releng/10.1, along with new Qt5 utilities
Table  Is there no version? f [Tables 6]


Feature Owner Status Completion Date Details
Finish AppCafe-Web Qt Finish / integrate the AppCafe-Web Qt webkit UI ken@ Finished! 9/19/14
Add AppCafe-Web to Text-install Prompt user to setup AppCafe-Web joshms@ Finished!
Add Network configuration to Text-Install Prompt user to setup network during text-install joshms@ Finished! 9/8/14
Convert AppCafe to Web UI Finish development and integrating AppCafe-Web with base system kmoore@ Done! While not the default in 10.1, users can access it via the "pc-softweb" command.
PEFS GUI Create UI for PEFS to crypt some directory or set of directories. User should be able to decrypt directory using password only when he (or she) need data from this directory. May be used for protect some confidential data which are needed time to time yurkis@ Deferred
Import C6 Linux Compat Switch to the C6 linux compat base kmoore@ Finished!
NFS Manager Add the ability to manage NFS shares from pc-controlpanel. jmaloney@ Deferred This will become pc-fstabmanager instead
Lumina Desktop Get the Lumina Desktop ready for an initial 1.0-release. ken@ In progress ~70% Early Beta status - currently at 0.7.
UEFI support Updated sysutils/grub2-efi with support for UEFI booting FreeBSD kmoore@ Finished!
Table  Is there no version? g [Tables 7]


Feature Owner Status Completion Date Details
Import Centos 6.5 Linux Compat Import the Centos 6.5 compat layer from github: https://github.com/xmj/linux-ports kmoore@ Deferred We will look at F20 support instead, but it requires changes to FreeBSD kernel before functioning properly, will most likely be in 10.1 instead.
Warden Backend Updates src-sh/warden backend. Remove all legacy UFS code, and remove 'zfs' prefix on most commands. Improve template / snapshot / cloning functionality, along with export / import. kris@ done 27 June 2014
GELI support for Text-Installer Add support for doing GELI full-disk encryption to text-based installs. kris@ done 26 June 2014
Text-Only install ISOs Add TRUEOS ISO files, which are CD sized and text-only kris@ / joshms@ done 20 Aug 2014
Warden add Bulk creation Added support for doing bulk jail creation based upon an IPv4 starting address kris@ done 7 July 2014
Warden relative ZFS dataset creation Fixed the warden to use relative ZFS dataset creation, allowing the JAILDIR to be moved around kris@ done 16 July 2014
PBI Jail Creation Add support for PBIs to be installed to a new jail on the fly kris@ done 7 July 2014
Screen-reader support with orca Add Orca as a screen reader for the installer, and available as optional package via installer as well. kris@ Declined Due to time-constraints this has been declined for now. This would be a good area for new committers to start though.
AppCafe Application Launching Add the ability for the AppCafe to read/parse a generic package plist to look for binaries that can be run. Also look into adding support for starting/stopping 3rd party services as well as setup those services for automatic starting on system bootup (if desired). ken@ Deferred pkg limitations prevent this implementation at the present time
NFS Manager Add the ability to manage NFS shares from pc-controlpanel. jmaloney@ Deferred Pushing this off until 10.1 in order to have more time to make it work.
System Information Cache Create a client/daemon for polling system information and allowing instant access for utilities ken@ In progress ~90% Almost completely finished. Just finding/adding new sources of information as necessary right now, and might add a "simple syntax" method to the client at a later date (just forwards raw queries to the daemon at the moment)
Table  Is there no version? h [Tables 8]


Feature Owner Status Completion Date Details
Gnome3: Update to actual version (3.12) kris@, Joe Maloney DONE
Finish unifying all UI elements joshms@ DONE
Package Manager: Add pkg cleanup functionality kris@ DONE 12 Mar 2014
Update Center: Finish up the utility yurkis@ DEPRECATED Due to the new software installation strategy AppCafe will update pbi and packages, so we don't need Update Center as separate util. Some features may be ported to the AppCafe and Update Manager UI.
Control panel: Rework items set (add almost all desktop related items for all desktops) yurkis@ Done at 30% (KDE items only)
Control panel: Add “System only items” to the desktop environment chooser. If user selects this- only system-wide related items will be shown. All desktop related items will be hidden yurkis@ DONE
Cp-lsystem only.png
Mount Tray: Update to run with user permissions ken@ DONE 26 March 2014 Updates: Run with User Permissions, EXFAT/EXT4/UDF support, overhauled optical media support
Bluetooth Manager: Overhaul to automatically support mice, keyboards ken@ & joshms@ Not started
Cross-Application Communication: Implement a system for very basic communication between PC-BSD applications (so tray apps update as needed, etc...) ken@ Done Completely finished: new shell utility pc-systemflag and Qt watcher class in libPCBSD
FreeBSD Audio Systems: Implement PulseAudio support, FreeBSD mixer control via tray app, and disable DE-specific audio mixers kris@ & ken@ Done at 80% (Mixer utility and PulseAudio support finished)
PBI Subsystems Re-implement PBI backend, merge with PKGNG and create new INDEX framework kris@ Done 15 May 2014
Full-Disk Encryption Add GELI full-disk encryption options back to installer, integrated with BEADM kris@ Done 16 May 2014
Snapshot comment system Added support for setting comments on created snapshots kris@ Done May 2014
Merged AppCafe + Package Manager Merged AppCafe and Package Manager into single Application framework kris@ & ken@ Done May 2014
Options for L2Arc / ZIL during install Add options to add a L2Arc / ZIL during install kris@ Done 16 May 2014
Control panel next: New version of Control panel with asynchronous items reading backend and some UI changes yurkis@ Done 27 May 2014
Table  Is there no version? i [Tables 9]


Feature Owner Status Completion Date Details
Update Cinnamon to 2.0 kris@ DONE With 10.0.1 Quarterly Update Pulled in latest from MarcusCom Repo
Update AppCafe UI ken@ DONE With 10.0.1 Quarterly Update
Life preserver: * Add new “Classic” backup dialog for custom exclusions and status updates ken@ DONE With 10.0.1 Quarterly Update
Control panel: added desktop environment settings button yurkis@ DONE With 10.0.1 Quarterly Update
Added 'PulseAudio settings' and 'PulseAudio mixer' UI utils kris@ DONE With 10.0.1 Quarterly Update
Table  Is there no version? j [Tables 10]

Not assigned to version

Feature Owner Status Completion Date Details
Multiple Disk Install Add options to do installation across multiple disks, I.E. / on ada0, /usr/home on ada1. kris@ Not started
MATE: Update to actual version (1.8) kris@ Waiting for ports merge
WARDEN: Add in Jail type menu: "Linux unsecure jail(allows running X applications, unsecure) -Experimental" Not started
GAMES: Allow possibility to install Steam (linux version) from Appcafe in order to play all linux games Not started

Work on the wiki

Table  Is there no version? k: Wiki Enhancements [Tables 11]
Various improvement tasks
Feature Owner Status Completion Date Details
“navHeader” template: Develop initial navigation header template. tigersharke@ Finished. The template uses a table for formatting and allowed for defining of back and forward buttons on its page. It also shifted the page title to below the NavHeader, hid the original page title, and shifted/defined the TOC box position.
citelink template: external links list. tigersharke@ Finished a way via the “cite” extension, to provide a "footnote" list of external links.
“local” template: a way to improve local link display. tigersharke@ Finished Extended to allow automatic translation of the displayed link text.
“tbl-init” template: An adjustment to how tables are invoked for enhancements. tigersharke@ Finished This provides CSS styling and a way via the “cite” extension, to provide a footnote listing of tables.
redesign main page: Adjust links and appearance. tigersharke@ Finished 15 April 2013 Spiffy CSS provides for the watermark background.
“OurInterwiki” template: reduce editor effort for a subset of external links. tigersharke@ Finished Extended with further templates to allow some known links to match the language of the page when applicable.
common.css: initial styling support. tigersharke@ Finished Many templates now use CSS, mostly class definitions to style them rather than inline: navHeader, tbl-init, messagebox templates, and main page for watermark.
useTOC template (nav): Initial development of the template; convert NavHeader to use this functionality. tigersharke@ Finished This template leverages the useTOC template data to automatically define back and forward buttons as well as some page title tweaks.
Versioning of handbook pages: Each published or in-progress handbook gets its own division of the wiki. tigersharke@ Finished Beginning with version 9.0, the handbook url for each version changed to add the suffix “/<version>” which also required adjustments to templates which referenced page urls.
“useTOC” template (toc): Table Of Contents functionality: Primary and secondary page topics. tigersharke@ Finished The Table Of Contents is automatically built from the data of the useTOC and formatted as:

1. page

1.x subpage
“useTOC” template (toc): Enhance to allow for alternate titles. tigersharke@ Finished A third and fourth field were added to the data list to enable this capability resulting in displayed titles such as “What's New in 10.1.1” for What's New/10.1.1.
“useVers” template: “Release” and “Upcoming” values. tigersharke@ Finished This capability replaces the simple templates release and upcoming which stored the two values. It automatically advances each time the data is revised, "0" is the place holder for the release date of “upcoming”, and the version directly following it is “release”.
“match vers” template: A way to automate text adjustments on initial handbook page. tigersharke@ Finished This allows automatic switching (by testing the version of the page) between two states: what is appropriate for “upcoming unfinished version” of the handbook and the wording used for “completed published versions”. Some of the text is on Handbook translating/common and also referenced there.
“useVers” template (pick): version link list. tigersharke@ Finished Result used on PC-BSD® Users Handbook (notice lack of version in url?)
common.css: static side and top frame. tigersharke@ Finished 18 February 2015 Works fine in Firefox, minor tweak may be needed for Chrome or certain pages.
“useTOC” template (section): List subpages of handbook section. tigersharke@ Indefinite hold Some attempts, possible concepts, but nothing finalized or fully functional. This would create the list as on Introduction/10.1.1 like:
The rest of this section discusses:

Could some of the newer templates help with this? ie, “pageID” tech.

Split static pages: create /content, link and transclude. tigersharke@ Indefinite hold For those pages which affect all versions of PC-BSD and/or handbook versions, create <pagename>/content, <pagename>, and transclude <pagename>/content into a skeleton <pagename>/<version> for each PC‑BSD® version. Presently, Warden® is the primary example of a completed "set" of pages. The status will show rather low percentage complete since technically the wiki contains at least 4 versions of the handbook, of which as much as 1/4 of each will be "static" but its very possible many more than that can/should be split.
“figure” template: image style, position, etc tigersharke@ Indefinite hold Provide some structure for images on handbook pages in particular. Use useTOC to gain the page/chapter number (field 1) for use with figure caption:
Figure <Chapter><letter>, such as Figure 8.20a
“useTOC” template (num): Reference the first field similar to getVers. tigersharke@ Finished 20 February 2015 Use useTOC to gain the page/chapter number (field 1) for use with figure template.
“changeLog” template: style, effects. tigersharke@ Indefinite hold Leverage a collapse/expand feature to allow abbreviated display of changelog data but easily fully exposed. Might need to be div but can it be a table?
“screenShot” template: style, effects. tigersharke@ Indefinite hold Use transparency with the desktop background image for that version of the handbook, as well as similar tech as in the figure template, and page/chapter number in figure caption. Some proof of concept completed but technique for such things as desktop image overlay creation were not documented. This was not properly adopted due to lack of understanding. This could be fully automated with the exception of overlay creation. Main issue is proper dimensions of the two images with nit being adequate screenshot as well as perfect transparency creation.
“outdated” template: A messagebox template to indicate archaic. tigersharke@ Finished 18 February 2015 This creates a specially styled messagebox with hourglass icon along with a diagonal CSS text effect to call attention to the archaic nature of the information. Content of the box should be an unordered list of specific points or a message indicating none of it remains valid.
“myChapter” template: The workhorse for useTOC (num). tigersharke@ Finished This works up to the last page of 10.1.1 (about 105 pages + subpages in TOC), may need extending in the future. Directly affects template:FigureID. renamed to MyPageNUM
“FigureID” template: Handy automagic editor shortcut. tigersharke@ Finished 20 February 2015 This simply requires the letter of the image on the handbook page as {{FigureID|a}} on the Warden® page, the rest is handled automagically for a result like: Figure 8.20a
“traverse” template: adjust & improve. tigersharke@ Not started This template exists but due to difficult contexts some of its effects can be accomplished by a span with the proper class assignment. This needs to be able to handle both simple visual cues and those which also have a handbook reference. This is a much nicer and possibly clearer way to indicate nested steps such as reaching a specific menu item to choose an option. Things can get very complex very quickly, it needs to be flexible but work for both situations and be automagically translated as much as possible. Afaik originally developed well before useTOC template system and associated templates were completed, so some newer templates may facilitate desired function. Control Panel → System Manager → Tasks
“tbl-init” template: Add myChapter tech. tigersharke@ Finished 21 February 2015 Extend the template:tbl-init to include the “myChapter” data for table captions in a similar fashion as “FigureID”.
“GetmyChapter” template: Add "query" by other pagename. tigersharke@ Finished Extend to allow matching a page url to a chapter number. If page "X" is number 8.20, page "Y" may want to reference with a link to a "table 8.20a" on page "X" including its id number but page "Y" cannot directly know what the ID is for page "X". Mistakenly thought template:myChapter needed the update, but structure to handle it was already in place, instead, a small adjustment was needed to getMyChapter to allow a value pass.
“GetmyChapter” template: rename & transition to “pageNUM”. tigersharke@ Finished 27 February 2015 Hopfully this will add clarity rather than confusion. Never good to recognize a bad name/paradigm after its implemented! Oops! It seems “pageID” is an internal mediawiki thing, so use “pageNUM” instead. Renamed MyChapter to MyPageNUM as well. Momentarily forgot that FigureID referenced it also.
“testLangURL” template: Update - better matching. tigersharke@ Finished 02 March 2015 Previous method would not be able to match edge cases like zh_CN with zh-cn. Something like zh_CN might be used by a website URL and zh-cn is how the translation system identifies the language. Now the website format is modified for matching purposes but will then yield the provided website format as given.
Simplify Main page tigersharke@ Finished 10 March 2015 Switched from using wiki tables to a multi-column CSS method, may be somewhat more flexible for other platforms and possibly more accessibity-friendly. Also added more CSS classes, should be generally easier to edit or translate.
Improve QuickRef page tigersharke@ Finished 15 March 2015 Switched from using wiki tables to a multi-column CSS method, may be somewhat more flexible for other platforms and possibly more accessibity-friendly. Also revised to be more descriptive by providing most with an example of the result. Alphabetized.
Table  Is there no version? l: Wiki Art/Icons [Tables 12]
Graphics for function or elucidation
Feature Owner Status Completion Date Details
NavHeader: Icons for forward, home, back. tigersharke@ Finished Placeholder.png Placeholder.png Placeholder.png
messagebox: Icons for Note, WARNING, Danger! message box templates. tigersharke@ Finished Note-msg-icon3.png Warning-msg-icon.png Danger-msg-icon2.png
Sprites: Combine Navigation icons into one page of sprites. tigersharke@ Finished Nav-sprite.png
Outdated messagebox: New icon to indicate out-of-date portions of a page. tigersharke@ Finished 18 February 2015 Hourglass-128px.png
Sprites: Combine message box icons and Navigation icons into one page of sprites. tigersharke@ Indefinite hold The NavHeader icons are one page accessed as sprites now, but the others are individual images.
Table  Is there no version? m: Wiki Documentation [Tables 13]
Efforts to document wiki backend
Feature Owner Status Completion Date Details
Style Guidelines: An extensive overview to define the appearance of the wiki; best practices. tigersharke@ vater@ finished vater@ was the primary influence (provided copious suggestions for items not yet defined) to develop this though it began as a clarification of the few published handbook typographic conventions.
template quickref: An brief explanation with examples, of how common templates are used. tigersharke@ finished dlavigne@ was the primary influence to develop this.
Templates: Create consistent information about the use and result of each. tigersharke@ Indefinite hold Some templates have reasonable docs while others are sparse or have none.
Categories: Describe their purpose, proper use, and content. tigersharke@ Indefinite hold Some categories have some text describing them.
Editing: In addition to individual item documentation, an overall instructional guide. tigersharke@ Indefinite hold The style guidelines and template quickref pages exist but need improvement and updates.
Translation: Add details about those things which affect translation. tigersharke@ Indefinite hold Some pages are written but may not be complete or up-to-date.
Templates: split doc from template function. tigersharke@ Indefinite hold Some templates have decent documentation but the plan is for new pages for transclusion into the template page as documentation, such as template:local/doc, which can then be translated without affecting the template.
Categories: categorize pages and templates. tigersharke@ Indefinite hold Some pages and templates are categorized but not all.
Style Guidelines: Update for newer practices & templates. tigersharke@ Indefinite hold
update template quickref: An brief explanation with examples, of how common templates are used. tigersharke@ Finished 26 February 2015 New templates may need to be added in a similar fashion. This update also resulted in a significant page format revision as well, includes: an "unexpanded" key, two columns, some wording clarity.


  1. Table  Is there no version? a
  2. Table  Is there no version? b
  3. Table  Is there no version? c
  4. Table  Is there no version? d
  5. Table  Is there no version? e
  6. Table  Is there no version? f
  7. Table  Is there no version? g
  8. Table  Is there no version? h
  9. Table  Is there no version? i
  10. Table  Is there no version? j
  11. Table  Is there no version? k: Wiki Enhancements
  12. Table  Is there no version? l: Wiki Art/Icons
  13. Table  Is there no version? m: Wiki Documentation
Personal tools