Task list for this repository ----------------------------- Underlined headers identify the portion of this undertaking that each task corresponds with. Tasks are ordered hierarchically: the hyphens indicate the level of each node and any leafs they contain, and plus signs identify nodes with leafs. All Ports --------- - validate with portlint and poudriere NEWS ---- - track user oriented changes in this log to show current progress INSTALL ------- - once a plan is in place to publish an official release, the instructions to configure and install from the ports collection will be in this file FAQ --- - troubleshooting - usage + requirements -- lsof requires the kernel sources to build - bug tracking - repository directory hierarchy + status of each port -- which ports are being actively developed -- which ports are functioning TESTING ------- - how to acquire and update the source code - how to prepare pkg to use a default repo - how to configure the projects - how to build and install the projects for testing - upgrading the testing installations to the latest socsvn revision - how to remove and clean testing installations and files - how to test projects for functionality and regression - performance testing - debugging Wiki ---- - reword content to be more widely user-friendly - make sure that milestones are appropriate - present reflective journals - request feedback in the form of bug reports, suggestions, feature requests, patches, regression alerts, and other potentially useful information - add screenshots and video to present progress - instructions for using pk-setter - use cases for overall project - test results (with seed data, test output, and performance results) - link to Google-Melange project page - add more links to external documentation (for related work) - point out that svnweb is not synchronized as well as socsvn.freebsd.org - add "completed" column to milestone table - refer to new documentation files and locations - add links to new progress reports - finish deliverables section, adding instructions and other information testing.sh ---------- - keep track of steps in hidden file to allow for resuming - configure / build / install / deinstall / reinstall - patch all ports to /usr/ports - restore to unpatched state (useful for updating the code to the latest revision) - update ports to latest revision pk-setter --------- - create back end list from file saved during PK installation - verify that packagekitd starts with each new configuration, or roll back to last known good configuration - use GetDaemonState() to determine if packagekitd needs to be closed? - make script more robust in the face of missing dependencies - detect pkg, and if pkg2ng needs to be run - configure pkg to use default repository - create a manual page - a way to reset PackageKit.conf to default using PackageKit.conf.sample - make pk-setter a packagekit runtime dependency so it is checked for after packagekit is installed PackageKit-0.6.11 source ------------------------ - show unavailable file lists by downloading the plist from freebsd.org - find out if packagekit-cron could work PackageKit-0.6.11 port ---------------------- - make sure the back ends play nice with PC-BSD, since it relies on overlays - create a file on installation to contain a list of installed back ends for pk-setter + Makefile -- find a better way to add site_ruby/1.8/pkgtools to ruby 1.9 include path -- replace manpage generation with a manpage patch -- save a copy of PackageKit.conf to PackageKit.conf.sample for default configuration recovery -- make sure that pkgng back end option includes all required dependencies -- change pkgng dependency check to library instead of executable + when Matt finishes the C back end -- update patches to permanent pkgng back end -- update pkg-plist to include the new files + optional -- update port to version 0.8.9 KPackageKit-0.6.3.3 port ------------------------ + optional -- update port to Apper-0.8.0 gnome-packagekit-2.32.0 port ---------------------------- + optional -- upgrade port to gnome-packagekit-3.8.2 KPackageKit-0.6.3.3 source -------------------------- - enable help button, patch in help files - when the user clicks "install updates", any get-details transactions generated by update-viewer should be cancelled + user interface files -- combine main window with update window using tabs -- preference option available to keep selections when navigating tabs (default: true) -- clicking on an item in a dependency list should open that items information gnome-packagekit-2.32.0 source ------------------------------ + user interface files -+ gpk-application.ui --- convenient access to view updates, install from local file, and preferences -+ gpk-update-viewer.ui --- clicking install should cancel the transaction to get package descriptions + source code files + optional features to look into -- service packs (perhaps replace tarball with PBI) -- mime type installation -- catalogs (would allow for sharing of toolkits for example) Sources for both front ends --------------------------- - have front ends remember with which back end a port was installed with, and use that back end for updates - customizable permissions (so some users may only update packages, or view data) - create a pre-confirmation report, listing all changes - easy repository management - easily switch between ports and binary packages - if front ends are new ports, combine the appearance of the front ends - update search results after each keystroke (using a timer delay to prevent extra overhead) - option to automatically start tray icons at boot - configure a port to change from development version to stable version once a specific stable version is released - add jail support, and easy selection of one or more jails to modify - manage remote systems and their jails in a centralized way - import and export packagekit and front end configuration files - install specific available versions of software (over the internet) - fail over to another back end if version is not available (help to get latest versions) - register packages - build a repository, or a part of a repository, from ports - test and validate new or modified ports - check archives to make sure they are packages for pkgng - create binary packages from ports - roll back package update(s) - install multiple versions of a program at once - roll packages back to certain configuration, saved in a catalog file - assign specific package versions to skip over, and wait for later versions - freeze a package to prevent it from being updated - an extra simple, "normal" mode (as opposed to "expert" mode) - fix the way that the front ends interact with the transactions.db, currently both back ends cannot be installed simultaneously - allow user to set a default prefix to affect future installs - allow user to easily move a package from one disk to another (after it is installed on the system) - easy means of deleting distfiles - easy means of removing orphaned dependencies - let user reinstall a package - make sure Matt's back end provides the required output to communicate with front neds - test front ends for complaints to make sure all ports back end output can communicate with front ends