[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Major upgrade of apt (0.5.15cnc5) in fedora.us stable! (fwd)



If you use apt from fedora.us, you'll want to read through this
announcement.  This new version blows away any configuration you
already have, so unfortunately you can't ignore it.  :-)

I've written up a little thing on using the new version of apt with
our mirror here:

  http://ftp.kspei.com/apt.html

----- Forwarded message from Panu Matilainen <pmatilai@welho.com> -----

Subject: Major upgrade of apt (0.5.15cnc5) in fedora.us stable!
From: Panu Matilainen <pmatilai@welho.com>
To: fedora-list@redhat.com, fedora-devel-list@redhat.com,
        fedora-package-announce@fedora.us
Date: Mon, 01 Mar 2004 22:58:40 +0200


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 -

-
To unsubscribe, send email to majordomo@silug.org with
"unsubscribe silug-discuss" in the body.