Difference between revisions of "Talk:Downgrading packages"

From ArchWiki
Jump to: navigation, search
m (No CLI: simple edit)
(No CLI: rm closed discussion)
(15 intermediate revisions by 6 users not shown)
Line 12: Line 12:
 
In any case, it appears that the only accurate information we have on pacman is found at "man pacman" and "man pacman.conf" from the command line.  Perhaps you will find the proper procedure there.  [[User:KitchM|KitchM]] 13:09, 6 August 2009 (EDT)
 
In any case, it appears that the only accurate information we have on pacman is found at "man pacman" and "man pacman.conf" from the command line.  Perhaps you will find the proper procedure there.  [[User:KitchM|KitchM]] 13:09, 6 August 2009 (EDT)
  
== No CLI ==
+
== Not sure how to add this... ==
  
The article fails to explain what to do when the system no longer boots in a usable manner and the user cannot get to the command promptNone of the mentioned suggestions will work thenEven if one uses the install disk, the same problem applies. - [[User:KitchM|KitchM]] 00:08, 22 October 2009 (EDT)
+
#zsh
 +
 +
#use a simple var during downgrade process
 +
downgrade="exact-package-package-name"
 +
 +
#make sure to remove the package and its configs
 +
sudo pacman -Rn $downgrade
 +
 +
#OPTIONALLY search for config files in the common places
 +
ls -ah ~/ | grep $downgrade
 +
#and remove them
 +
rm -R ./$downgrade
 +
 +
#build directory
 +
mkdir /tmp/$downgrade && cd /tmp/$downgrade
 +
 +
#make your way to http://pkgbuild.com/git/aur-mirror.git
 +
#using the web interface locate the version of the package you would like to install
 +
#copy the link of the tree view of the package directory (eg http://pkgbuild.com/git/aur-mirror.git/tree/dropbox?id=b19a54c808554c796f310747725ad2ff4291e44a)
 +
   
 +
#scrape the link for files and output them to 'files'
 +
wget -q -O - 'http://pkgbuild.com/git/aur-mirror.git/tree/dropbox?id=b19a54c808554c796f310747725ad2ff4291e44a' | grep -o "/git/aur-mirror.git/plain/[^']*" | sed -e 's/^/http:\/\/pkgbuild.com/' > files
 +
 +
  #download the files
 +
wget -qi files
 +
 +
#clean file names (will generate errors, so just ignore them)
 +
ls | sed -n 's/\([^?]*\)\(.*\)/mv "\1\2" "\1"/p' | sh
 +
 +
#build the package
 +
makepkg -s
 +
 +
#install
 +
pacman -U $downgrade*.pkg.tar.xz
 +
 +
#optionally clean up environment
 +
cd && rm /tmp/$downgrade
 +
unset downgrade
 +
 
 +
: You can add it to a seperate file. Look into [[:Category:Scripts]] for examples. And then add a link to your new page. -- [[User:Fengchao|Fengchao]] ([[User talk:Fengchao|talk]]) 04:45, 20 September 2012 (UTC)

Revision as of 15:14, 8 November 2012

Parallel Programs Dependency Issue

There is another problem you haven't considered: When there are already vital packages installed (like xorg) that require the newer version of the programm (like gcc-4.x).

Is there a way to tell pacman to install the older version (in my case gcc-3.x) parallel to the newer version, thus not hurting any dependencies?

Answer

Sometimes the only way to make something work is to make sure that the dependency's version is downward compatible. If it isn't, then the older version of the program itself needs to be adjusted to work, and that is something that programmers are obviously not likely to do.

Keeping two or more versions of a particular program installed is possible in many cases.

In any case, it appears that the only accurate information we have on pacman is found at "man pacman" and "man pacman.conf" from the command line. Perhaps you will find the proper procedure there. KitchM 13:09, 6 August 2009 (EDT)

Not sure how to add this...

#zsh

#use a simple var during downgrade process
downgrade="exact-package-package-name"

#make sure to remove the package and its configs
sudo pacman -Rn $downgrade

#OPTIONALLY search for config files in the common places
ls -ah ~/ | grep $downgrade
#and remove them
rm -R ./$downgrade

#build directory
mkdir /tmp/$downgrade && cd /tmp/$downgrade

#make your way to http://pkgbuild.com/git/aur-mirror.git
#using the web interface locate the version of the package you would like to install
#copy the link of the tree view of the package directory (eg http://pkgbuild.com/git/aur-mirror.git/tree/dropbox?id=b19a54c808554c796f310747725ad2ff4291e44a) 

#scrape the link for files and output them to 'files'
wget -q -O - 'http://pkgbuild.com/git/aur-mirror.git/tree/dropbox?id=b19a54c808554c796f310747725ad2ff4291e44a' | grep -o "/git/aur-mirror.git/plain/[^']*" | sed -e 's/^/http:\/\/pkgbuild.com/' > files

#download the files
wget -qi files

#clean file names (will generate errors, so just ignore them)
ls | sed -n 's/\([^?]*\)\(.*\)/mv "\1\2" "\1"/p' | sh

#build the package
makepkg -s

#install
pacman -U $downgrade*.pkg.tar.xz

#optionally clean up environment
cd && rm /tmp/$downgrade
unset downgrade
You can add it to a seperate file. Look into Category:Scripts for examples. And then add a link to your new page. -- Fengchao (talk) 04:45, 20 September 2012 (UTC)