Difference between revisions of "User:Tonyr/Journal/Jul07"

From FreekiWiki
Jump to navigation Jump to search
(→‎26Jul07: add crossref)
 
(16 intermediate revisions by the same user not shown)
Line 5: Line 5:
  
 
''Wireless network selection''<br>
 
''Wireless network selection''<br>
Also new to me: Kathey Sutter pointed out that when configuring the wireless interface, setting the ESSID to '''auto''' and enabling roaming mode will result in the network icon in the menu bar providing a list of detected networks to choose from.
+
Also new to me: Kathey Sutter pointed out that when configuring the wireless interface, setting the ESSID to '''auto''' and enabling roaming mode will result in the network icon in the menu bar providing a list of detected networks to choose from.
  
 
==11Jul07==
 
==11Jul07==
Line 17: Line 17:
  
 
==12Jul07==
 
==12Jul07==
''Using netwrok proxy for update''<br>''
+
''Using network proxy for update''<br>''
 
Michael said we should be using a proxy for updating software, especially if there are many updates, or if any update package is large (several megabytes).  If it's only one or two small packages, it probably isn't necessary.  A case in point is the Feisty OpenOffice update that appeared a couple of days ago that was over 70MB, if I remember correctly.   
 
Michael said we should be using a proxy for updating software, especially if there are many updates, or if any update package is large (several megabytes).  If it's only one or two small packages, it probably isn't necessary.  A case in point is the Feisty OpenOffice update that appeared a couple of days ago that was over 70MB, if I remember correctly.   
  
Line 45: Line 45:
 
''Yaboot options''<br>
 
''Yaboot options''<br>
 
The FreekBoxen boot option for new user creation is implemented as a script in run level 3, one of the otherwise unused Debian run levels (run level 2 is multi-user by convention, levels 3-5 default to multi-user).  The script uses the '''oem-config''' script provided by the '''oem''' installation option.  MacBuild should implement both of these practices (oem installation and new user boot option).
 
The FreekBoxen boot option for new user creation is implemented as a script in run level 3, one of the otherwise unused Debian run levels (run level 2 is multi-user by convention, levels 3-5 default to multi-user).  The script uses the '''oem-config''' script provided by the '''oem''' installation option.  MacBuild should implement both of these practices (oem installation and new user boot option).
 +
 +
''Basiccheck''<br>
 +
'''Basiccheck''' is a Ruby script and a file of test specifications.  This whole thing can be adapted to the Mac environment by modifying the tests.
 +
 +
==15Jul07==
 +
''Yaboot options''<br>
 +
Along with the new-user boot option, '''x86''' based Ubuntu installations by default have a '''rescue''' boot option that boots into single-user (root) mode.  The '''PPC''' version never has had that as far as I can tell. Why is that, do you suppose? 
 +
It is possible to boot into single user mode: at the boot prompt enter '''Linux single'''. There is no
 +
hint for this in the default welcome message, and it requires that the user know ahead of time when
 +
and how to intervene.  The default wait time is not very long, either. The modification described below
 +
is one alternative.
 +
 +
