Lately with all these spying revelations I thought it would be a good idea to try a more free laptop.
So I installed Libreboot (by external SOIC 16 test clip and SPI programmer on the A20) and GuixSD on a Lenovo X200, replaced the PCI Express Wifi card by Atheros AR5B95 9285G 802.11 b/g/n and removed the WWAN card.
The following lists my experience with it. "TODO" marks parts I didn't do yet but want to do in the next round.
There is an GuixSD image file which you can put on an USB stick and boot from it.
There is no installer. In 2015. That is bad.
For internet connectivity, you need to dial up or otherwise connect to the network.
However,
Extremely annoying problem: With substitutes connection breaks at about 121 MiB (tried 5 times). After it does, it starts at the beginning. I just don't think it's a good idea to not resume a 4 GiB package and instead start over from the beginning.
Problem: --no-substitutes texlive-20140525-texmf.tar.xz wasten 2.3 GB of bandwidth and then told me the hashes don't match.
I think that was because the disk was full.
guix package -i guile-cairo alsa-utils mpv[has ruby as dependency and who knows what else, mesa, texlive what the actual fuck...] TODO guix package -i pidgin : package not found! guix package -i icecat guix package -i python-3 guix package -i gfortran guix package -i python-numpy uses deprecated API guix package -i python-scipy uses much Fortran guix package -i openssh guix package -i imagemagick guix package -i octave guix package -i wpa-supplicant update env vars K: guix package -i postgresql System error OK sshfs-fuse guix package -i curlftpfs ?? guix package -i scilab ?? guix package -i clang OK lirc guix package -i pypy ?? OK icedtea7 (java) guix package -i mono (corefx, coreclr, roslyn) OK libreoffice OK sane-backends OK ant OK automake OK autoconf OK bison OK cdparanoia OK claws-mail :-) immer noch OK colordiff coq cryptsetup OK ddrescue OK duplicity backup OK rsync !! OK emacs OK evince OK fdupes OK fetchmail OK ffmpeg OK file OK flac OK flashrom OK flex OK fluidsynth OK gcc OK gdb gdc DNE OK geeqie geiser geoclue OK ghc OK ghostscript-with-x OK gimp OK git OK glade (gnome-themes-standard) OK gnupg OK gpgme OK graphviz OK gst-plugins-ugly guile-xcb OK gv gmessage (like zenity) missing haskell-mode OK hdparm httpd [i2c-tools] OK indent OK inkscape OK inotify-tools OK iotop OK iw config utility OK lame OK llvm OK ltrace OK lsof OK luajit missing lxterminal lxtask OK make OK mc mit-krb5 mp3info mpc OK mu !!! not [nginx] OK ocrad OK ocaml opus PAN is missing OK parallel parted pcb pem petsc (partial diffeq) OK pingus !!!! ploticus OK powertop OK qemu OK qpdf r OK racket rc OK rdesktop rdup OK recode XXX rhythmbox ripperx OK rsync OK rtorrent rubber OK samba OK sbcl OK screen OK sdl OK setxkbmap OK smalltalk OK smartmontools OK sqlite OK strace OK tcpdump terminology !! not yet thunar-volman timidity++ OK tk OK tmux OK transmission OK unionfs-fuse units OK unrtf OK unzip OK vala OK valgrind XXX vlc OK vorbis-tools wakelan OK wayland wv OK xbacklight OK xev OK xfce4-battery-plugin OK xfce4-clipman-plugin OK xlsatoms OK xlsclients xnee xorriso OK xosd xournal xpdf OK xprop OK xrandr OK xrdb OK xsetroot OK xterm OK xwininfo OK yasm OK youtube-dl OK zathura (commandline PDF viewer) OK zathura-djvu OK zathura-pdf-poppler OK zathura-ps OK zathura-cb OK zip TODO setup hibernation TODO setup suspend & resume gnuplot missing lua support. use deco service manager weird stuff: Dolphin Wii emu pyside support missing. fluxbox automatic: gstreamer gst-plugins-base gdk-pixbuf librsvg xawtv qpdf xcb* gtk+-2 matplotlib cups Chemistry: ALEKS.com leptonica ?! wayland ?! useful: guix system reconfigure Problems: laptop doesn't standby. block packages: mysql qt cd burning: brasero How does installation of fonts work? guix package -i font-liberation font-dejavu font-bitstream-vera font-alias font-adobe-source-han-sans Commits 776463b and c28606b backport the Guile fix to (guix http-client), which is what 'guix substitute-binary' uses. You can check that it solves the initial problem you reported by running the daemon with the new substitute code: ./pre-inst-env guix-daemon --build-users-group=guixbuild Thanks, Ludo'. missing command-missing in bash that installs stuff. missing ldd. missing gdc. missing nim. missing rust.
TODO stellarium TODO blender TODO snes9x TODO pcsx2 TODO xdpyinfo TODO nvramtool TODO linux-libre-headers https://lists.gnu.org/archive/html/bug-guix/2013-02/msg00032.html TODO binutils TODO iasl (Intel ACPI Source Language) cc -> gcc flex dmidecode libpciaccess pcutils alsa-utils hexchat lm-sensors gnuplot
Libreboot/Coreboot ROM image by default overwrites NVRAM every time you boot. This makes it impossible to change BIOS settings.
The setting fn_ctrl_swap can be changed by finding the file cmos.default in the ROM image using cdfstool.
Even better, if the file cmos.default is missing, it won't overwrite NVRAM on boot.
So use: cbfstool x200_8mb_ukqwerty_vesafb.rom remove -n cmos.default
libelf missing "de" target in "po". Doesn't build.
run TODO_xkb, make scratchpost-mount appear, make "info" folder appear, .netrc.