You are not logged in.

#1 2003-10-13 11:11:48

farphel
Forum Fellow
From: New Hampshire - USA
Registered: 2003-09-18
Posts: 250
Website

How to avoid upgrades the Arch way?

Most of the time, I want to be running the latest stable software.  That's what attracted me to Arch in the first place.  However, there are a few situations where I find myself wanting older software.  Is there an easy way to prevent Arch from upgrading certain software and/or software groups?

Before you jump in with the default answer, I know about /etc/pacman.conf and adding entries using IgnorePkg.  This works OK when you only have a few packages, but what about package groups?  For instance, I have dabbled with Gnome 2.4 and don't like it.  I want to stay at Gnome 2.2.  Without listing every single package, is there an easy way to prevent upgrades?

In a related question, what if I want to install older software?  When I first came to Arch, the default MySQL package was at 4.0.15.  We're still using MySQL 3.23.56 at work so I can't upgrade without worrying about compatability issues.  My solution was to dig through Arch's CVSweb and find the old MySQL 3.23.56 PKGBUILD script and use that to build my own package.

One solution would be to specify version numbers with pacman.  For example, it would have been much easier on my to do a 'pacman -S mysql-3.23.56-1'.  Or if I wanted to downgrade Gnome back to 2.2 from 2.4 I could do a 'pacman -Rc gnome' (to get rid of currently installed 2.4) and then a 'pacman -S gnome-2.2' to reinstall the old version.  Then we'd need to educate pacman about package groups in the /etc/rc.conf file for IgnorePkg (maybe IgnorePkgGroup)?

IMO, the idea of controlling which version of software is installed is very important.

Cheers,
farphel


Follow the link below, sign up, and accept one promotional offer.  If I can get five suckers (err... friends) to do this, I'll get a free iPod.  Then you too can try to get a free iPod. Thanks! http://www.freeiPods.com/?r=11363142

Offline

#2 2003-10-13 17:10:05

sarah31
Member
From: Middle of Canada
Registered: 2002-08-20
Posts: 2,975
Website

Re: How to avoid upgrades the Arch way?

IgnoreGrp= would be a good idea i don't know if i would support the idea of having numbered versions of packages in the case of large groups like gnome. there are quite a few package changes between the two and making sure each has a numbered version could get a bit tedious.


AKA uknowme

I am not your friend

Offline

#3 2003-10-13 17:23:35

farphel
Forum Fellow
From: New Hampshire - USA
Registered: 2003-09-18
Posts: 250
Website

Re: How to avoid upgrades the Arch way?

IgnoreGrp might be a good start to avoid full blown updates to groups.

What about individual packages?  Let's say you wanted to install and older version of MySQL, how would you do it?  Or better yet, what is the Arch way?  The same thing could be said of Apache.  Maybe not everyone wants to run Apache 2.x, but would prefer 1.3.x.

Could the abs repositories keep several versions of PKGBUILD?  Maybe PKGBUILD-2.x and PKGBUILD-1.3.x for Apache?

I suppose it gets a bit complicated for package maintainers.  What if a user wants both versions installed?  Do the mulitple versions conflict, or are there separate install locations?  I'm full of questions and few answers... wink

Anyway, as I stated, I feel that having version selection is pretty important and would like to know if this has been/is planned on being addressed.

Thanks,
farphel


Follow the link below, sign up, and accept one promotional offer.  If I can get five suckers (err... friends) to do this, I'll get a free iPod.  Then you too can try to get a free iPod. Thanks! http://www.freeiPods.com/?r=11363142

Offline

#4 2003-10-13 19:09:34

sarah31
Member
From: Middle of Canada
Registered: 2002-08-20
Posts: 2,975
Website

Re: How to avoid upgrades the Arch way?

i believe the ideal is to keep multiple versions to a minimum.

you will note that there a few multiple version of any package in the arch repositories. one of the reasons for this is that it is in fact a nuciance to maintain two packages.

often the older of the two is obsolete and depreciated. keeping depreciated software on a system cn present some security risks or can just be a major task. as rules on gcc change it can be harder and harder to recompile older packages as they have code that requires investigation and patching. older packages may also become inoperable as their depends change as well.