It is relatively easy to add a boot stanza to ''/etc/yaboot.conf'': make a copy of the '''Linux''' stanza, change the label to '''rescue''', and change the '''append''' line to be '''append="single"'''.  This by itself does not work, because the '''PPC''' boot environment does not behave the same way as the '''x86''' boot environment.  Ubuntu, as of release 6.10(Edgy) is using a new '''init''' system called '''upstart''', which does not pay any attention to runlevels.  An accommodation has been made by the devs to have a semblance of backward compatibility with the earlier runlevels convention.  There is a ramification for selecting a runlevel from bootloader menus.  Before release 6.10, a runlevel specifier could be added to one of the lines in a boot stanza in ''menu.lst'' (grub) or ''yaboot.conf'' that would be digested and acted on.  Since 6.10, only '''single''' or '''S''' is recognized, otherwise only the '''"default"''' runlevel 2 is available, and in the PPC version, even that is broken.  A [https://bugs.launchpad.net/ubuntu/+source/upstart/+bug/85014 bug] has been logged about this at Launchpad.  All is not lost, however.
 +
 +
In '''upstart''' runlevels are selected at boot time by the event script in ''/etc/event.d/rc-default''.  The distributed version of this script doesn't know anything about runlevels 0,1,3,4,5,6.  I found a modification out in webland, and tweaked it a little.  Here is the PPC version:
 +
# rc - runlevel compatibility
 +
#
 +
# This task guesses what the "default runlevel" should be and starts the
 +
# appropriate script.
 +
 +
start on stopped rcS
 +
 +
script
 +
        runlevel --reboot || true
 +
 +
        if grep -q -w -- "-s\|single\|S" /proc/cmdline; then
 +
            telinit 1
 +
        elif grep -qE -- "\<[0-6]\>" /proc/cmdline; then
 +
            RL="$(grep -Eo -- "\<[0-6]\>" /proc/cmdline)"
 +
            if [ -n "$RL" ]; then
 +
                telinit $RL
 +
            else
 +
                  telinit 2
 +
            fi
 +
        elif [ -r /etc/inittab ]; then
 +
            RL="$(sed -n -e "/^id:[0-9]*:initdefault:/{s/^id://;s/:.*//;p}" /etc/inittab || true)"
 +
            if [ -n "$RL" ]; then
 +
                telinit $RL
 +
            else
 +
                telinit 2
 +
            fi
 +
        else
 +
            telinit 2
 +
        fi
 +
end script
 +
 +
The '''x86''' version is slightly different.  The line that contains '''telinit 1''' in the '''PPC''' version can be '''telinit S''' in the '''x86''' version.  '''telinit''' behaves differently on the two architectures: in '''x86''' it stops all non-critical processes, and in '''PPC''' it does not.  In fact, in the '''PPC''' version, invoking '''telinit S''' hangs the system.  Somebody knows about this, since '''man telinit''' specifically warns against using it in the PPC release.
 +
 +
There are still things wrong in this script.  Runlevel 6 means '''reboot''', so using runlevel 6 in a boot stanza would cause and endless reboot loop.  In pre-'''upstart''' releases, the sysV style init system allowed for (undocumented) additional runlevels 7,8,9.  The script above has remnants of that.  The accommodating '''telinit''' used with '''upstart''' does not recognize runlevels 7,8,9.
 +
 +
It sure would be nice if there were a way to make '''yaboot''' offer a menu of boot options like '''grub''' does.
 +
 +
Once the modifications described here are in place, it is a simple matter to add other boot stanzas to ''/etc/yaboot.conf'' for other runlevels, specifically runlevel 3 for the new-user (oem-config) option.
 +
 +
==16Jul07==
 +
''yaboot.conf and the boot menu''<br>
 +
There are two different boot menus in the yaboot/PPC world.  '''stage1''' boot offers a limited selection of boot 'targets' like GNU/linux, cd, network, macosx.  The boot prompt '''boot:''' offers another set of boot options garnered from ''/etc/yaboot.conf'', namely one for every boot stanza.  '''stage1''' does not offer the flexibility that we are looking for to implement a boot menu with the new-user boot option.  ''yaboot.conf'' has enough options to create a reasonable boot menu facade presented to the user.
 +
 +
Here is the ''yaboot.conf'' that I have come up with.  It adds single-key boot function for each of the boot stanzas, and presents a boot menu resembling the '''stage1''' boot menu, using single letters for each of the useful boot images.  This is possible using the global '''single-key''' option and a single letter '''alias''' in each of the stanzas.  The boot menu is just a text file ''boot_message'' in the root directory of the default device and partition (/dev/hda, 3). I have add some other things, also: '''stage1''' boot options for netboot and OpenFirmware boot, timeout/delay values that allow some time to make selections from each of the menus, and a marker on the default boot image (Linux).
 +
yaboot.conf:
 +
## yaboot.conf generated by the Ubuntu installer
 +
##
 +
## run: "man yaboot.conf" for details. Do not make changes until you have!!
 +
## see also: /usr/share/doc/yaboot/examples for example configurations.
 +
##
 +
## For a dual-boot menu, add one or more of:
 +
## bsd=/dev/hdaX, macos=/dev/hdaY, macosx=/dev/hdaZ
 +
 +
boot=/dev/hda2
 +
device=/pci@f2000000/mac-io@17/ata-4@1f000/disk@0:
 +
partition=3
 +
root=/dev/hda3
 +
timeout=50
 +
delay=10
 +
install=/usr/lib/yaboot/yaboot
 +
magicboot=/usr/lib/yaboot/ofboot
 +
default=Linux
 +
message=boot_message
 +
enablecdboot
 +
enableofboot
 +
enablenetboot
 +
 +
image=/boot/vmlinux
 +
label=Linux
 +
        alias=l
 +
read-only
 +
single-key
 +
initrd=/boot/initrd.img
 +
append="quiet splash"
 +
 +
image=/boot/vmlinux
 +
label=rescue
 +
        alias=r
 +
single-key
 +
read-only
 +
initrd=/boot/initrd.img
 +
append="single"
 +
 +
image=/boot/vmlinux
 +
label=runlevel_3
 +
alias=n
 +
single-key
 +
read-only
 +
initrd=/boot/initrd.img
 +
append="quiet splash 3"
 +
 +
image=/boot/vmlinux.old
 +
label=old
 +
alias=o
 +
single-key
 +
read-only
 +
initrd=/boot/initrd.img.old
 +
append="quiet splash"
 +
The ''boot_message'' file:
 +
Press  l for Linux
 +
        r for rescue
 +
        n for new user
 +
        o for old Linux
 +
or wait 10 seconds for Linux auto boot
 +
 +
These need to be added to the disk replicator, along with the ''/etc/event.d/rc-default'' replacement mentioned earlier. 
 +
 +
''Replicator tweaks''<br>
 +
The disk replicator makes several modifications to files in the the rsync'd image.  The PC Build Ubuntu installation process does modifications like this using a package of local modifications.  The things in the replicator, and the '''upstart''' and ''yaboot.conf'' modifications described earlier should collected into a package for PPC installation modifications.
 +
 +
==19Jul07==
 +
''Net Install Revisited''<br>
 +
Lots o' changes goin' down.  FG has Feisty repos for both x86 and ppc.  PC Build is heading toward using Feisty for its standard installation, and word is that they are going to use a standard network install instead of imaged hard drives.  The groundwork is being done to include MacBuild support.  So Macbuild should be focusing effort on implementing the network installation process.  Earlier work on this is reported in [[User:Tonyr/Journal/Apr07|Apr07]].  The issues of runlevels and boot options still need to be incorporated into this process.
 +
 +
==20Jul07==
 +
''Replicator tweaks''<br>
 +
After consulting with Vagrant and Dave, mods for runlevel handling should be abandoned and some other mechanism adopted to replaces whatever runlevels are used for.  Dave suggested not changing anything if there are no complaints about Macs.  I don't see why changes that are only ''yaboot.conf'' related (boot menu, single user boot option) shouldn't be implemented.
 +
 +
''Radeon video and DVI-VGA adapter''<br>
 +
There is a G4 tower in work that has an an ATI Radeon 9000 video card.  The card has a DVI connector and an ADC connector.  Since that standard FG monitor is a VGA monitor, a DVI-VGA adapter cable is the logical thing to use for attaching a VGA monitor.  MacBuild also keeps ADC monitors available for sale in the store or for attaching to systems. 
 +
 +
Unfortunately, there are problems with Ubuntu Xorg version and the family of Radeon video cards that the 9000 belongs to.  The Xserver crashes when attempting to determine the proper sync values/resolutions of a VGA monitor that is connected through the adapter.  This problem has been reported as a bug in Launchpad and Bugzilla, although usually in conjunction with dual-monitor setups.  What it means for FG MacBuild is that this system cannot support a VGA monitor with Ubuntu installed.  There is apparently no problem with Mac OSX using a VGA monitor with the adapter, nor is there a problem using an ADC monitor.  This system must either be sold without an OS, or with an ADC monitor if Ubuntu is installed.
 +
 +
In reading various posts about this problem, a couple of possible workarounds were suggested.  I have not tried the LiveCD with this setup, either.  Both of these possibilities are worth pursuing.
 +
 +
 +
==24Jul07==
 +
''Pismo video''<br>
 +
Pismo (early G3 Powerbook) has video problems with xorg.  There is an ''xorg.conf'' fix described at [http://ubuntuforums.org/showthread.php?t=418301 http://ubuntuforums.org/showthread.php?t=418301].  It says,
 +
essentially, to add the line
 +
Modeline "1024x768" 78.741 1024 1058 1154 1312 768 769 772 800 +HSync +VSync
 +
to the Monitor section of ''/etc/X11/xorg.conf''.
 +
 +
==25Jul07==
 +
''Dual Cpu MDD''<br>
 +
Been workin' on a dual cpu mirror drive door G4 tower.  This one has several idiosyncrasies.  The video
 +
card is a Radeon 9000, and has only ADC and DVI connectors.  Installation with a 17" Apple Studio
 +
Display ADC CRT works, but the ''xorg.conf'' produced is minimal, having only one screen resolution:
 +
1280x1024.  I haven't tried a DVI monitor on the other connector, but a VGA monitor on that connector
 +
using a DVI-ADC adapter does not work.  ''dpkg-reconfigure'' seems to work alright, but at login time
 +
the Xserver crashes trying to setup the '''int10'' module.  Google turned up several similar
 +
complaints, most of which are associated with dual display setups.  The sound interface was not onfigured
 +
during installation so I added '''snd-powermac''' to ''/etc/modules''.  The removeable media drive is
 +
a DVD-RW.  It won't recognize a CD or DVD when one is inserted, kicks it back out, and then opens
 +
again automatically when closed.  I've seen this behavior before, and I think it got solved.  I'll
 +
have to see if I made a journal entry about it.
 +
 +
''Computers 4 Kids''<br>
 +
A man and woman from LA visited this afternoon interested in acquiring old (beige colored) Macs and
 +
looking for a place to recycle PCs.  They come up to Coos Bay/North Bend abot three times a year,
 +
and talked about driving a truck up to swap PCs for old Macs.  FG does not have the facilities to
 +
store old Mac computers for that long.  I mentioned Nextstep Recycling in Eugene to them, as did Richard, as a possible alternative  The woman's name is Marie deBello; the guy's name is Noah <something>.  She
 +
left me a card but I gave it to Liane.  She left another card with someone else.
 +
 +
==26Jul07==
 +
''Dual Cpu MDD''<br>
 +
Here are some links with clues and stuff to try for the display problems. There are two separate problems: 1) getting a VGA monitor to work using the DVI-VGA adapter, and 2) getting xorg to know about more resolutions for the Studio Display 17" ADC monitor.  So here's the links, awreddy...
 +
