Some great news for the apt-rpm users out there! This is a bit lengthy but contains important information about this new version in so bear with me, or at least do read the migration notes below if you're upgrading from an older release. Migration notes for the impatient upgrader ------------------------------------------ To make all the cool new stuff possible, and to make the default configuration less fedora.us specific, some rearrangements had to be made and not everything was possible to automatically migrate. However if you haven't heavily modified your local configuration, things should continue to "just work" after this upgrade. Most important changes to configuration system are listed below, or see more detailed information later in the text under "local changes and improvements" subject: 1) The main configuration, eg /etc/apt/apt.conf, will be moved out of the way during the upgrade. Again, if you haven't changed the configuration there's nothing you need to do, but if you have you'll need to manually merge the changes back from /etc/apt/apt.conf.rpmsave to the main configuration file. Apologies for any inconvenience caused, but rest assured this is a one-time only change and wont happen again. 2) There's a new mirror/repository selector system included in this release. The first time you run any apt-command you'll be presented with a list of repositories and their mirrors. If you already have fine-tuned your sources.list to perfection or otherwise don't want to change anything just press 'q' here and nothing will be changed and you wont be bothered again. Otherwise, just follow the instructions to complete the mirror selection to make your downloads faster. You can re-run the mirror selector anytime later with "apt-get mirror-select" command. 3) Some of the default configuration values have been changed, notably there's no longer "Default-Release" pin set by default. It was removed since it caused more confusion than the intended protection to users, but if you have included testing/unstable repositories in your sources.list this might cause some unwanted packages to get updated and might want to manually add the pin back to apt.conf. And now lets get on with the good stuff: Improvements in upstream apt-rpm -------------------------------- No more --nodeps! ---------------- >From version 0.5.15cnc3 upwards apt uses the RPM API to do package installations, erasures and upgrades in a single atomic transaction. This means smoother and more correct operation and also means that you can't bitch about apt using --nodeps anymore ;) You can still enable the old behavior of external RPM process if you wish, by setting RPM::PM="external" option though. Support for handling arbitrary local and remote rpms: ---------------------------------------------------- Ever wished you could use apt like rpm to install that lonely rpm you just downloaded, with the dependencies resolved like? Well, now you can! These work with full dependency resolving now: # apt-get install ~/rpm/RPMS/my-package-1.2.4-1.rpm # apt-get install http://some.site/somewhere/my-package-1.2.4-1.i386.rpm These also work with build-dep and source commands, both for local and remote src.rpms: # apt-get build-dep ~/rpm/SRPMS/your-package-1.2.4-1.src.rpm $ apt-get source http://some.site/somewhere/your-package-1.2.4-1.src.rpm On top of that, as a nice side-effect of build-dep now supporting arbitrary file dependencies you can also install software by file names: # apt-get install /usr/bin/automake ..and there's even more - for additional information see this LWN article: http://lwn.net/Articles/60650/ Local changes and improvements in Fedora.us apt package ------------------------------------------------------- Configuration rearrangements and changes: ---------------------------------------- Apt now ships with bare-bones "factory default" settings located in /etc/apt/apt.conf.d/default.conf which is repository/vendor neutral and simply contains optimal values for operation with Fedore Core 1. Do not customize that file, changes there will not be preserved to allow updating the base config without messing your local changes to the main /etc/apt/apt.conf. This change does make life easier in the future but it does have a one-time annoyance of requiring you to merge any changes you've made to apt.conf from apt.conf.rpmsave after updating to this package. Similarly there aren't any repositories set by default in sources.list, that is handled by the new repository selector (see below). Repository/mirror selector: -------------------------- When you start the new version of apt for the first time it'll ask you to choose the repositories you want and for each repository the nearest mirror. If you don't want your sources.list to be touched, just hit 'q' and never mind. You can later re-run the selector with "apt-get mirror-select" if you wish to change your selections. The mirror-selector supports arbitrary number of repositories and mirrors and allows 3rd party repositories to add their own repositories by just dropping in a config file into apt.conf.d with a single setting, pointing to your repositorys mirror-list. Handling of kernel and related packages: --------------------------------------- The new version will handle kernel, and any packages in allow-duplicated or automatically "virtualized" transparently to the user along with upgrade/dist-upgrade: [root@chip root]# apt-get dist-upgrade Reading Package Lists... Done Building Dependency Tree... Done Calculating Upgrade... Done The following packages will be upgraded lftp (2.6.5-4 => 2.6.10-1) The following NEW packages will be installed: kernel#2.4.22-1.2135.nptl (2.4.22-1.2135.nptl) kernel-source#2.4.22-1.2135.nptl (2.4.22-1.2135.nptl) 1 upgraded, 2 newly installed, 0 removed and 0 not upgraded. Need to get 0B/54.5MB of archives. After unpacking 205MB of additional disk space will be used. Do you want to continue? [Y/n] Actually it will even update your kernel-module-foo packages if such are present on your system, and if you use GRUB as the bootloader it will also automatically make the new kernel the default one. To disable that behavior, set "Kernel::Set-Default=false" in apt.conf. To disable upgrading of kernel completely, set "RPM::Upgrade-Virtual=false" in apt.conf. Other cool scripts: ------------------ There are various interesting Lua-scripts enhancing apt in various ways included in contrib/ directory of /usr/share/doc/apt-0.5.15cnc4/contrib, for usage instructions see the README's. - Panu -