Topic: HowTo: Upgrade the #! Point Release to sid
This HowTo is written for/on a #! Point Release with unstable (Sid) sources.
It may or may not work with testing (Wheezy) - just change the sources.list, apt.conf, and apt/preferences accordingly. If somebody wants to try the testing variant, and it works, let me know and I change this introduction.
Debian calls sid an 'unstable' release, but this name derives from the fact that the updates for packages are coming in many times a day. The 'stable' release uses packages which have been tested on many different machines, for quite a long time. If you don't want to waste (or spend) time to maintain your computer and to download megabytes of updates a day, you better go with something like Debian Squeeze or CentOS. If you run a server, forget sid.
The difficulty of the transition is moderate, but you won't get away with copy & paste only. Read the instructions first, and if you are unclear, write a post and ask. I'll try to answer ASAP.
Generally, you should always use apt-get dist-upgrade and not synaptic (use synaptic only if you wish to search for packages, though I recommend apt-cache search SEARCH_TERM) if you run sid.
Installation
We start with a USB stick or CD, on which you successfully wrote your newestCrunchbang Statler iso. First of all, the creation of a bootable USB stick which detects network and CD-ROM correctly will most probably not work with unetbootin. I have used a live-usb-installer from http://www.learnfree.eu but you can use the dd method (see the #! WIKI) or, in Windows, use the Linux Live Installer.
If you get stuck in the boot process of your CD/USB or in the Debian (#!) installer, refer to the Support (Stable) Section of the #! forums
http://crunchbanglinux.org/forums/forum
rt-stable/
Boot into the newly installed system and configure the network. If this already fails here, again search help in the Support (Stable) section of the #! forums. To this point, you're running a standard #! Statler install.
Cancel post-installation script.
All of the following actions need elevated user privileges.
I'll use nano as default editor, you can pick geany, vi, ed, a magnetic needle...
Depending on your installation - and its network detection in the Debian installer - your sources.list is either fully populated or quite bare. Basically, the /etc/apt/sources-list-post-preseed file (if existing) can be copied to /etc/apt/sources.list
nano /etc/apt/sources.listchange the content to:
## CRUNCHBANG
## Compatible with Debian Squeeze, but use at your own risk.
deb http://packages.crunchbang.org/statler statler main
#deb-src http://packages.crunchbang.org/statler statler main
## CRUNCHBANG MULTIMEDIA
## Debian Multimedia Mirror
#deb http://packages.crunchbang.org/statler-mm squeeze main non-free
#deb-src http://packages.crunchbang.org/statler-mm squeeze main non-free
## CRUNCHBANG MOZILLA
## Debian Mozilla Mirror
#deb http://packages.crunchbang.org/statler-mozilla squeeze-backports iceweasel-release
#deb-src http://packages.crunchbang.org/statler-mozilla squeeze-backports iceweasel-release
## DEBIAN
deb http://ftp.debian.org/debian/ sid main contrib non-free
#deb-src http://ftp.debian.org/debian/ squeeze main contrib non-free
## DEBIAN SECURITY
#deb http://security.debian.org/ squeeze/updates main
#deb-src http://security.debian.org/ squeeze/updates mainOptional: You can change the official Debian mirror to something closer to your location. See: http://www.debian.org/mirror/list
We can add the unofficial Debian multimedia repository later - I haven't looked into the #! MM repositories, yet. Backports are disabled from now on.
Preparing the dist-upgrade
We need to change the release defaults in apt.conf - if your apt.conf is blank, create it. We can also create another configuration file in /etc/apt/apt.conf.d/ if we want to keep the modularity
nano /etc/apt/apt.conf
#and
nano /etc/apt/apt.conf.d/00DefaultReleasechange the content to:
APT::Default-Release "sid";Let's edit APT's preferences:
nano /etc/apt/preferenceschange the priority:
Package: *
Pin: release n=statler
Pin-Priority: 1001
Package: *
Pin: release n=sid
Pin-Priority: 500So, even if (for whatever reasons) backports would be enabled, they'd only get a default priority of 100. If set like this, we can only manually install backports if we really want to.
---------------------------------
Save and exit.
---------------------------------
Update & Dist-upgrade
Now comes the update and upgrade part. Usually you can simply
sudo apt-get update && sudo apt-get dist-upgradeIf you want to play super-safe, do this:
sudo apt-get dist-upgrade -dand then either leave X (init 1) or reboot, in GRUB pick Recovery Mode, boot into the tty and apply apt-get dist-upgrade
This will take a while, I had to download around 600MB, YMMV. You'll be asked questions related to Samba, whether certain services should be restarted etc. Nothing spectacular.
If you get asked what you want to do with:
Configuration file `/etc/issue.distrib' - choose Y
Configuration file `/etc/issue.net.distrib' - choose Y
Configuration file `/etc/sudoers' - choose Y (you'll need to add your user to the sudoers manually, if you wish so)
Messages about "Required firmware files may be missing" can be ignored.
Time for a
rebootThe First boot into Sid
If there are two nm-applets in the tray, try:
rm /etc/xdg/autostart/nm-applet.desktopYou can now remove the crunchbang repos from /etc/apt/sources.list, if you like so. At the moment they don't conflict with Sid, but we never know.
PolicyKit
If you have problems with PolicyKit, use ConsoleKit's ck-launch-session by changing the login_cmd line of your /etc/slim.conf to:
login_cmd exec ck-launch-session /bin/bash -login ~/.xinitrc %sessionand make an ~/.xinitrc file
#!/bin/sh
exec openbox-sessionMounting External Drives
If your external (ntfs) drives are not mounted in Thunar, try to
apt-get install ntfs-config ntfs-3g and run ntfs-config as root. After this,
apt-get install disk-managerand run it as root. After a reboot your drives should be mounted automatically. (Thanks @Texus)
No Logout with cb-exit
If you are using the cb-exit script, which relies on hal, and you cannot log out from the Openbox Menu, add following part to the ~/.config/openbox/menu.xml, replacing the cb-exit entry (Thanks @jelloir)
<menu id="session-menu" label="Session">
<item label="Logout"><action name="Exit"><prompt>no</prompt></action></item>
<item label="Suspend"><action name="Execute"><execute>
dbus-send --system --print-reply --dest=org.freedesktop.UPower /org/freedesktop/UPower org.freedesktop.UPower.Suspend
</execute></action></item>
<item label="Hibernate"><action name="Execute"><execute>
dbus-send --system --print-reply --dest=org.freedesktop.UPower /org/freedesktop/UPower org.freedesktop.UPower.Hibernate
</execute></action></item>
<item label="Poweroff"><action name="Execute"><execute>
dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
</execute></action></item>
<item label="Restart"><action name="Execute"><execute>
dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Restart
</execute></action></item>
</menu>It's also possible to shutdown with the following entries in menu.xml (Thanks @Corvo)
<item label="Reboot">
<action name="Execute"> <execute>sudo 'shutdown -r now'</execute> </action> </item>
<item label="Shut down">
<action name="Execute"> <execute>sudo 'shutdown -h now'</execute> </action> </item>which requires adding the user in the sudoers:
visudoat the bottom of the page, add
ALL ALL=NOPASSWD:/sbin/shutdownOptional Steps & Recommendations
Get rid of slim?
Most problems related to shutdown and mounting are "fixed" by installing lightdm or gdm as login manager. Something like
init 1
/etc/init.d/slim stop
apt-get purge slim
apt-get install lightdm
dpkg-reconfigure lightdm
/etc/init.d/lightdm startshould do the trick.
HAL or consolekit?
As #! still relies on HAL to shutdown, I recommend changing the menu.xml so that cb-exit is not used anymore. (see above!)
Get a short summary of bugs before installing with apt
apt-get install apt-listbugsAdd the Debian multimedia repos (quote)
For sid (unstable) alpha, amd64, armel, hppa, i386, ia64, mipsel, powerpc and sparc packages.
add in your /etc/apt/sources.list
deb http://www.debian-multimedia.org sid main non-free
or
deb ftp://ftp.debian-multimedia.org sid main non-freeUse the aptosid repositories for patches and some additional applications like ceni (network configuration tool, I recommend it as a replacement for nm)
nano /etc/apt/sources.listadd the line
deb http://aptosid.com/debian/ sid main fix.main(don't forget to apt-get update!)
Use the epic smxi script for kernel upgrades, installation of gfx drivers, and generally as dist-upgrade tool (as root):
cd /usr/local/bin && wget -Nc smxi.org/smxi.zip && unzip smxi.zip && smxiYou will need to use smxi outside of X (init 1) - I copied this line from www.smxi.org
Grab the "old" statler Shiki-themes and the murrine engine, if you like (as normal user)
wget -c http://packages.crunchbanglinux.org/statler/pool/main/crunchbang-extra-themes_0.1_all.deb
wget -c http://packages.crunchbanglinux.org/statler/pool/main/statler-theme_0.20_all.deb
wget -c http://packages.crunchbanglinux.org/statler/pool/main/gtk2-engines-murrine_0.91.0-crunchbang-1~git201009100045_i386.debUse dpkg -i packagename.deb (as root) to unpack and install - they may or may not work ![]()
If slim works well for you, you can enable autologin like this:
nano /etc/slim.confchange:
# default user, leave blank or remove this line
# for avoid pre-loading the username.
#default_user simoneto
# default user, leave blank or remove this line
# for avoid pre-loading the username.
default_user YOUR_USERNAME_HEREand
# Automatically login the default user (without entering
# the password. Set to "yes" to enable this feature
#auto_login noto
# Automatically login the default user (without entering
# the password. Set to "yes" to enable this feature
auto_login yesThe ugliness of the few gtk-3.0 apps will only disappear if you
- replace nm-applet with (eg.) wicd, ceni, or manually use ifup/ifdown and replace evince with epdfview
- or find a gtk2/gtk3 theme *and* create
nano ~/.config/gtk-3.0/settings.ini where you add, for example
[Settings]
gtk-theme-name = NAME_OF_YOUR_THEME
gtk-icon-theme-name = gnome-colors-statler
gtk-fallback-icon-theme = gnome
# next option is applicable only if selected theme supports it
gtk-application-prefer-dark-theme = true
# set font name and dimension
gtk-font-name = Sans 10Of course this theme shall be picked in lxappearance, too.
I'm sure I forgot something
Have "fun" with the sidomized #! point release. If you find something is wrong, feel free to correct me.
Thanks el_koraco, Thorny, jelloir for their constructive input and everybody else who has bothered reading, testing and giving feedback. If certain points in this howto cause inconvenience (especially the way slim/cb-exit is handled) I like to apologize - I wanted to stay as close as possible to the standard point release, yet try to have a smooth transition with an installation that aims to be as reliable as Statler, but based on Sid.
If you want to make a crunchification of the excellent (but ugly) aptosid, take a look at sunfizz' Howto: http://crunchbanglinux.org/forums/topic x-version/ Be sure to read through jelloir's Debian Sid + Openbox Wiki http://crunchbanglinux.org/forums/topic top-guide/ which covers the netinstall route and is a good resource for troubleshooting.
Info on Upgrading
- Always use
apt-get update && apt-get dist-upgrade - If possible, do this outside of X (init 1)
- Read the fscking output. Read what is going to be removed. If there are more packages removed than downloaded or upgraded, be careful. Sid receives updates four times a day. Waiting is always a good choice, use the time to visit the forums and see if there are upgrade warnings.
- It's a good idea to use the smxi script. Nevertheless, you have to read the output. If you are unclear, don't be shy, and ask on the #! forums. If you use KDE packages in Sid, you should better add the aptosid sources and visit the aptosid-related forums regularly. If you use Gnome3 packages in Sid, you will most probably get no feedback here.
- Do not mix squeeze/wheezy/sid, stable/testing/unstable, or any other combination. Stay with one. Once you are in sid/unstable, the way back to stable is not impossible, but very hard. Don't push your luck ![]()
- Don't use Ubuntu debs. If you do so, you will break your system. Not because I hate Ubuntu, but they are not designed for Debian.
- Be careful if there are transitions happening in sid (bigger version changes of big packages, like perl, gcc) - they need a few days to be fully available in the repositories, and a typical feature is a huge number of removed packages. In this case do not upgrade. Wait a few days, usually after 2-3 days the transition is completed (for the common architectures, at least)
References / Further readings:
debian sid openbox guide: http://wiki.bitbinary.com/index.php/Deb
_-_Openbox
siduction forums: http://siduction.org/index.php?name=PNphpBB2
aptosidusers forums: http://aptosidusers.de/index.php?name=PNphpBB2
aptosid official forums: http://aptosid.com/index.php?name=PNphpBB2
antix sid upgraders forums: http://antix.freeforums.org/sid-upgraders-f5.html
LMDE forums (testing): http://forums.linuxmint.com/viewforum.p
3bf58a4004
debian weather: http://edos.debian.net/weather/
debian transitions: http://release.debian.org/transitions/
Last edited by machinebacon (2012-05-06 20:03:33)