* [http://ubuntuforums.org/showthread.php?t=206945 http://ubuntuforums.org/showthread.php?t=206945]
 +
* [http://www.nabble.com/blank-screen-after-installation-of-openSUSE-10.2-PPC-t3187010.html http://www.nabble.com/blank-screen-after-installation-of-openSUSE-10.2-PPC-t3187010.html]
 +
* [https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-ati/+bug/93509 https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-ati/+bug/93509]
 +
* [https://bugs.launchpad.net/ubuntu/+source/xorg/+bug/93271 https://bugs.launchpad.net/ubuntu/+source/xorg/+bug/93271]
 +
The basic suggestions are 1) use '''fbdev''' as the driver instead of '''ati''', producing a slightly less robust video display, or 2)  add  '''Option "NoInt10" "true"''' to the Device section, or 3) copy the xorg.conf file from the LiveCD.
 +
note: The "Option"  "NoInt10"  "true" solution works.  tr 30jul07
 +
 +
 +
''One button mouse''<br>
 +
Apple has always used a one button mouse.  Ubuntu/Gnome 'expects' a three button mouse.  Ubuntu PPC has defined the F11 and F12 keyboard keys as the 2nd and 3rd mouse buttons.  The correspondence, Mac mouse/keyboard to 3 button mouse, is
 +
