This file documents the instructions for upgrading to Bluewhite64 12.1, the packages added, removed, renamed, and/or split during the development cycle from Bluewhite64 12.0 through 12.1, and some potential "gotchas" that users can avoid by arming themselves with a little knowledge. *** INSTRUCTIONS FOR UPGRADING FROM 12.0 *** Follow the instructions detailed in the UPGRADE.TXT located in this directory. Note that upgrading from a Bluewhite64 version earlier than 12.0 is NOT supported at all and will almost certainly lead to breakage. *** PACKAGE ADDITIONS SINCE 12.0 *** A/inotify-tools: Added. A/ntfs-3g: Added ntfs-3g with full read-write support for ntfs filesystems. A/util-linux-ng: Added (replaced util-linux). AP/foomatic-filters: Added foomatic-filters; this is required to print using gutenprint and HPLIP with CUPS. AP/gnu-ghostscript: Replaces espgs (ESP Ghostscript). AP/gutenprint: Added gutenprint, which replaces gimp-print. AP/ntfsprogs: Moved from /extra; now includes full read-write support. L/dbus-python: Added. L/fuse: Added. L/libaio: Added. L/icon-naming-utils: Added. L/libmowgli: Added libmowgli, which is needed by Audacious. L/libwnck: Added the Window Navigation Control Kit library. L/libcddb: Added (needed by audacious-plugins). L/libcdio: Added (needed by audacious-plugins). L/pycairo: Added. L/pygobject: Added. L/pygtk: Added. L/pyrex: Added. L/tango-icon-theme: Added Tango icon theme. L/tango-icon-theme-extras: Added Tango theme extra icons. L/wavpack: Added wavpack (needed by audacious). N/ipw2100-fw: Added ipw2100 firmware. N/ipw2200-fw: Added ipw2200 firmware. N/iwlwifi-3945-ucode: Added Intel 3945 wireless firmware. N/iwlwifi-4965-ucode: Added Intel 4965 wireless firmware. N/rt61-firmware: Added rt61 firmware. N/rt71w-firmware: Added rt71w firmware. X/dejavu-fonts-ttf: Renamed from dejavu-ttf. X/liberation-fonts-ttf-0.2: Added the liberation ttf fonts. N/zd1211-firmware: Added zd1211 firmware. X/* - Upgraded to X.Org 7.3 release X/anthy-9100e: Added. X/libhangul: Added. X/libpciaccess: Added. X/m17n-lib: Added. X/pixman: Added. X/sazanami-fonts-ttf: Added. X/scim: Added. X/scim-anthy: Added. X/scim-bridge: Added. X/scim-hangul: Added. X/scim-m17n: Added. X/scim-pinyin: Added. X/scim-tables: Added. X/sinhala_lklug-font-ttf: Added. X/tibmachuni-font-ttf: Added. X/wqy-zenhei-font-ttf: Added. X/xbacklight: Added. X/xcompmgr: Added. X/xf86-input-citron: Added. X/xf86-input-dynapro: Added. X/xf86-input-elo2300: Added. X/xf86-input-microtouch: Added. X/xf86-input-penmount: Added. X/xf86-video-radeonhd: Added. X/xinput: Added. EXTRA/ia32-emulation: Added 32-bit runtime libraries. *** PACKAGE REMOVALS SINCE 12.0 *** A/util-linux: Removed (replaced by util-linux-ng). AP/espgs: Removed This is replaced by gnu-ghostscript. AP/gimp-print: Removed. This is replaced by gutenprint. E/emacs-info: Removed (this is not included in the monolithic emacs package). E/emacs-leim: Removed (this is not included in the monolithic emacs package). E/emacs-lisp: Removed (this is not included in the monolithic emacs package). E/emacs-misc: Removed (this is not included in the monolithic emacs package). E/emacs-nox: Removed (this is not included in the monolithic emacs package). L/libmusicbrainz: Removed. L/libtunepimp: Removed. L/mcs: Removed (renamed to l/libmcs). AP/gimp-print: Removed. This is replaced by gutenprint. X/dejavu-ttf: Renamed to dejavu-fonts-ttf. X/xorg-server-xdmx: Removed. This is unmaintained upstream. EXTRA software/intel-wlan-ipw3945/*: Replaced with extra/intel-wlan-iwlwifi/*. EXTRA/linux-wlan-ng: This does not compile on 2.6.24.x kernels. EXTRA/xf86-video-ati-6.6.3: Removed (hopefully the new xorg ati driver will be fine). pasture/gcc-3.4.6/: Removed. *** OTHER NOTABLE CHANGES AND HINTS *** Use one of the provided huge kernels for daily use. Do not report bugs until/unless you have reproduced them using one of the stock huge kenels. udev was upgraded - don't forget to move/merge all of the associated *.new files into place or you will have problems. We are now using as much of the upstream udev rules as possible (and efforts are underway to further unify us with other distributions), so you'll notice a lot more udev rules files in that directory. Be sure to heed the warnings about not editing the included rules files, as they will be overwritten if/when the udev package is upgraded. If you have more than one network card and have been using the 75-network-devices.rules file, it is now called 70-persistent-net.rules (and is generated from 75-persistent-net-generator.rules). Rules for optical devices are now located in 70-persistent-cd.rules (and are generated from 75-cd-aliases-generator.rules). You will need to remove the old rules files (75-optical-devices.rules and 75-network-devices.rules) so that they don't conflict. As stated above, Bluewhite64's udev implementation will automatically create rules files for your optical devices and network interfaces on first boot. If you add/remove/replace any of this hardware, and/or you "clone" a system to another hard drive for deployment, you will need to either remove these two rules files (so that udev will regenerate them to reflect the new or changed hardware) or edit them accordingly. The pcspkr module is no longer loaded by default in /etc/rc.d/rc.modules, and there are many other changes to rc.modules, including commented options to load various acpi modules (although many of these should automatically load if needed in 2.6.24.x kernels). If you find that you are often making changes to rc.modules, then consider making a custom rc.modules.local script. The version of module-init-tools in 12.1 now fully respects the blacklisted modules in /etc/modprobe.d/blacklist, even if there are aliases pointing to them, so pcspkr should not be autoloaded any more against the wishes of /etc/modprobe.d/blacklist. The psmouse module is no longer blacklisted by default; instead, it is loaded with the imps protocol per /etc/modprobe.d/psmouse -- if you need/want a different protocol, edit that file. Note that options declarations have no bearing on *if* a module is loaded - they only affect *how* it is loaded. In other words, the module should now be loaded automatically (since it's no longer blacklisted), and the options in /etc/modprobe.d/psmouse are the ones applied when loading it. The /etc/modprobe.d/blacklist file has been changed significantly; be sure to move/merge the /etc/modprobe.d/blacklist.new file in its place. Also, you must NOT leave a backup of the old blacklist file (such as blacklist.orig) in /etc/modprobe.d/ -- ALL files in that directory are checked, so if a module is blacklisted in *any* of them, it won't be loaded. The new 2.6.24.x kernels default to use a UTF8 console. This might break some things, so if you prefer the "old" default, you'll need to add this to your kernel's lilo stanza: append = "vt.default_utf8=0" The provided kernels are now compiled with CONFIG_SCSI_MULTI_LUN=y so there should be no need for the /etc/rc.d/rc.scanluns script (it can now be deleted, as it's not included in the sysvinit-scripts package any more). If this configuration causes a problem with any real SCSI drives, then you should add this to your kernel's lilo stanza: append = "max_luns=1" All php extensions built in /usr/lib/php/extensions are activated by default; if you don't want any of them, comment them out in /etc/httpd/php.ini HPLIP no longer requires daemons to be started at boot time, so any /etc/rc.d/rc.hplip script can be removed. There is a minor problem with the HPLIP and CUPS versions in Bluewhite64 12.1; hp-toolbox will not work unless LC_ALL is set to a UTF8 locale. An easy workaround is to start it with "LC_ALL=$LANG.UTF8 hp-toolbox" if you're not using a UTF8 locale. Also, your user account must be a member of the "lp" group for hp-toolbox to work properly, and to use the scanner portion of some (all?) HP print/scan/copy units, you'll need to be a member of the "lp" group. This is due to the fact that hplip's udev rules set the device with group "lp" ownership. If you notice Xfce's Terminal and perhaps some other applications being drawn very slowly in X, then you should try explicitly disabling the Composite extension in /etc/X11/xorg.conf, or set XLIB_SKIP_ARGB_VISUALS=1 in your environment prior to starting X. For more information on this, see: http://bugzilla.xfce.org/show_bug.cgi?id=2792 If you notice extremely long wait times when formatting partitions in the installer, and you're installing on a Thinkpad that has a SATA drive, it's possible that the wrong driver is being used, which disables DMA on the drive. A bit more detail about it is here: http://www.thinkwiki.org/wiki/Problems_with_SATA_and_Linux#No_DMA_on_system_hard_disk Try passing "hda=noprobe" to the kernel when booting the installer, and it should use the correct libata driver. HAL is not new anymore, but here are a few notes related to it: 1. User accounts with permission to mount removable devices must be in at least the plugdev group, and the power group is also recommended to allow shutdown and reboot via HAL methods. 2. HAL will honor settings in /etc/fstab if a device is present there, so you could technically have removable devices defined in /etc/fstab, but if the fstab settings do not allow normal users to mount them (with the "user" or "users" option), then HAL/dbus will not allow them to be mounted either. In other words, for example, if your fstab line for the cdrom/dvd drive includes the "owner" option, you will not be able to mount it as a normal user. 3. If you find a need for modified fdi files, those should be placed in the relevant directories in /etc/hal/ instead of /usr/share/hal/ Versions of the linux kernel less than 2.6.22 will not work - the lowest kernel version that glibc supports is 2.6.22, so don't bother trying anything older than that. The MySQL version in Bluewhite64 12.1 includes a potentially incompatible change for some databases which might require some work on them, so be sure to read the release notes for mysql-5.0.51 (the version which introduced the change) at http://dev.mysql.com/doc/refman/5.0/en/releasenotes-cs-5-0-51.html Input methods for complex characters (CJK, which is shorthand for Chinese, Japanese, Korean) and other non-latin character sets have been added. These input methods use the SCIM (Smart Common Input Method) platform. The environment variables for SCIM support are set in /etc/profile.d/scim.sh The requirements for getting SCIM input methods to work in your X session are as follows: (1) Use a UTF-8 locale. Look in /etc/profile.d/lang.sh for setting your language to (for instance) en_US.UTF-8. As a word of warning: maybe you should leave root with a non-UTF-8 locale because you don't want root's commands to be misinterpreted. You can add the following line to your ~/.profile file to enable UTF-8 just for yourself: export LANG=en_US.UTF-8 (2) Make the scim profile scripts executable. These will setup your environment correctly for the use of scim with X applications. Run: chmod +x /etc/profile.d/scim.* (3) Start the scim daemon as soon as your X session starts. The scim daemon must be active before any of your X applications. In KDE, you can add a shell script to the ~/.kde/Autostart folder that runs the command "scim -d". In XFCE you can add "scim -d" to the Autostarted Applications. If you boot your computer in runlevel 4 (the graphical XDM/KDM login) you can simply add the line "scim -d" to your ~/.xprofile file. This gives you a Desktop Environment independent way of starting scim. When scim is running, you will see a small keyboard icon in your system tray. Right-click it to enter SCIM Setup. In 'Global Setup' select your keyboard layout, and you are ready to start entering just about any language characters you wish! Press the magical key combo in order to activate or deactivate SCIM input. The SCIM taskbar in the desktop's corner allows you to select a language. As you type, SCIM will show an overview of applicable character glyphs (if you are inputting complex characters like Japanese). If you are using the pinentry-gtk2 interface (for entering passphrases with gpg-agent), be aware that there is a bug in the way scim-bridge and the pinentry-gtk2 interact. The result is that keyboard input does not register with pinentry-gtk2. For the time being, either change the /usr/bin/pinentry symlink to use the qt or curses frontend, or don't use scim. If you have set up an encrypted root partition, you will need to have access to your keyboard in order to type the passphrase. This may require you to add the uhci-hcd and usbhid modules to your initrd image if you have a USB keyboard. Also note that if you are using a non-US keyboard, you can use the '-l' parameter to the 'mkinitrd' command in order to add support for this keyboard to your initrd. People using network boot (PXE) for their Bluewhite64 installations will notice that there is no longer a file 'initrd.img' in the /usb-and-pxe-installers directory. Now that the initrd.img files used for the bootable CDROM and for the PXE boot have been made identical, there is no more need for two copies. Please use /isolinux/initrd.img as the initrd file for your PXE server. If you have permission errors when attempting to burn a cdrom or dvd image, such as the following: /usr/bin/cdrecord: Operation not permitted. Cannot send SCSI cmd via ioctl then cdrecord almost certainly needs root privileges to work correctly. One potential solution is to make the cdrecord and cdrdao binaries suid root, but this has possible security implications. The safest way to do that is to make those binaries suid root, owned by a specific group, and executable by only root and members of that group. For most people, the example below will be sufficient (but adjust as desired depending on your specific needs): chown root:cdrom /usr/bin/cdrecord /usr/bin/cdrdao chmod 4750 /usr/bin/cdrecord /usr/bin/cdrdao If you don't want all members of the 'cdrom' group to be able to execute the two suid binaries, then create a special group (such as 'burning' which is recommended by k3b), use it instead of 'cdrom' in the line above, and add to it only the users you wish to have access to cdrecord and cdrdao. If, for some reason, the IA32 emulation is not working as you expected, you can try install extra/ia32-emulation/ia32-libX11-with-xcb/ia32-libX11-1.1.4-x86_64-1.tgz package using installpkg. The libX11 has some issues with some 32-bit GUI applications. If you are still not satisfied with the IA32 emulation then consider using the packages found in pasture/ia32-emulation/*. Please NOTE: use removepkg /var/log/packages/ia32-* to remove the old ones and use installpkg to install the new ones!