If you are reading this, you are probably me because I doubt anyone would try to run Puppy on this embarrassment of a MacBook.
If you want to use Slacko32, don't bother; it isn't going to work.
I have a mostly running configuration.
It isn't easy.
First, let's look at what you get out of the box.
Booting from a standard CD with Apple's built-in EFI will present you with the following issues:
- The high likeliness of it hanging after GRUB for 10 minutes plus.
- No WiFi.
- No battery meter.
- No brightness control.
- Trackpad acts like a dumb mouse, as a result, you can't right-click or middle-click, and you must use the scrollbar to scroll.
- Fans are always maxed out.
- Eh, probably more.
All you need is to find efi.img on your install ISO, mount it (it is a fat32 filesystem, Puppy should just mount it automatically), and drag the efi folder to the root of the partition where you boot from.
Also make sure that you have a grub.cfg in there.
Booting is a hit or a miss. I haven't found a solution to the black screen hang yet. Just leave it for 10 minutes and it will likely have booted by then.
Or shut it off, turn it back on, and repeat, but that is just too much of a hassle because of how random it is.
All right. Now, for the first issue: WiFi.
This solution is relatively simple. The most complicated thing is actually downloading the PET.
- Go here on another computer or something with Internet access.
- Download broadcom_sta-6.30.223.271_k4.1.11_amd64-5.pet and save it to your flash drive.
- Get Puppy to boot on your MacBook.
- Install the PET.
- Open Applications > Setup > Puppy Setup.
- Click Startup.
- Go to the Services tab and hit the giant gear.
- Check what should say 30-BC-wll
- Reboot, or type in a terminal,.Done.
Code: Select all
/etc/init.d/30-BC-wl start
Now, for the trackpad.
Put the following into the new file /etc/X11/xorg.conf.d/50-synaptics.conf. I got this from a variety of sources.
Code: Select all
Section "InputDevice"
Identifier "Synaptics Touchpad"
Driver "synaptics"
Option "SendCoreEvents" "true"
Option "Device" "/dev/input/*"
Option "Protocol" "auto-dev"
# Set these to 1, 3, 2, if you like tap click
Option "TapButton1" "0"
Option "TapButton2" "0"
Option "TapButton3" "0"
# Calibration. Shouldn't be an issue.
Option "LeftEdge" "100"
Option "RightEdge" "1120"
Option "TopEdge" "50"
Option "BottomEdge" "310"
# How sensitive the touchpad is to your finger.
Option "FingerLow" "5"
Option "FingerHigh" "20"
# Tap click settings. Never used 'em.
Option "MaxTapTime" "100"
Option "MaxTapMove" "150"
Option "MaxDoubleTapTime" "180"
Option "LockedDrags" "false"
# Smaller values are larger, HorizScrollDelta is off.
# Natural scrolling direction is on.
# Set values to positive to have normal scrolling.
Option "VertScrollDelta" "-15"
Option "HorizScrollDelta" "-15"
# Cursor speed. Pretty self-explanatory.
# Trying to find a good feeling is difficult.
Option "MinSpeed" "0.8"
Option "MaxSpeed" "1.3"
Option "AccelFactor" "0.10"
# Set this to something other than 0 and fiddle
# with it to get smooth flick scrolling
Option "CoastingSpeed" "0"
# Enable two finger scroll
Option "VertTwoFingerScroll" "true"
Option "HorizTwoFingerScroll" "true"
Option "FastTaps" "true"
# Edge scrolling is for n00bs. Go away.
Option "VertEdgeScroll" "false"
Option "HorizEdgeScroll" "false"
# Palm detection. I don't know if it actually works.
Option "SHMConfig" "true"
# Noise reduction. This is how much you have to move your
# finger in order to register it as a movement.
# The default, 6, is waaaay too sensitive, and screws up right clicking.
Option "HorizHysteresis" "10"
Option "VertHysteresis" "10"
EndSection
Near the top of the file (Line 14?), find where it says
Code: Select all
# Load "synaptics" #loadsynaptics
Now, find where it says
Code: Select all
InputDevice "Keyboard0" "CoreKeyboard"
Put in the next line,
Code: Select all
InputDevice "Synaptics Touchpad" "AlwaysCore"
Horizontal scrolling is weird, I still have to figure out a good value.
Additionally, when scrolling up, it scrolls down for a second occasionally.
You can use two fingers and click to right click, and three finger click to middle click.
Natural scrolling is on, without any gliding, and tap click is off.
Eventually, I want to get mtrack working, as it is much friendlier to configure and is supposed to do wonders on the MacBook.
OK, now for battery stats.
This one was a hassle. I literally had to hack the power icon source code to get it to work.
However, oddly, it works fine on Tahr64 6.0.6 (testing build with EFI). I am looking into this.
First, download the devx libs from the SFS downloader/installer.
I have forked the powerapplet tray source here. Download the ZIP or git clone it and put it somewhere you will find it.
Open up a terminal, cd to the directory, and type
Code: Select all
./compile
cp *.svg /usr/share/pixmaps/puppy/
./powerapplet_tray
Hit Ctrl+C (yes, control, not cmd), ignore the segfault, and type
Code: Select all
cp powerapplet_tray /usr/bin/
Code: Select all
chmod 755 /usr/bin/xbatalarm
Code: Select all
# Copyright (C) QuaLaPinna team (Gius & Whitesnow, repository: http://qualapinna.dyndns.org/repo, blog: http://qualapinna.dyndns.org)
# April 2014, license: GPL3 and any later versions
# Credits: Puppy Linux forum user josejp2424 for input and collaboration in NLS development (see es_AR localized file).
# Xbatalarm version 2.0
Now, reboot and hopefully find your battery icon. TEST XBATALARM BEFORE RELYING ON IT.
Brightness control
This one is very annoying.
Basically, we have to install a bunch of debs from Ubuntu's repos.
Download and install (open the file and it should work):
Also download, from the SFS manager, the 32-bit compatibility libs.
Now, in /etc/pommed.conf, go to line 24 and change the 6 to a 13. This stops your LCD backlight from shutting off completely when you unplug. Do the same for line 55, although I don't think it matters.
Fans
First, in the Modules section of Startup, go to Add module, and add applesmc and coretemp to the list if you find them.
You'll need to have the devx libs again.
Now, download or clone mbpfan to a place you'll find.
Type in the terminal,
Code: Select all
make
make install
Code: Select all
modprobe coretemp
modprobe applesmc
mbpfan
If everything works, in our favorite Startup manager, go to Startup Apps, hit the big button, Add to startup, type mbpfan in the empty field, hit the next big button, done.
Unfortunately, I haven't gotten the black screen on boot, my worst enemy, to stop happening (although it seems related to unplugging and reinserting the boot media) or the suspend to work (Don't close the lid. It seems to shut it off.)