* mouse button = left-click
 +
* F11 = middle-click
 +
* F12 = right-click
 +
On the other hand, a real three button mouse works just fine.
 +
 +
This correspondence is actually specified in ''/etc/sysctl.conf'' with the lines:
 +
* # Emulate the middle mouse button with F11 and the right with F12.
 +
* dev/mac_hid/mouse_button_emulation=1
 +
* dev/mac_hid/mouse_button2_keycode=87
 +
* dev/mac_hid/mouse_button3_keycode=88
 +
where 87 and 88 are the key codes for the F11 and F12 keys. This article [http://www.bytebot.net/geekdocs/ibook/fedorappc.html http://www.bytebot.net/geekdocs/ibook/fedorappc.html] (and others) reports that using only the '''mouse_button_emulation''' line assigns Fn+Alt=right-click and Fn+Apple=middle-click.
 +
* Ref. [[User:Tonyr/Journal/Aug07#15Aug07|15Aug07]] ''Unmap F11/F12'' entry.
 +
 +
==31Jul07==
 +
''Gnash''<br>
 +
Gnash is the GNU opensource Flash player.  Both Gnash an a mozilla plugin (and a konqueror plugin) are in the Feisty repository (maybe in backports?).  It is reported to work on some video formats, and for some Youtube videos.  My experiment with a vanilla gnash install and the mozilla plugin worked really badly at the youtube sight, so I'm putting of adding it to the normal PPC installation for now.
 +
 +
''Automatix''<br>
 +
The Automatix folks dropped support for the PPC version when Ubuntu relegated the PPC releases to the ports pile. COnsequently there is no PPC Automatix.  Another extra package path, in addition to Add/Remove, must needs be devised, and the Mac new user FAQ updated accordingly.  I have already removed the Automatix reference in that document.

Latest revision as of 08:25, 15 August 2007

05Jul07

Airport Extreme
New to me: Airport Extreme cards don't 'just work' in Ubuntu. The driver is bdm43xx, but special magic is required to get the firmware from Mac OSX installed in the right place in the file system. The process is documented at https://help.ubuntu.com/community/WifiDocs/Driver/bcm43xx/Feisty. It requires installing package bcm43xxx-fwcutter, and the documentation therein explains where to get the firmware source files from Mac OSX.

Wireless network selection
Also new to me: Kathey Sutter pointed out that when configuring the wireless interface, setting the ESSID to auto and enabling roaming mode will result in the network icon in the menu bar providing a list of detected networks to choose from.

11Jul07

iMac power button mechanical failure
Jake worked on an iMac that wouldn't power on. He discovered that the front face button was not travelling inward far enough to contact and press the interior button mechanism. Pressing the interior button directly would work, i.e. the machine would power up. We decided that something about the metal chassis area holding the interior button mechanism must have been deformed somehow, just enough to defeat the minimum tolerance required for the button assembly to work. We couldn't see exactly what kind of adjustment would be necessary to bring the whole thing back into alignment.

12Jul07

Using network proxy for update
Michael said we should be using a proxy for updating software, especially if there are many updates, or if any update package is large (several megabytes). If it's only one or two small packages, it probably isn't necessary. A case in point is the Feisty OpenOffice update that appeared a couple of days ago that was over 70MB, if I remember correctly.

The FG proxy machine is proxy.fglan, and it uses port 3128 for apt updates. A way to specify this is with an entry in /etc/apt/apt.conf, which does not usually exist by default in Ubuntu. The entry looks like this:

Acquire
  {
     http::Proxy "http://proxy.fglan:3128";
     ftp::Proxy  "ftp://proxy.fglan:3128";
  }

Alternatively the lines could appear without the enclosing brackets as

Acquire::http::Proxy "http://proxy.fglan:3128";
Acquire::ftp::Proxy  "ftp://proxy.fglan:3128";

I'm not sure the ftp line is necessary, but it appears in all the examples I saw. Synaptic has a proxy configuration option in it's own Settings->Preferences menu, but the settings file only shows up in /root/.synaptic aas far as I can tell, and wouldn't extend back to cover apt in general. I think that /etc/apt/apt.conf applioes to every utility that uses apt.

What this means for the MacBuild process is that /etc/apt/apt.conf will need to be created before the update is done, and removed after it is finished. This may perhaps be automated in the cloning process by doing a chroot to the target installation partition/directory and invoking aptitude dist-upgrade. This calls for an experiment.

13Jul07

That proxy business
Well, Martin has put in place something called Transparent Proxy, making all that proxy stuff in yesterday's post unnecessary. So it goes.

14jul07

Pricing
According th the store price list, the difference between the hd/mem configurations 40/512 and 20/256 is $25 ($20 from mem, $5 from hd).

Yaboot options
The FreekBoxen boot option for new user creation is implemented as a script in run level 3, one of the otherwise unused Debian run levels (run level 2 is multi-user by convention, levels 3-5 default to multi-user). The script uses the oem-config script provided by the oem installation option. MacBuild should implement both of these practices (oem installation and new user boot option).

Basiccheck
Basiccheck is a Ruby script and a file of test specifications. This whole thing can be adapted to the Mac environment by modifying the tests.

15Jul07

Yaboot options
Along with the new-user boot option, x86 based Ubuntu installations by default have a rescue boot option that boots into single-user (root) mode. The PPC version never has had that as far as I can tell. Why is that, do you suppose?

It is possible to boot into single user mode: at the boot prompt enter Linux single. There is no
hint for this in the default welcome message, and it requires that the user know ahead of time when
and how to intervene.  The default wait time is not very long, either. The modification described below
is one alternative.

It is relatively easy to add a boot stanza to /etc/yaboot.conf: make a copy of the Linux stanza, change the label to rescue, and change the append line to be append="single". This by itself does not work, because the PPC boot environment does not behave the same way as the x86 boot environment. Ubuntu, as of release 6.10(Edgy) is using a new init system called upstart, which does not pay any attention to runlevels. An accommodation has been made by the devs to have a semblance of backward compatibility with the earlier runlevels convention. There is a ramification for selecting a runlevel from bootloader menus. Before release 6.10, a runlevel specifier could be added to one of the lines in a boot stanza in menu.lst (grub) or yaboot.conf that would be digested and acted on. Since 6.10, only single or S is recognized, otherwise only the "default" runlevel 2 is available, and in the PPC version, even that is broken. A bug has been logged about this at Launchpad. All is not lost, however.

In upstart runlevels are selected at boot time by the event script in /etc/event.d/rc-default. The distributed version of this script doesn't know anything about runlevels 0,1,3,4,5,6. I found a modification out in webland, and tweaked it a little. Here is the PPC version:

# rc - runlevel compatibility
#
# This task guesses what the "default runlevel" should be and starts the
# appropriate script.

start on stopped rcS

script
        runlevel --reboot || true

        if grep -q -w -- "-s\|single\|S" /proc/cmdline; then
            telinit 1
        elif grep -qE -- "\<[0-6]\>" /proc/cmdline; then
            RL="$(grep -Eo -- "\<[0-6]\>" /proc/cmdline)"
            if [ -n "$RL" ]; then
                telinit $RL
            else
                 telinit 2
           fi
        elif [ -r /etc/inittab ]; then
            RL="$(sed -n -e "/^id:[0-9]*:initdefault:/{s/^id://;s/:.*//;p}" /etc/inittab || true)"
            if [ -n "$RL" ]; then
                telinit $RL
            else
                telinit 2
            fi
        else
            telinit 2
        fi
end script

The x86 version is slightly different. The line that contains telinit 1 in the PPC version can be telinit S in the x86 version. telinit behaves differently on the two architectures: in x86 it stops all non-critical processes, and in PPC it does not. In fact, in the PPC version, invoking telinit S hangs the system. Somebody knows about this, since man telinit specifically warns against using it in the PPC release.

There are still things wrong in this script. Runlevel 6 means reboot, so using runlevel 6 in a boot stanza would cause and endless reboot loop. In pre-upstart releases, the sysV style init system allowed for (undocumented) additional runlevels 7,8,9. The script above has remnants of that. The accommodating telinit used with upstart does not recognize runlevels 7,8,9.

It sure would be nice if there were a way to make yaboot offer a menu of boot options like grub does.

Once the modifications described here are in place, it is a simple matter to add other boot stanzas to /etc/yaboot.conf for other runlevels, specifically runlevel 3 for the new-user (oem-config) option.

16Jul07

yaboot.conf and the boot menu
There are two different boot menus in the yaboot/PPC world. stage1 boot offers a limited selection of boot 'targets' like GNU/linux, cd, network, macosx. The boot prompt boot: offers another set of boot options garnered from /etc/yaboot.conf, namely one for every boot stanza. stage1 does not offer the flexibility that we are looking for to implement a boot menu with the new-user boot option. yaboot.conf has enough options to create a reasonable boot menu facade presented to the user.

Here is the yaboot.conf that I have come up with. It adds single-key boot function for each of the boot stanzas, and presents a boot menu resembling the stage1 boot menu, using single letters for each of the useful boot images. This is possible using the global single-key option and a single letter alias in each of the stanzas. The boot menu is just a text file boot_message in the root directory of the default device and partition (/dev/hda, 3). I have add some other things, also: stage1 boot options for netboot and OpenFirmware boot, timeout/delay values that allow some time to make selections from each of the menus, and a marker on the default boot image (Linux). yaboot.conf:

## yaboot.conf generated by the Ubuntu installer
##
## run: "man yaboot.conf" for details. Do not make changes until you have!!
## see also: /usr/share/doc/yaboot/examples for example configurations.
##
## For a dual-boot menu, add one or more of:
## bsd=/dev/hdaX, macos=/dev/hdaY, macosx=/dev/hdaZ

boot=/dev/hda2
device=/pci@f2000000/mac-io@17/ata-4@1f000/disk@0:
partition=3
root=/dev/hda3
timeout=50
delay=10
install=/usr/lib/yaboot/yaboot
magicboot=/usr/lib/yaboot/ofboot
default=Linux
message=boot_message
enablecdboot
enableofboot
enablenetboot

image=/boot/vmlinux
	label=Linux
        alias=l
	read-only
	single-key
	initrd=/boot/initrd.img
	append="quiet splash"

image=/boot/vmlinux
	label=rescue
        alias=r
	single-key
	read-only
	initrd=/boot/initrd.img
	append="single"

image=/boot/vmlinux
	label=runlevel_3
	alias=n
	single-key
	read-only
	initrd=/boot/initrd.img
	append="quiet splash 3"

image=/boot/vmlinux.old
	label=old
	alias=o
	single-key
	read-only
	initrd=/boot/initrd.img.old
	append="quiet splash"

The boot_message file:

Press  l for Linux
       r for rescue
       n for new user
       o for old Linux
or wait 10 seconds for Linux auto boot

These need to be added to the disk replicator, along with the /etc/event.d/rc-default replacement mentioned earlier.

Replicator tweaks
The disk replicator makes several modifications to files in the the rsync'd image. The PC Build Ubuntu installation process does modifications like this using a package of local modifications. The things in the replicator, and the upstart and yaboot.conf modifications described earlier should collected into a package for PPC installation modifications.

19Jul07

Net Install Revisited
Lots o' changes goin' down. FG has Feisty repos for both x86 and ppc. PC Build is heading toward using Feisty for its standard installation, and word is that they are going to use a standard network install instead of imaged hard drives. The groundwork is being done to include MacBuild support. So Macbuild should be focusing effort on implementing the network installation process. Earlier work on this is reported in Apr07. The issues of runlevels and boot options still need to be incorporated into this process.

20Jul07

Replicator tweaks
After consulting with Vagrant and Dave, mods for runlevel handling should be abandoned and some other mechanism adopted to replaces whatever runlevels are used for. Dave suggested not changing anything if there are no complaints about Macs. I don't see why changes that are only yaboot.conf related (boot menu, single user boot option) shouldn't be implemented.

Radeon video and DVI-VGA adapter
There is a G4 tower in work that has an an ATI Radeon 9000 video card. The card has a DVI connector and an ADC connector. Since that standard FG monitor is a VGA monitor, a DVI-VGA adapter cable is the logical thing to use for attaching a VGA monitor. MacBuild also keeps ADC monitors available for sale in the store or for attaching to systems.

Unfortunately, there are problems with Ubuntu Xorg version and the family of Radeon video cards that the 9000 belongs to. The Xserver crashes when attempting to determine the proper sync values/resolutions of a VGA monitor that is connected through the adapter. This problem has been reported as a bug in Launchpad and Bugzilla, although usually in conjunction with dual-monitor setups. What it means for FG MacBuild is that this system cannot support a VGA monitor with Ubuntu installed. There is apparently no problem with Mac OSX using a VGA monitor with the adapter, nor is there a problem using an ADC monitor. This system must either be sold without an OS, or with an ADC monitor if Ubuntu is installed.

In reading various posts about this problem, a couple of possible workarounds were suggested. I have not tried the LiveCD with this setup, either. Both of these possibilities are worth pursuing.


24Jul07

Pismo video
Pismo (early G3 Powerbook) has video problems with xorg. There is an xorg.conf fix described at http://ubuntuforums.org/showthread.php?t=418301. It says, essentially, to add the line

Modeline "1024x768" 78.741 1024 1058 1154 1312 768 769 772 800 +HSync +VSync

to the Monitor section of /etc/X11/xorg.conf.

25Jul07

Dual Cpu MDD
Been workin' on a dual cpu mirror drive door G4 tower. This one has several idiosyncrasies. The video card is a Radeon 9000, and has only ADC and DVI connectors. Installation with a 17" Apple Studio Display ADC CRT works, but the xorg.conf produced is minimal, having only one screen resolution: 1280x1024. I haven't tried a DVI monitor on the other connector, but a VGA monitor on that connector using a DVI-ADC adapter does not work. dpkg-reconfigure seems to work alright, but at login time the Xserver crashes trying to setup the 'int10 module. Google turned up several similar complaints, most of which are associated with dual display setups. The sound interface was not onfigured during installation so I added snd-powermac to /etc/modules. The removeable media drive is a DVD-RW. It won't recognize a CD or DVD when one is inserted, kicks it back out, and then opens again automatically when closed. I've seen this behavior before, and I think it got solved. I'll have to see if I made a journal entry about it.

Computers 4 Kids
A man and woman from LA visited this afternoon interested in acquiring old (beige colored) Macs and looking for a place to recycle PCs. They come up to Coos Bay/North Bend abot three times a year, and talked about driving a truck up to swap PCs for old Macs. FG does not have the facilities to store old Mac computers for that long. I mentioned Nextstep Recycling in Eugene to them, as did Richard, as a possible alternative The woman's name is Marie deBello; the guy's name is Noah <something>. She left me a card but I gave it to Liane. She left another card with someone else.

26Jul07

Dual Cpu MDD
Here are some links with clues and stuff to try for the display problems. There are two separate problems: 1) getting a VGA monitor to work using the DVI-VGA adapter, and 2) getting xorg to know about more resolutions for the Studio Display 17" ADC monitor. So here's the links, awreddy...

The basic suggestions are 1) use fbdev as the driver instead of ati, producing a slightly less robust video display, or 2) add Option "NoInt10" "true" to the Device section, or 3) copy the xorg.conf file from the LiveCD.