then there lots of time when new and old cannot exist in harmony. so then let the user decide you say? well that is all fine but what about the depends. perhaps one of the depends of the old package conflicts with the new or is required by another package? take gnome for example. some of the depends within gnome changed alot which required chages of all other packages in official and unofficial that depended on those packages. so if one wanted to keep 2.2 around then they would have to go back and rebuild all those packages and remove the others. a very messy business.

so when can we get rid of older versions? because three people want gnome 2.2 do we keep it around? what if they don't like successive version of gnome? do we keep maintaining 2.2?

the idea is to keep arch simple and abs is supposed to take care of the rest. the rest being those who want even newer version of something or continue using older versions. to this end it would be good to introduce group in the ignore section of pacman.conf, however one who wanted to use older versions of some groups (ie gnome 2.2 or kde below 3.1.3) would have to add group arrys anyway as 2.2 did not have the group array in their PKGBUILD (if i recall correctly).

(as for mysql we had two versions of that for a long time until version four was made into the main version. i have not heard of any compatability issues with version 4 using version 3 databases and vice versa)

so the question is...do you want arch to become debian or do you want it to  continue being small and fast with a build system that allows for a user's own modification. if we give in to maintaining old version there is no argument about having cvs and unstable/developer versions of all software as well.


AKA uknowme

I am not your friend

Offline

#5 2003-10-14 00:44:44

farphel
Forum Fellow
From: New Hampshire - USA
Registered: 2003-09-18
Posts: 250
Website

Re: How to avoid upgrades the Arch way?

sarah31: thanks for your thoughts on this matter.  I totally believe you when you say there would be many headaches involved in maintaining multiple versions and that in many cases it would not be feasible.  However, I don't think we disagree on the point that there are sometimes reasons to maintain multiple versions of software (as you stated, you had multiple MySQL packages at one point).  I guess I'm just on a quest to learn the easiest way to get at older software if I feel it is necessary to run it.

Maybe all I need is a little Arch education on how to install older packages.  I know that abs uses cvsup, but I don't know enough about cvsup to know how to configure it.  I am used to cvs in general though.  Is it possible to set a CVSROOT type environment variable to tell abs to pull in PKGBUILD files from an older cvs snapshot?

Currently, with what I know of Arch, I would not consider running it on a production server without some better control of software versioning.  I love it as a desktop and enjoy having current software available, but on a production server you can't always update software without undergoing extensive compatability testing (as I'm sure you'd agree).  Especially when talking about major version bumps (apache 1.3 -> 2.x, mysql 3.x -> 4.x, php 3.x -> 4.x).

Where I'm running into problems using Arch is as a development environment.  I want my workstation to run Arch, but it also needs the same version of software running on our production servers (this includes mysql 3.23.x and apache 1.3.x) for development.  Of course I can always build my own (which I've done with apache/php), but as an end-user, I would love to have them under control of the distro.

Anyway, if you're leaving the choice up to me as to wether I would prefer Arch turn into Debian or stay lean and small - my vote is to keep it as it is.  Like I said above, I'm really just looking for the best "Arch way" to pull in older PKGBUILDs.

Thanks,
farphel


Follow the link below, sign up, and accept one promotional offer.  If I can get five suckers (err... friends) to do this, I'll get a free iPod.  Then you too can try to get a free iPod. Thanks! http://www.freeiPods.com/?r=11363142

Offline

#6 2003-10-14 03:05:49

marin_linuxer
Member
From: San Rafael, CA U.S.A.
Registered: 2003-09-03
Posts: 111
Website

Re: How to avoid upgrades the Arch way?