note: The "Option"  "NoInt10"  "true" solution works.  tr 30jul07


One button mouse
Apple has always used a one button mouse. Ubuntu/Gnome 'expects' a three button mouse. Ubuntu PPC has defined the F11 and F12 keyboard keys as the 2nd and 3rd mouse buttons. The correspondence, Mac mouse/keyboard to 3 button mouse, is

  • mouse button = left-click
  • F11 = middle-click
  • F12 = right-click

On the other hand, a real three button mouse works just fine.

This correspondence is actually specified in /etc/sysctl.conf with the lines:

  • # Emulate the middle mouse button with F11 and the right with F12.
  • dev/mac_hid/mouse_button_emulation=1
  • dev/mac_hid/mouse_button2_keycode=87
  • dev/mac_hid/mouse_button3_keycode=88

where 87 and 88 are the key codes for the F11 and F12 keys. This article http://www.bytebot.net/geekdocs/ibook/fedorappc.html (and others) reports that using only the mouse_button_emulation line assigns Fn+Alt=right-click and Fn+Apple=middle-click.

31Jul07

Gnash
Gnash is the GNU opensource Flash player. Both Gnash an a mozilla plugin (and a konqueror plugin) are in the Feisty repository (maybe in backports?). It is reported to work on some video formats, and for some Youtube videos. My experiment with a vanilla gnash install and the mozilla plugin worked really badly at the youtube sight, so I'm putting of adding it to the normal PPC installation for now.

Automatix
The Automatix folks dropped support for the PPC version when Ubuntu relegated the PPC releases to the ports pile. COnsequently there is no PPC Automatix. Another extra package path, in addition to Add/Remove, must needs be devised, and the Mac new user FAQ updated accordingly. I have already removed the Automatix reference in that document.