I recently retrieved an older package(don't remember which) by going to ftp://ftp.archlinux.org/0.4/os/i686

You can substitute the version for all the old ones.


-- Linux!  Isn't it time?

Offline

#7 2003-10-14 10:56:10

farphel
Forum Fellow
From: New Hampshire - USA
Registered: 2003-09-18
Posts: 250
Website

Re: How to avoid upgrades the Arch way?

That's a great idea!  I'll give that a try next time I feel the need to run something a little "dusty".


Follow the link below, sign up, and accept one promotional offer.  If I can get five suckers (err... friends) to do this, I'll get a free iPod.  Then you too can try to get a free iPod. Thanks! http://www.freeiPods.com/?r=11363142

Offline

#8 2003-10-14 15:35:05

Xentac
Forum Fellow
From: Victoria, BC
Registered: 2003-01-17
Posts: 1,797
Website

Re: How to avoid upgrades the Arch way?

There are (were?) plans to make a stable tree for people who wanted to run arch in a production environment and didn't need a bleeding edge system.  Those people would probably just get a paper-cut sort of system  wink   No idea the progress on that though...


I have discovered that all of mans unhappiness derives from only one source, not being able to sit quietly in a room
- Blaise Pascal

Offline

#9 2003-10-14 17:02:17

apeiro
Daddy
From: Victoria, BC, Canada
Registered: 2002-08-12
Posts: 771
Website

Re: How to avoid upgrades the Arch way?

This is a good point to bring up.  Others have asked about this in the past.

As Sarah said, Arch shys away from maintaining multiple versions of a single package, mostly because it's a big headache for the poor maintainer who has to juggle these packages in his/her spare time.  We know that many users (including myself -- I run Arch on a few production servers) cannot upgrade packages on a whim, so we've provided very rudimentary facilities, such as IgnorePkg, to avoid this.

If you've upgraded a package and want to move back down the ladder to an older version, your best bet is to build the older version from source in /var/abs.  Or, if you're like me and have a bunch of servers to maintain, you might find it handy to just mirror the ftp area and do upgrades from your own local ftp server.

# rsync -av --delete ftp.archlinux.org::ftp /path/to/my/ftp/root

If you omit the --delete option, you won't delete old packages as they become out-of-date, leaving you with any and every package we build, even after they're out of date.  This lets you easily backtrack if you decide you don't like gnome 2.4 or apache2, etc.

It's also possible, iirc, to make cvsup sync the repository as it was at a specified date.  This would let you grab old PKGBUILDs thru abs.  See the cvsup manpage for this.

Just to note, we also have plans to implement a sort-of transactional system, where you can "rollback" package if you don't like them, or they're otherwise incompatible with your system.  This is still a good ways away, but it should help those of us who fiddle with servers a lot.

Offline

#10 2003-10-14 18:00:18

Jagged
Member
From: Blacksburg, VA
Registered: 2003-07-18
Posts: 153

Re: How to avoid upgrades the Arch way?

edit /etc/abs/supfile.arch or whatever repository you use

add a line to look like this:

*default tag=CURRENT
*default date=2003.01.01.00.00.00

where the datestring is yyyy.mm.dd.hh.mm.ss
you must specify the entire date string

that will get the repository at that current place in time smile

edit:
well... its ::supposed:: to be able to work like that... trying to do it on my box and so far i get the abs dirs but no PKGBUILD's

edit2:

aha! read the supfile... you can specify certain releases to use for abs though smile


Nkawtg...n!

Offline

#11 2003-10-14 21:34:38

farphel
Forum Fellow
From: New Hampshire - USA
Registered: 2003-09-18
Posts: 250
Website

Re: How to avoid upgrades the Arch way?

Thanks to everyone who helped me with this bump in my Arch learning curve.

I especially like the sound of the 'rollback' option.  That will be a great way to test the waters without making the big plunge.

I'm confident that with the pointers I've been given that I won't have any problems using older software if necessary.

Thanks again,
farphel


Follow the link below, sign up, and accept one promotional offer.  If I can get five suckers (err... friends) to do this, I'll get a free iPod.  Then you too can try to get a free iPod. Thanks! http://www.freeiPods.com/?r=11363142

Offline

#12 2003-10-15 01:00:27

sarah31
Member
From: Middle of Canada
Registered: 2002-08-20
Posts: 2,975
Website

Re: How to avoid upgrades the Arch way?

good luck....it seems though that your idea for IgnoreGrp was not brought up again...it really like the idea of that.


AKA uknowme

I am not your friend

Offline

Board footer

Powered by FluxBB