Entering a musl Void

I’m installing Void linux on the Raspberry Pi. The basic directions are here:

https://wiki.voidlinux.eu/Raspberry_Pi

A good part of the top bit has you using the parted command ‘long hand’. I just used gparted under Debian and that is MUCH easier (the g standing for ‘graphical’…). I’m doing a ‘root tarball’ install as that lets me use all of my 32 GB mini-SD card instead of just 2 GB that the fixed image is built to use. (Does anyone still sell 2 GB mini-SD cards?…)

So delete the default 32 GB FAT32 partition. Put back a 1 GB Fat32 partition (that I labeled “Void_Fat32”. Yes, it is bigger than their recommended 256 MB one, but I just no longer see much reason to make a partition smaller than a GB… I also added a 1 GB swap partition (see ‘linux swap’ under the file systems type drop down menu in gparted) labeled Void_swap; and then the rest went into a roughly 28 GB ext4 partition, labeled with Void_ext4. The labels make it nice when you do a “file -s /dev/whatever” as the label then tells you the expected use. It also makes clear in the /etc/fstab what’s what when you mount by label. Oh, and once the partitions are made, I marked the fat32 one as bootable (right click, manage flags, choose ‘boot’ checkbox).

Sidebar on a build tool Debian:

Once you have ANY Linux running with gparted on it, a whole lot of painful command line stuff just goes away. Even if it is just a Knoppix USB stick or a NOOBS or BerryBoot Debian chip. Since your first ‘out the gate’ learning of the Pi ought to be on their preferred system, you ought to have a Raspbian chip… just make sure gparted is there (they hide it under ‘preferences’ for no good reason I can see… it is a systems tool) or do an “apt-get install gparted” if it isn’t there.

So, moving back to Void…

They have you download a compressed tarball from here:

https://repo.voidlinux.eu/live/current/

Index of /live/current/

../
sha256sums.txt                                     20-Apr-2016 16:09                3411
sha256sums.txt.asc                                 20-Apr-2016 16:11                 819
void-beaglebone-musl-rootfs-20160420.tar.xz        20-Apr-2016 14:32            65567652
void-beaglebone-rootfs-20160420.tar.xz             20-Apr-2016 14:23            73567852
void-cubieboard2-musl-rootfs-20160420.tar.xz       20-Apr-2016 14:33            60434032
void-cubieboard2-rootfs-20160420.tar.xz            20-Apr-2016 14:24            68624664
void-i686-rootfs-20160420.tar.xz                   20-Apr-2016 14:31            31228548
void-live-i686-20160420-cinnamon.iso               20-Apr-2016 15:16           541065216
void-live-i686-20160420-enlightenment.iso          20-Apr-2016 15:05           508559360
void-live-i686-20160420-lxde.iso                   20-Apr-2016 15:18           436207616
void-live-i686-20160420-lxqt.iso                   20-Apr-2016 15:21           485490688
void-live-i686-20160420-mate.iso                   20-Apr-2016 15:12           638582784
void-live-i686-20160420-xfce.iso                   20-Apr-2016 15:08           527433728
void-live-i686-20160420.iso                        20-Apr-2016 15:01           253755392
void-live-x86_64-20160420-cinnamon.iso             20-Apr-2016 14:52           540016640
void-live-x86_64-20160420-enlightenment.iso        20-Apr-2016 14:39           508559360
void-live-x86_64-20160420-lxde.iso                 20-Apr-2016 14:55           436207616
void-live-x86_64-20160420-lxqt.iso                 20-Apr-2016 14:59           483393536
void-live-x86_64-20160420-mate.iso                 20-Apr-2016 14:48           638582784
void-live-x86_64-20160420-xfce.iso                 20-Apr-2016 14:43           527433728
void-live-x86_64-20160420.iso                      20-Apr-2016 14:36           258998272
void-live-x86_64-musl-20160420-enlightenment.iso   20-Apr-2016 14:44           493879296
void-live-x86_64-musl-20160420-lxde.iso            20-Apr-2016 15:01           420478976
void-live-x86_64-musl-20160420-lxqt.iso            20-Apr-2016 15:04           468713472
void-live-x86_64-musl-20160420-mate.iso            20-Apr-2016 14:54           622854144
void-live-x86_64-musl-20160420-xfce.iso            20-Apr-2016 14:49           511705088
void-live-x86_64-musl-20160420.iso                 20-Apr-2016 14:40           245366784
void-rpi-musl-rootfs-20160420.tar.xz               20-Apr-2016 14:34            47320500
void-rpi-rootfs-20160420.tar.xz                    20-Apr-2016 14:26            55218888
void-rpi2-musl-rootfs-20160420.tar.xz              20-Apr-2016 14:36            47758060
void-rpi2-rootfs-20160420.tar.xz                   20-Apr-2016 14:27            55651216
void-usbarmory-musl-rootfs-20160420.tar.xz         20-Apr-2016 14:37            28332860
void-usbarmory-rootfs-20160420.tar.xz              20-Apr-2016 14:29            36256228
void-x86_64-musl-rootfs-20160420.tar.xz            20-Apr-2016 14:38            22775200
void-x86_64-rootfs-20160420.tar.xz                 20-Apr-2016 14:30            31378964
xtraeme.asc                                        30-Apr-2015 11:07               11038

Note that Waaayyy down at the bottom are the R.Pi options. One set for the v6 Pi B and another for the v7 Pi-M2 (and, I’m assuming, Pi-M3… we’ll find out later if it works there too. Yes, I could read something somewhere, but where’s the fun in that? Besides, I’ll run it on the M2 if I must so all the work stays the same and later stuffing a chip in the M3 and trying a boot will take less time than looking and reading…)

I chose the rpi2-musl one as I’m interested in having smaller faster and somewhat unexpected standard libraries as Yet Another Protection against script kiddies. I know there are some things that don’t yet work on musl, but if that is a problem, I’ll swap to the glibc version on a future install / chip.

Then they have you mount the target chip. I made a directory /Void_Root and mounted it there, and then mounted the Fat32 partition as /Void_Root/boot. ( I did it ‘long hand’. On my box the chip was /dev/sdc, so I did a “mount /dev/sdc3 /Void_Root” and a “mount /dev/sdc1 /Void_Root/boot”. Your partition numbers may / will vary…

At this point I tried the tar command they list:

tar xvfJp void-rpi-rootfs-latest.tar.xz -C rootfs

And promptly got an error message that this wasn’t a zip file of some type… Seems I had typed:

tar xvfjp void-rpi-rootfs-latest.tar.xz -C rootfs

See the dramatic obvious difference? Yeah, right… It’s a capital vs lower case J. One of my pet peeves is folks using variation in caps as significant in Linux flags. Just not thinking about folks screen resolution and vision…

At any rate, I had, by then, unpacked the tarball from the .xz file using unxz

root@R_Pi_DebJ_DD:/Void_Root# ls -l ~chiefio/Downloads/void*
-rw-r--r-- 1 chiefio  500 165150720 Nov 25 10:55 /Pink/ext/home/chiefio/Downloads/void-rpi2-musl-rootfs-20160420.tar
-rw-r--r-- 1 chiefio  500 202424320 Nov 25 10:56 /Pink/ext/home/chiefio/Downloads/void-rpi2-rootfs-20160420.tar
-rw-r--r-- 1 root    root  55651216 Nov 25 11:01 /Pink/ext/home/chiefio/Downloads/void_saved_rpi2-rootfs-20160420.tar.xz

(note the about 3 to 4 times larger .tar compared to .xz for the non-musl glibc saved images)

and just finished the tar extract with

tar xvfp ~chiefio/Downloads/void-rpi2-musl-rootfs-20160420.tar  

Note that I’m actually picking up the tarball from an extract in my home directory “Downloads” directory, while I’m (as root) located in the target /Void_Root directory:

root@R_Pi_DebJ_DD:/Void_Root# pwd
/Void_Root

Everything unpacks very fast and doesn’t take much space at all:

/dev/sdc3       28480652   194276  26816580   1% /Void_Root
/dev/sdc1        1046516    16308   1030208   2% /Void_Root/boot

I would emphasize this line from their directions:

Do not forget to unpack the rootfs as root and with the -p flag to set appropiate permissions.

First time through I forgot to put the ‘-p’ on the command, so got to delete the files and redo it. Yeah, all of about 1 minute lost… but it could have been a pernicious permissions error if I’d not caught it.

At this point, it is time to boot the chip.

Umount the SD card filesystems from target rootfs directory.

You can tweak kernel boot cmdline arguments in the rootfs/boot/cmdline.txt file.

Insert the SD card and test the Raspberry PI boots correctly, the root password is voidlinux.

X11

At the very least this is the list of required packages:

$ xbps-install -Sy xorg-minimal xf86-video-fbturbo

To install all X client applications:

$ xbps-install -Sy xorg-apps

To install all X font packages:

$ xbps-install -Sy xorg-fonts

As final step make sure the user running X is part of the groups audio and video.

And it looks like there is a manual X configuration step (Oh Joy… NOT!). That means I have to shut down THIS Pi image that I’m using to make this posting… Which means no blog stuff for a little bit.

I’m going to put this up as a 1/2 done posting, just so it’s “out there”, then come back with more notes if if fails, or from it if I get X running and a browser up. Yes, “live as it happens coverage from The Void!”… ;-)

Back in a bit, one way or another…

Well, that was quick…

In both the M2 and M3 it gives a kernel panic, unable to mount root file system on unknown block or some such.

My suspicion is that it is essential to do these bits:

The /boot partition must also be added to /etc/fstab:

# echo ‘/dev/mmcblk0p1 /boot vfat defaults 0 0’ >> rootfs/etc/fstab

Umount the SD card filesystems from target rootfs directory.

You can tweak kernel boot cmdline arguments in the rootfs/boot/cmdline.txt file.

Insert the SD card and test the Raspberry PI boots correctly, the root password is voidlinux.

So I’m back in Debian doing that. Then I’ll try the boot again. But first, I think I’ll take a moment to think over a cuppa’… clearly I’m running a bit to ‘hot and fast’ and need a bit more ‘follow the directions and stay inside the lines’…

After It Booted and Ran:

Well this sucks.

I had to change /boot/cmdline.txt:

root=/dev/mmcblk0p3

It was p2, but since I added a swap partition at space 2, the actual file system it wants is at p3. OK, not hard.

Next, I had to add in /etc/fstab:

/dev/mmcblk0p1 /boot vfat defaults 0 0

just like the directions said to do (the Fat32 partition staying the first one).

Then it booted Just Fine.

X installed. Took about 10 minutes on a fast download wire (much of it spent unpacking fonts). So far, no worries.

It is small and Damn Fast, using only 13 MB of memory without X running.

Here’s the sucky part:

Doing a ‘startx’, it fails as twm can’t be found (twm being it would seem the default window manager). No Worries, I’ll just install it… Except it can’t find that package twm… Or lxde…

Now at this point my guess is that someone figured musl builds would really only be run by folks making routers and other headless things so X windows is very low priority ‘get to it some day’ stuff. The only alternative that’s likely is that there is some OTHER window manager it expects to use and I don’t know what it is or where it is hiding.

In any case, I’m not interested in spending the rest of today banking my head onto an X-Wall-Of-Stupid so I’m going to abandon the Void musl build. I now get to start over but trying the glibc build. NOT what I want to run, but we’ll see if it can make windows go… and give me a gui. IFF it does, then it is just a package build / debug to get windows onto musl ( where “just” can be measured in weeks to months to…) or get a pointer to where the working musl windows manager lives. If it doesn’t, then I’m finished with Void as this is way more complexity than the Average Pi User will accept. (My goal being an easy to set up and secure Pi Image for ‘regular folks’, and IF I have to start doing the whole Sr. Sys Prog process, then I’d rather just “roll my own from scratch” pre-build and have it fixed once, by me, with a scripted build anyone can run.)

With that update, I’m off to redo all this using the glibc version. I’ll not need to reformat the card (just remove the old bits) and I already know what to edit in cmdline.txt and /etc/fstab, so it ought to go quicker this time.

The glibc Void

Well I got it to boot on the first try (had /etc/fstab and config.txt right) and the X install done in 10 minutes (about 100 MB) and then even did a

xbps-install -Sy xterm twm

and then a ‘startx’ got me a twm session with a couple of xterm windows. Nice.

However….

Attempting to install lxde had me doing a search to find out WTF it was named

xbps-quesry lxde

and it had a pseudo-package group name of something like “lxde-0.5.1_13” or whatever the release was.

Installed that, or tried to. It barfed on some libraries it wanted and couldn’t find.

My conclusion at this point is that they haven’t got all the parts ported to the Pi / ARM chip yet. Either that, or it is a load of “Go Fish!” to find where things are hidden.

Being uninterested in either of those two, I’m “moving on”. Yet Another PC Focused Port, IMHO. Get things working on Intel x86 and cross compile and move on. What? Configure? Test? Um… Make a finished easy to install package? Um….

I might, someday, come back and try their pre-packaged 2 GB chip versions, but if the tarball is yucky, I doubt the chip one will work better with the libraries / archives / repositories… Since MY goal is not “Debug and finish Void” but “Get a robust easy to configure and USE in a graphical way SECURE OS preferably minus SystemD”, I’m going to “move on” to Slackware.

Yes, I got it running before and stopped at “make X go” (rather like I did with BSD), and yes it is fair to ask “What makes it any different from Void in not having X?”. The difference is a zillion users of Slackware (and BSD) and the odds are very very high the software is ported and works and it’s just a matter of ME learning the secret sauce. For a “young port” like Void, the odds are much higher I’m searching for the Holy Grail and Tilting At Windmills. I.e. wasting my time.

In Conclusion

Void may be the greatest thing since sliced bread and canned beer, but if so, it isn’t showing in the Raspberry Pi testing I’ve done. “Someday” I’ll come back and try it again, but for now, my priority is to find a better “Daily Driver” base OS devoid of SystemD. I think that will be found fastest with Slackware or BSD.

I’ll come back to Void Linux “someday”, but not soon. It just feels a bit too young right now (especially on the Pi – so I’m likely to try it ‘again’ with lxde on the Intel based laptop before anything more on the Pi.)

With that, I’m going back to my Slackware chip and see if I can get X / LXDE (or similar) running nicely on it. Likely a few days before I post anything about that effort.

Subscribe to feed

About E.M.Smith

A technical managerial sort interested in things from Stonehenge to computer science. My present "hot buttons' are the mythology of Climate Change and ancient metrology; but things change...
This entry was posted in Tech Bits and tagged , , , . Bookmark the permalink.

28 Responses to Entering a musl Void

  1. E.M.Smith says:

    Well, I got Slackware to the point that I’m networked, have a windows system (xfce, not my favorite but it works) and a browser (kongqueror also not my favorite) all working. In fact, I’m posting this from it!

    Memory used is a tad under 700 MB, with 250 MB free (the rest, one presumes, to the GPU)

    Typing this, Kongqueror is using all of 10 to 15% of CPU and I’m at a load average of 0.39 with 93 to 90% idle. So efficient on resources. Zero typeahead (then again, I don’t have spell checking turned on yet… I assume it can do spell checking… )

    So still some things to do. Make a “build script”. Do a fresh install (not just to prove the build works, but because this one is prior to the Dirty COW kernel fix, I think…) and get Firefox or Iceweasel or similar installed, along with xfce (that, IIRC, is in the user supplied group so I need to change the config of the package build…) Then it will be pretty much everything I want (except for musl libraries, but they were being a pain anyway… what with missing a few things.)

    OK, as of now it looks like Slackware will be my default non-SystemD replacer. Things I need work, there’s a large library of software available, and a large community porting / debugging things. It wasn’t too painful to make it go, and it’s fairly efficient with resources. I’ll need to remember how to use rc.d as the init system (it’s been a few years… still ‘in there’ and I’ve done a couple of things, but it isn’t what the fingers try to type first…).

    All in all, “reasonable”.

    Just did a spell check. It’s ‘batch mode” instead of continuous while you type. Smart, that, as it doesn’t ever bog typing…

    OK, so some “moving in and settling in”, but unless I just can’t get the LXDE / FIrefox or IceWeasel bits working, I’m calling it “home”. At least for now.

    Oh, I did have to go into

    # /etc/rc.d/rc.inet1.conf

    and add the IP number and netmask for my eth0 interface. Also I added some to the /etc/resolv.conf file… It was a bit of a pill about DNS resolving and ethernet at boot.

  2. Not the best place for this, but I hope you don’t mind…

    Planning on getting my dad and brother-in-law Pi’s for Christmas. They’re both somewhat technical at a high level, but with no experience in Linux or C. Dad runs a Weather Underground station on XP (which he has to reboot daily). The in law is in desperate need of a locally managed DNS.

    Any ideas as to “Idiot’s Guides”?

  3. E.M.Smith says:

    Regis:

    A web search on “Pi Idiots Guide” turned up several. One, though, was a phishing site that put up a “you have a bad file / infected machine click here or phone us” panel that was bogus. It would not go away (back button or x in the close box corner), so I opened a terminal window and did a ‘kill -hup {process-id}’ on my browser.

    OK, I’m going to try to recreate the list I had in the comment, minus the Evil Site, but “we’ll see”. The “bad site” claimed to have a free download of the following book, but that took you to a ‘tiny url’ encoder (that I usually don’t click for exactly this reason…) that took me to another page that had a ‘download here’ button that gave me the “your computer has a bad block yada yada” phish. I think the book is fine (since it is being sold on Amazon, link below) but the ‘free download’ is bogus.

    Folks usually start at the Pi Forums:

    https://www.raspberrypi.org/forums/

    Has all sorts of good stuff and it’s free.

    There’s also a hardware guide:

    https://www.raspberrypi.org/learning/hardware-guide/

    This Gizmodo article looks good:

    http://fieldguide.gizmodo.com/the-beginners-guide-to-the-raspberry-pi-1782608097

    and it has more links in it…

    This is a pdf by one of the makers of the Pi, more oriented toward projects and interesting gizmos to make with the Pi than ‘variety OS stuff’ that I do:

    Click to access RPiUsersGuide.pdf

    This Tech Republic article has a good overview, then lots of links:

    http://www.techrepublic.com/article/raspberry-pi-the-smart-persons-guide/

    Looks like the Raspberry Pi store has SWAG including a book:

    http://swag.raspberrypi.org/products/raspberry-pi-user-guide-2nd-edition

    but also a lot of ‘help guides’ online:

    https://www.raspberrypi.org/help/

    And, as an operating system junkie, I like this guide to the variety of OSs available:

    http://www.networkworld.com/article/2953874/computers/ultimate-guide-to-raspberry-pi-operating-systems-part-1.html

    Finaly, productive search terms are “pi forum”, “Raspberry Pi guide”, and “Idiots Pi” though you get some ‘odd bits’ of other pi things in that last one.

    Hope that all helps!

    (BTW, no worries on the “bad link” as I was running from a fresh install of Slackware, and it was talking like PC Windows error messages, I knew the whole thing was crap and didn’t click the “only way to cancel” button that likely launches the attack. Knowing my machine was clean and knowing it was unlikely to be attackable by a MS oriented phish, it was ‘the usual’ to just kill the application and relaunch (careful to un-click the phish page in the list of pages to re-open on re-start. It’s just Standard Behaviour for all things internet browsing. It does make for a good example of how to handle that kind of thing. BTW, it went out of its way to say “Don’t shut down your computer!”… which to me said: “If you are on a PC without a terminal window where you can kill just one process, immediately shutdown your machine!”… ;-)

  4. I like software that makes efficient use of resources. However I am a hardware person so all this talk about different “distros” makes me dizzy.

    I am still plodding along with Linux Mint……and loving it! My HP2000 laptop has four processors and it is rare for any of them to be showing more than 20% loading on my “System Monitor”.

  5. E.M.Smith says:

    Distros is just short for distributions. Roughly like a car model and options.

    So variations between Windows. MacOS, IBM Mainframe OS, Unix (bsd), and Linux is like a list of trains, airplanes, ships, trucks & cars.

    Trucks come in a couple of brands (Peterbuilt, Freightliner,…) like BSD comes in FreeBSD and Net BSD, etc…

    Linux comes in brands, too. Red Hat is like GM (everywhere and bland with occasional crazy ideas, but generally the engine works) while Debian is like Ford from a couple of years back (when they accumulated Jaguar and Volvo and more). Slackware is more like Subaru, the engine and design hasn’t really changed in 20 years and it just keeps on running.

    Now you can get a Ford that has an automatic tranny or manual (though rare), with different color paint and upscale interior (“skins” in GUI terms, and different window managers like Mint vs LXDE vs KDE vs…) or run through a custom shop (Ubuntu is a custom interior tuned Debian, skinned in Leather seats it’s Mate Ubuntu).

    So in those terms, a “distro” of linux is just saying in car terms: Make, Model, option packages, color and interior, tires and rims, engine package and custom addons by the dealer.

    Debian, Ubuntu custom shop, Mate interior and upholstery, then if you got it developer build tools, or OpenOffice for deskjobs, or …

    Does that help?

    So for me, since Fedora and Debian (and through Debian, Ubuntu) have gone to SystemD, and I don’t like that, I’m walking away from GM and Ford and checking out other makers. Why? Because I have the moral equivalent of a 35 year collection of SAE Tools and water cooled Diesel engine experience and they have said they are going all Metric and an electric engine running on lithium batteries that can only be fixed by the factory… it makes double the horsepower per pound and turns 20,000 rpm, but sometimes locks up if the operator does something unexpected, and then you wait for the factory truck to bring you a new battery pack…

    If you never work on your car and are happy with a rental car and tow truck when your car breaks, you likely won’t notice the change… I change my own filters and fluids and brake pads, plus Muldoon the car in from the center desert when it has a problem, so I do…

    (The recent move to no spare tire drives me nuts. I’ve needed 2 spares TWICE and a single spare “200 miles from nowhere” a half dozen times. A spare good for 100 miles at 50 MPH is slow poison and no spare is suicidal.)

    Now, given all that, this is why I’m looking for the iron block Diesel pickup of Linux or BSD and walking away from the Tesla electric of systemd… plus I want it in blue with nylon seats that never wear out, not red with sensitive leather ;-)

    Hopefully mixing in a metaphor doesn’t confound more than explain…

  6. p.g.sharrow says:

    Meanwhile, we are waiting for you to stop fiddling with the radio dials while explaining the philosophies of the various stations. ;-)
    We are just looking for a daily driver that we can commit to for the rest of our lives or 20 years, which ever comes first.
    Soon I expect to “Donate” and or buy a set/library of chips and learn to manage A system, after you have willowed out all the “don’t waste your time” stuff. You are the Expert I/we need the tool, Smithy, design and forge it..pg

  7. p.g.sharrow says:

    @EMSmith; GOD has been very kind to us this year. Hope to have the opportunity to visit with you after the first of the coming year…pg

  8. E.M.Smith says:

    @P.G.:

    For a “just use it” chip, just go with Debian / Raspbian. I’m going to be using one of them for some things for a very long time. Why? It is more “hand holding” and “everything is there”.

    In addition to that, I’m going to be “playing with” a variety of chips / OS types, each for a specific use. Why again? Because each set of tasks is best served by a specialized too. For example, the Alpine Linux running on my Pi Model B+ is small, light, fast, network optimized, and has what you want from a router or similar appliance; yet it also LACKS things you would want in a desktop.

    Why not just put everything on ONE OS? Because the goals are mutually exclusive. For a router, “when in doubt, yank it out” gives the most security. You want to reduce the attack surface as much as possible. No “GUI” no web browsers no desktop. (But a fast network IP stack and default firewall rules to make a Swiss Guard squeak…) While for a desktop you want a ‘good enough IP stack’ that doesn’t get in the way of the user desktop drawing pictures, and you want a half dozen browsers available (since folks tastes vary) and and and…

    Now, my specific picky list includes high on security and privacy. Far higher than most folks mostly due to years of being the Top I.T. Guy with the Keys To The City and under constant attack by folks wanting to get them. I like a good GUI, but I’m not wedded to any particulars, and I’m also interested in technical tools (build chain et. al.) Very little of that applies to the average person sitting at home wanting to watch a YouTube Video… (So far, getting YouTube to work with good sound on the Pi has been a PITA…)

    Because of my particular bent, I’m not keen on SystemD (as it has been shown multiple times now to be subject to lock-up or lock-out with minor bugs and it puts a large attack surface where I can’t see it or prune it…) and that is sorely crimping my choices. I’d rather use a Fedora or Debian “upstream” as they are both full featured and fairly robust, but they have drunk the SystemD Cool-Aid now… Similarly Arch has lots of tech gizmos and is smaller and faster, but has 1/2 drunk the Cool-Aid in that they run SystemD but with some bits of their OS not yet dependent on it… but that will change with time. The pattern that is showing up is that the more “User Oriented and Friendly” releases, like Fedora and Debian, are embracing SystemD, and the more hard core tech releases (that are often used in router and appliance builds) have not, or are letting you choose (Gentoo lets you choose, for now…)

    All of this means that I’m being pushed into using a “Tech oriented, casual user hostile” release as my build base. That dramatically increases the work needed to make it user friendly…and it reduces the user oriented options that are readily available ‘out of the box’. This is likely to get worse as apps projects, like, say, Firefox, embrace SystemD in their core code and deprecate any versions that don’t depend on it. This is the fundamental schism forming in All Things *Nix caused by forcing SystemD down people’s throats.

    So if you want a “Works well most of the time, OK security, lots of nice graphical bits and easy to install”, go where most of the people are going and run Raspbian. It will have everything available to install and it will be easy for a novice to install and configure (much of it ‘polished’ for Noobs to easily get it installed). I will be recommending that as the starting point for everyone for getting experience with the Pi and with Linux. (Nobody starts out driving an Indy car… they start with a tame family car and automatic transmission – these days at least). Heck, I’M going to be using Debian / Raspbian chips for some things for the foreseeable future for anything that isn’t working right / already installed on my tech monster Daily Driver. It’s trivial to swap chips and boot. Maybe 1 minute, total. Given 1/2 day to find and port “obscure program Foo” or a 1 minute chip swap, much of the time I’m going to swap chips.

    So first takeaway: Don’t ever expect me to have My One True Love Distribution and never run others. I’ll be having a half dozen hanging around forever. Each better at something, even if it is just challenging my technical level with a “What the f….” on where they stuck the control knobs now… or what cool eye candy I don’t want has to be removed.

    Second takeaway: I drink broadly from the technical river. This is both to keep my skilz up and because I just find it fun. I’ll be doing a lot of things that are just not relevant to the home user. Like setting up distcc and ccache for faster system builds. Few folks are likely to need to completely recompile their system from source code, and fewer still will want to sink a week into building a distributed Build Monster on 4 computers to cut that build down from 4 days to 1… A lot of what I want, need, and do will not apply to everyone else. (On my ‘maybe soon, maybe not’ list is to build just that system. First on 3 Pi boards, so 12 cores, then adding in the laptop on a USB based Linux release and doing cross compiles. The big challenge there is having mixed native and cross complied code since all release levels of the tool chain must match… Why? It would make rebuilding a BSD system from scratch MUCH faster…)

    Third takeaway: I have novelty seeking behaviour. This means I’m going to try every distro out there at some point in time. That doesn’t mean I’m not using one much more often than another, or that I’ve moved my luggage into that home / closet. It means I’ve taken a weekend to go walkabout and explore that bit of the woods. I’ll be doing this as long as there are new distros and new releases of old distros (though as the experience base builds up, some need much less frequent visits… Like Ubuntu that is a polished Debian. Much better for the Average Joe, but they build it fatter (compile options to waste memory for imagined speed) and I’m happy to NOT have their idea of what is best for me stuck in between me and basic Debian. I now rarely boot Ubuntu, as I’m likely to be using Debian instead. Basically, Ubuntu isn’t very novel compared to Debian and what is novel isn’t “my style”.

    Final point: NONE of that means I’m abandoning any other distro or that I think the latest flavor du jour is My One True Love. It is like renting a Buick while on a weekend trip, but when you get home, happy to see your 4 x 4 Jeep again.

    So, what’s my Jeep today? That would be Debian. I resent the SystemD in it, but it works. The attacks are theoretical so far, and the lock-up / failures are a PITA from a systems operator with 1000 users on the box POV, but not from a “one user Pi” POV. (How many times have you sent an empty message to the message handler directly with hand crafted code?…) It is easy to install, runs well, and nearly complete “out of the box” with only a minor added build script needed to “make it go”. So: Don’t Wait. Install a Debian chip now. Use it. Get comfortable in it. It is FINE for 90%+ of everything everyone will do. It will build your skill set while you are at it, and you can start the migration to a tighter world with things like putting your home directory on a USB stick outside the Pi and separate from the SD card, putting your data archive on a large USB disk (on a USB powered Hub) that isn’t always attached. Using encryption where needed or desired, etc. etc. There’s a year’s worth of Things To Learn that directly port to any other distribution and such time is not wasted. 99%+ of all things Linux are the same across all distributions. (Maybe 90% now with SystemD boxes… but that’s just specific Systems Admin stuff).

    And the Weekend Wonder? At the moment, that test drive is Slackware. I’ve not figured out how to install LXDE yet (my preferred desktop, being small light and complete) but XCFE is doing OK (a bit more limited, but workable, and very small). I’ve not found how to get (can you get? what one to get?) a Firefox (or derivative) browser on it. Konqueror is OK, but has a lot of crap in it I don’t need (WHY make a browser your ‘file manager’ too? Not the Unix Way at all…). Is it a waste of time to fool around with it? Nope. It expands my tech skills and it gets me exposed to other ways of doing things and other choices, that leads to better informed decisions. My assessment (with all of 2 days of active use…) is that it is a perfectly acceptable system but with a very manual / cranky build process.

    So now I’ve got a choice: Non-systemD system with MOST stuff I want and all of what I need in it, or SystemD system (Debian) with everything I need in it, but not everything I want (systemD gone…) and an easy build system, or continue to “Go Fish!”.

    My answer as of now is “Yes”.

    So two chips and swapping… An $8 cost to let me continue to work Just Fine whatever I need (Debian) while I build out the alternative and use it for 90% of daily postings and such.

    As of now, I’ve eliminated a long list of potential ‘upstream’ providers as my ‘base’ for my personal build. Debian (and through it Ubuntu), Fedora / Red Hat (and all the derivatives like CentOS), Arch (now that they have gone all SystemD on me – though it is a nice fast efficient system), Gentoo (that has a great build system so complicated you can do anything with it, and so obscure you can’t get anything done without a month or 3 of study… but maybe someday…), Alpine (great for routers, but busybox just isn’t up to being a Daily Driver as it is missing some things I use a LOT and the real *nix tools are something I need) but I am committing to it for my ‘router like appliances’ for the same reasons. Small attack surface, network oriented build… etc. etc.

    What’s left?

    LFS, BSD, Slackware, {unknown}.

    The [unknown} is in there just for the possibility that some new release might burst on the scene with everything I want (’cause some other goat was doing the same thing I’m going… and finished first). LFS is the ultimate fall back. Grab all the parts and build it by hand. LOTS of personal work, LOTS of compile time (based on the BSD numbers, about 4 days); but you can make exactly what you want. I hope to not “go there”.

    So BSD vs Slackware… I’m presently doing a test drive of Slackware. I like the init system (it is BSD like with rc.d scripts, no SystemD and not even SystemV Init… but it lets SystemV init scripts run if needed). Yet the “build system” is not very automated and the basic (official) build is narrow in scope. (I.e. it has only what pleases the self appointed “Benign Dictator For Life” who created Slackware decades back) and a lot has to come from the user contributed archives. I’m not sure how well that’s going to wear on me. It’s got everything I need ( I *think*… need to check those user provided lists…) and is efficient too. OTOH, BSD built really really well. Their ports system is just golden. Everything is polished to a fine degree and you can rebuild the whole system with just one command (and some time…). Not as overly complex as Gentoo, but not as “dig in the junk pile and weld something up” as Slackware. But I have painful memories of trying to get X windows to work on BSD over the years… and the BSD community is hard core hackers so not a lot of handholding ‘how to’ docs for things like X on a Pi. Even what exists tends to have things like “Do the usual here”…

    So I’m going to, at some time likely a week from now, give One Last Try at putting up X Windows on the Pi M2 or M3 on BSD. Probably since a couple of days into it. IFF it goes (and not too hard) I might swap over to BSD as a Daily Driver for a week or two. Yet what pages I found had things like “Oh, well, didn’t work with 16 bit color depth so make it 24 in your driver and recompile”… not exactly the stuff a casual user (or even a Systems Admin short on time…) wants to see. In short, it’s all “YOU are a sys prog, go fix it” and not so much “We fixed it all, just click yes.” and all will be fine.

    So that’s the final choice. Easy build, but hard configure, vs basic config OK, but a bit crusty on the build process for added bits. Neither of them really aimed at “casual users” the way Debian and Ubuntu are. It is turning into a high price to pay to avoid SystemD.

    Maybe I need to make a posting with the list of what I’ve tried, and what I think of them, as a simple checklist…

    But do realise there will not be ONE system for the next 20 years. The moving river moves on and “things change”. The good thing is that in the land of *nix, most things stay the same even as the seatcovers change… Embrace flexibilty, it pays off very well in the longer run. You might own a 1990 Dodge Cummins Diesel truck, but being able to drive a Mercedes limo from time to time is a nice thing ;-)

    Sidebar on Visits:

    I’m booked up through January (about 5 birthdays…) but after that is open. It might be fun to drive up your way. I haven’t seen the old stomping grounds around Sacramento or Chico in a long while…

  9. p.g.sharrow says:

    @EMSmith; Looks to me that you are all ready settling on a few things to use and have sidelined many others as interesting but not something for everyday use. I am presently using Raspbian w/chromium browser, works well enough on this Pi-2, but will probably move to a Pi-3. As I have an XP machine along side, the Windows thing is covered for now. Setting up the Pi-1 to serve DNS and the router looks to be the next project followed by process management. Need to figure out how to manage the firing of several HV coils in poly-phase.
    I will be watching to see how you array units as well as create a large database server.

    RE. Visit. As you remember the north valley and it’s foothills are pretty dismal from mid November to mid February. Rain, fog, snow and wind. Almond trees start to bloom toward the end of February. Mid March to mid May EVERYTHING blooms and Chico is the worst place for allergies, but it is beautiful. We are at 2,200ft so not so bad for pollen and lots of real trees, just below the general winter snow line…pg

  10. gallopingcamel says:

    @Chiefio,
    Thanks for the analogies.

    How would you characterise Windows? Should I think of it as a Yugo or maybe a Cadillac with only second gear working?

  11. E.M.Smith says:

    @Gallopingcamel:

    Glad it was more help than silly ;-)

    Windows? GAK! OK, maybe I’ll take a shot at it. Note that in the above example, I listed:

    Windows. MacOS, IBM Mainframe OS, Unix (bsd), and Linux 
    trains, airplanes, ships,         trucks &    cars.
    

    That list in that order was deliberate.

    Unix is the trucking company of computing. Anything, anywhere, any time. Some quite large (think 3 trailer monsters over the Rocky Mountains) and some quite small (those jeeps used by the Post Office…) Pretty much everywhere, but little thought about, and carries most cargo once landed (even trains end up using trucks at the ends…) Built to run 1/2 million miles and not much different today than in 1980.

    Linux is more like private cars, motorcycles, and pickups. (With the odd custom supertruck tossed in for commercial use like a contractor with a utility bed on it.). LOTS of personalization. You pick every aspect (in keeping with your means…) and sometimes do your own repairs and maintenance. There are fleet users (commercial Linux server farms like from HP often with virtualization – think rental car…) and even drag races and more… and the odd Vespa (Pi?) that gets you there, after a while ;-) Even police fleets (Kali and pentesting…)

    IBM Mainframe OSs (and other mainframes of times past) were like ships. Big. Dumpy. Slow to turn, but got you to your destination reliably and carried a lot of bits when they got there. Personal use (timeshare) largely replaced by personal computers (like travel by ship replaced by air travel and private cars with passenger trains dominant in the 1950s, now fading.)

    Mac is the Jet Air Service of the computer world. Sleek, sexy, fast. Just does things their own way, doesn’t let you reliably choose things like exact schedule and sometimes even seat and music, and is expensive. Not many bad actors make it in, and the terminal and plane is fairly safe, the space looks really professional, but you get herded the direction they want you to go. Oh, and don’t try to pull over in Omaha 1/2 way from cost to coast ’cause you saw an interesting place to visit in the magazine…

    That leaves MS Windows. I listed them as “trains” (in the USA context, not Swiss Trains…), but you could make a case for “buses” too. A bit antiquated, but still carry a lot of “stuff”. Mostly people hostile.(including AMTRAK), not very convenient, and things can suddenly change dramatically without notice (took an Amtrak once and ended up on a ‘bus bridge’ somewhere… as they herded us onto buses since the train wasn’t what they wanted to use on that segment). Yet the economy would stagger to a halt without rail service, especially freight. It’s clumsy and noisy and ugly (rail track scars on mountains especially) and not very fast, but it gets the job done most of the time. Except when it crashes. Oh, and you have no control over how things work, what route it takes, or when your “stuff” (or you) arrive… Everyone gets herded on in a mass, then just suffers with it until the doors open to let them out somewhere they hope is their destination… (like the subway in NYC and others…) and the place has far too many bandits and graffiti artists than desired…

    But try to get NYC to work without the subway, or steaks shipped from Chicago Meat Packers to New Mexico, or… and you find the train is the most common way.

    At least, that’s how I see it…

  12. E.M.Smith says:

    @P.G.:

    Yeah, very familiar with the spring allergy binge… Sigh. Always liked Feb / March as it wasn’t as nose hostile ;-) as April nor as melting as July / August…

    Yes, I’m settling in on things. Still a couple of loose ends, but not too bad. Alpine is settled for my “appliance” uses. It has musl libraries, is very small and fast, has a long pedigree of security and tuning. THAT design goal (routers and appliances) is antithetical to “wide desktop use” in that one wants limited things locked down and the other wants lots of things and variable configuration; so having 2 OSs for those two cases is not just OK, it is a very good idea…

    The Desktop case is still open. But look on the chart of Linux families and there is only ONE really big one that is not embracing systemD, and that is Slackware.

    The minor ones may be productive, but they are largely going to suffer from not enough hands and eyes making everything work and be secure. The “young port” syndrome can last a long time then… There is also a minor possible that someone down stream from a Red Hat or Debian will revolt (like Devuan did in Debian land, but only for the x86 AMD64 chips…) and make a SystemV Init release, but that is unlikely to make it to Pi Land. (I’m going to keep trying Devuan on the Evo x86 box… we’ll see.) Puppy is likely to stay systemD Free, and is useable as a light desktop, but I’m looking for more industrial strength (things like a distcc cluster for compilations… and database farm and…) that is not the design goal of Puppy. So I’ll use it, but mostly for “lite browsing” of places where I want to leave no trace on my Daily Driver, or paying bills or… i.e. “special purpose”.

    That leaves just Gentoo and BSD as “possible but not fully examined”. Yet I surveyed them. Gentoo is a great candidate… as long as you are a professional systems programmer… it has a LOT of controls, and you must set them all just to build a system. Great for folks making a router product for a company, not so great for a guy at home with 1 hour to “make it go” before fixing the fence… BSD still has some promise. The “first try” was very attractive to me. Things “just fit” and everything is where it belongs and the things that need automation are automated and… they have real pain just after you get a command line login. IFF there were an “out of the box” X / LXDE configured BSD, I’d be all over it. (BTW, LXDE is changing to LXQt as it is merging with another system… an example of why you can’t cross the same river twice nor have a 20 year Linux… MY preferred window system, LXDE, is going POOF! soon, and one hopes LXQt is as good and not offending…)

    So “to do” is to install some missing packages from the Slackware user contributed batch and see if I can “make it like home”. (Konqueror has “issues” as a web page editor, it sporadically takes “something” I do as marking the whole page to bottom, then any ‘return’ key erases it. Bit me twice yesterday, so I can’t live on it full time). Figure LXDE / LXQt or something similar, and then a couple of ‘variety browsers’ and I’ll be happy. IFF that works, I’m done.

    Now, if it doesn’t work…

    Gentoo is the final fall back option, but I’d have to get over their Swiss Army Knife Build System. Likely a month to get motivated and done…

    Or BSD. At some point (just for personal pride if nothing else) I need to get X-windows running on it. IFF I get that done before Slackware gets comfy, then my major complaint is out of the way and it can go forward (since nobody else would ever need to deal with that config issue as it would be “up” on the BSD “how to” posting with my build script…) Personally, this is the one I have a Love / Hate relationship with. I love BSD, but hate ‘getting there’ with X-Windows… (I’m sure you couldn’t tell ;-)

    So that’s my “path forward”. Do a “add my packages” to Slackware and see just how painful their “not really a build system” feels at the end. (YOU get to work out any dependencies… something automated in BSD, Gentoo, Debian, etc. etc…) Some weekend take another stab at BSD X-Windows. IFF I can’t get any of that into a shape I like, revisit Gentoo (since it can do anything and everything – some assembly required…)

    And maybe LFS. It’s all manual (though some semi-automated scripts exist) assembly. BUT it is clear how to do it, it is all ‘from original sources” so quite ‘clean’. There is no “upstream” other than the individual package developers (like the Ice Weasel developers) so I can have it ‘my way’ as I like it. Just a PITA workload (and ONGOING workload…) to make it a production system / distro of my design. So this path only if Gentoo beats me ;-) Oh, and then I get to configure X on it, too… Oh Joy… /sarc;

  13. tom0mason says:

    “LXDE is changing to LXQt as it is merging with another system”

    Yep and they’ve been saying that for a very long time (5 years ??). I’m sure they will sometime but many LXDE users like it and might not wish to change to LXQt, so it may well get forked come the day.
    I tried LXQt a couple of years back – cute with a ‘nice’ graphic look nothing that much different. However it definitely had issues — menus suddenly failing, toolbars disappearing or not responding. Not often but often enough. Then an update broke it so I decided to go back to LXDE and wait.
    By now I would think they’ve got all those initial bugs out.

  14. E.M.Smith says:

    @Tom0Mason:

    Yeah, “day in the life” ;-)

    The whole thing just comes down to when the developers decide to abandon a line, and then how long until “something” breaks it irreparably. For now I prefer LXDE, for the future?… But someday WILL come (and in less than 20 years…) and that “crossing the same river twice” problem will arise.

    @All

    Right now I’m typing this in Konqueror browser using KDE desktop. The “Virtuoso-t” program (that I think is part of the KDE package) is taking 65% to 77% of one core more or less constantly. The total system is about 62% idle (counting all 4 cores), but that’s a heck of a load to impose just to have a desktop… Oh, and Konqueror is taking another 20-something percent of a core…

    It’s a nice, and workable, system on the Pi M3, but full of bloat IMHO. LOTS of applications hiding in there, but many KDE centric (like “Calligra Words” as the doc editor). So for KDE oriented folks, it comes ready to go. For those wanting LXDE / OpenOfffice or LibreOffice, some assembly required… Oh, and the menu layout means pretty much 3 panels and a click to get to where you can select the thing you want. The menu “pop up” in the corner give a set of 4 categories (plus ‘leave’) and when you pick one of them, they you get more subcategories, then when you pick one of them, you get to pick your application to click on… Really, click, choose “Applications”, slide cursor up to the group you want, click it, move cursor to the application, click it… Seems like a LOT of wandering around to get something to launch…but it does have a frequently used list as the default first group…

    IMHO this means Slackware comes default with one “to light” Desktop and one “too heavy”. But at least it comes with your choice of two…

    Also the “Slackbuilds” are mostly PC centric, so there is some “magic sauce” to do Slackbuilds (that user contrib library) on the ARM chip… I’m working on figuring it all out, if slowly.

    Hmmm… down to 91% idle and somewhere along the line “virtuoso” stopped sucking down a core. Maybe I ought to find out what it is ;-)

    As of now, the resource usage has backed off to reasonable. Hmmm….

    Well, enough of that… KDE and XFCE both work on the ARM port, Slackbuilds are available, but need magic sauce due to the different chipset (ARM CPU) and have oodles more (though not all of it may work given the chipset issues and Pi quirks – so many be ‘some assembly required’) It has one “good enough” browser by default, but not either / any of my preferred ones.

    OK, I’d rank it as “good enough I guess, needs some work”. Somehow I feel coffee calling my name ;-)

  15. E.M.Smith says:

    Looks like “virtuoso-t” is the desktop search tool per:
    http://www.linuxquestions.org/questions/linux-software-2/virtuoso-t-805915/

    As I’m not using KDE as my file manager, I don’t need it and could turn it off. Interesting that it didn’t run under XFCE near as I can tell, so needs KDE to “go”?

    In any case, it seems to be “run and gone”, so I’m ignoring it for now. Just note that this is the kind of stuff you get when folks decide every application needs to be a full fledged development environment, file managere, editor, etc. etc. etc. and violate that old Unix Way thing of “do one thing well”… Personally, I think it is the fault of EMACS… (who needs their editor to be a complete file manager, editor, development environment, etc. etc… just use VI ;-)

    Kitchen Sink programmers vs Hunting Knife programmers…

  16. p.g.sharrow says:

    @Regis Llanfar says:
    26 November 2016 at 12:37 pm “Any ideas as to “Idiot’s Guides”?”

    ‘Raspberry Pi for Dummies’ second edition, I bought at Barns and Nobel last year. Seems to be a good how to book if you have some idea of the basics of computers….pg

  17. tom0mason says:

    How is the removal of ‘virtuoso-t’ going?
    I have some far distant memory of LXDE and XFCE uses ‘Gtk’ tools and gtk is a royal PITA when they upgraded. so I looked here https://en.wikipedia.org/wiki/GTK%2B
    Applications that require gtk-2 do not always run using gtk-3. The developers of gtk have had much criticism over this — e.g.

    Dirk Hohndel, co-developer of Subsurface and member of Intel’s Open-Source Technology Center, criticized the GTK+ developers for being abrasive and ignoring most community requests.[33]
    Hong Jen Yee, developer of LXDE, expressed disdain for version 3 of the GTK+ toolkit’s radical API changes and increased memory usage, and ported PCManFM to Qt additionally. PCManFM is being developed with a GTK+ and with a Qt at the same time.[34]
    The Audacious music player plans to move back to GTK+ version 2 starting with version 3.6, with the long-term goal of migrating to Qt.[35] The reasons stated by the developers for this include a transition to client-side window decorations, which they claim cause the application to look “GNOME-y and out of place.”[36]
    Wireshark also is transitioning to use Qt due to not having a good experience with its cross-platform support.[37]

    Hope everything is going OK.

  18. E.M.Smith says:

    @Tom0Mason:

    I’m not actually doing the remove, just noted it for the future. It got out of the way fast enough to not be a problem, and I’m unlikely to run KDE as my preferred window system as I like LXDE most, XFCE next…

    Folks have attitudes and styles. This gets reflected in their software that has personality aspects and styles. WAaaaay back when, at the first GNOME and GTK, I was “unpleased” with the attitude, style, and “look” of things. Over the years this has gotten stronger with each release… so I’ll occasionally launch it just to see it works, or measure system resource use, but that’s it. As the GNOME folks moved to other projects, those too became uninteresting to me, finally ending in systemD that may even drive me entirely from Linux.

    What your quote shows is just that others have the same reaction…

    That LXDE is migrating to Qt as LXQt doesn’t bother me one bit :-)

    At the moment, having spent last night looking at LXDE install processes for Slackware, I’m playing with FreeBSD. (Unfortunately, due to only one HDMI monitor I’m single threaded when doing single user mode things where ‘headless’ is not an option).

    I found what purports to be a Pi M2 Xorg config and want to test it.

    BTW, FreeBSD and NetBSD are still M2 only, but I found one guy who had OpenBSD on a Pi M3 in v7 compatible mode ( but only published part of the magic sauce… so likely wants more polish…)

    I also found a recipe to run Debian in a FreeBSD jail. (half chroot & half VM like environment) I want to try that as a lightweight service platform in high risk contexts. So I’m taking one of my BSD chips (minimal) and adding a real USB disk (with partitioning for swap, /var, /tmp and /usr) on one of my PiM2 cards.

    IF I’m right, I can use a FreeBSD base with ‘jails’ to provide clean distcc compile targets for whatever Linux I like without setting up complicated crosscompile rules and configs. Just launch that jailed OS and use it. (It might also turn out a crappy slow thing with issues… so we trial and test…)

    This would also let me do a basic standard FreeBSD build then do future playing in a Jailed OS Du Jour with less fuss (and maybe with fewer monitor demands…)

    To the extent that works, I’ll set up a 2 X Pi M2 FreeBSD cluster for most hard core tech play (that can also use ccache and distcc to dramatically speed up source system compiles…). At least that’s the muse today :-)

    So in about 4? hours I ought to know if the Xorg.conf file works, and I’ve got a dandy GUI LXDE FreeBSD to cluster, or if I’m putting the monitor back on the M3 and working on the Daily Driver Desktop Slackware… or maybe I’ll bake coffee cake and make French Press Coffee :-)

  19. tom0mason says:

    Fine stuff E.M, thank-you for the update.
    Looks like lots of older gtk users are going over to Qt.
    Interesting to note that Qt has a presence on all major platforms (Linux, Windows, Apple, Android, QNx, etc). After it’s turbulent history of ownership and licensing it’s nice to see it’s settling into becoming a major software framework.
    That ‘jails’ idea looks interesting, good luck with getting going reliably.

  20. tom0mason says:

    E.M.

    You may be interested in https://lists.dyne.org/lurker/message/20150805.163347.dcffacec.hu.html
    message saying he has “installed Devuan armhf on a headless Raspberry Pi 2 Model B,
    using the raspian-ua-netinst image. The upgrade from this tiny Debian
    Wheezy to Devuan Jessie /just worked/ – installing task-lxde-desktop
    pulled in libsystemd0 as dependency of some “less essential” and easy
    to remove packages, see below. ”
    “Devuan” is a fork of Debian “Jessie” without any systemd dependencies. See https://devuan.org/

  21. E.M.Smith says:

    @Tom0Mason:

    Great find!

    Guess what I’m installing this afternoon? (I had Devuan on the Compaq Evo (before the CD drive started HW issues) and really liked it. I’ve been pining for a Raspi image :-)

    I’m going to have at least one BSD chip running sometimes, just to keep familiar with it. Why? Because “things change” and last night 2 of them interacted to cost me most of the evening. Both cycle around file systems.

    I have an old 111 MB WD USB hard disk. Not valuable in an era of 1 TB USB disk for $50, but just right for offloading active write filesystems from a BSD that doesn’t expect SD Card expensive writes and ‘wear’. So I toss it on the Debian and use gparted to build a UFS file system (the native Unix fs). No Joy. Depricated. Maybe read only with enough hoop jumping..

    OK, maybe use a Linux fs on BSD…. Some searching later shows exactly 2 are shared. EXT, no, not ext3 or ext4, just ext2; and zfs (yes, the file system for 16 Exabyte stores with 100 TB disks, RAID 6, dynamic allocation and more.) Sigh. Old and doesn’t take a punch well, or “your SAN guy can configure it” for your corporate datacenter server farm…

    I spent an hour or two building a BSD slice structure inside an ext2 partion, and prepping a zfs partion in the other 1/3 to learn with… The ext mounted and worked fine (AFTER loading the needed kernel module…) but when the ‘start zfs’ command was added to /etc/rc.conf, the system fails boot and locks up. Why is an interesting question…

    Seems the default BSD behaviour is to fall back to the serial console when boot fails, so you can fix it from there… one small problem being USB keyboard and mouse stop working as they are not the serial console….

    So now I have a disk where I can’t use 1/2 of it until zfs is debugged and a bricked BSD chip…

    No Problem, I’ll just mount it on my Debian and…. oh, yeah, can’t write UFS filesystem anymore so can’t fix the config file….

    So I boot my 2nd minimal BSD chip to fix this one using my SD to USB adapter. No joy. BSD can’t talk to the adapter….

    The Good News:

    1) I have a dd copy of the chip, so at most I lose the /etc/fstb entries for the new disk (that are now wrong…). So one archive mount to Debian and dd and the BSD chip is back.

    2) I have learned that running a mixed BSD Linux shop has gotten harder at the disk level.

    3) The whole experience has lead me to the conclusion that while BSD is something I like, it is not something for the Low Information Admin… that is, if you don’t do this for a living, it will be hostile to you. Linux has had many of those sharp edges covered with scripts and GUIs.

    All of which had me back at Slackware despite their untidy build system… but a Devuan would be a dandy alternative… thus my thanks.

  22. tom0mason says:

    Glad to help but thanks goes to distrowatch. I ususally have a look at it at least once a week, today they had an Devuan update showing, so I thought ‘is there a Pi version you could use?’. Quick search and there it was. Good luck with it.

  23. E.M.Smith says:

    I’d looked at Devuan “way back when” and it was x86 / AMD64 only, so had despaired that an ARM port was going to happen inside years… Even now, a look at their downloads page has:

    https://files.devuan.org/devuan_jessie_beta/

    embedded/                                          29-Nov-2016 15:40       -
    SHA256SUMS                                         29-Nov-2016 17:56     759
    SHA256SUMS.asc                                     29-Nov-2016 17:56    1513
    devuan_jessie_1.0.0-beta2_amd64_CD.iso             23-Nov-2016 18:07    646M
    devuan_jessie_1.0.0-beta2_amd64_CD.list.gz         23-Nov-2016 18:07     13K
    devuan_jessie_1.0.0-beta2_amd64_DVD.iso            28-Nov-2016 18:32      4G
    devuan_jessie_1.0.0-beta2_amd64_DVD.list.gz        28-Nov-2016 18:32     42K
    devuan_jessie_1.0.0-beta2_amd64_NETINST.iso        29-Nov-2016 17:24    228M
    devuan_jessie_1.0.0-beta2_amd64_NETINST.list.gz    29-Nov-2016 17:26    5185
    devuan_jessie_1.0.0-beta2_i386_CD.iso              29-Nov-2016 17:37    644M
    devuan_jessie_1.0.0-beta2_i386_CD.list.gz          29-Nov-2016 17:39     12K
    devuan_jessie_1.0.0-beta2_i386_NETINST.iso         29-Nov-2016 17:43    268M
    devuan_jessie_1.0.0-beta2_i386_NETINST.list.gz     29-Nov-2016 17:45    5394
    devuan_jessie_1.0.0-beta_amd64_opennebula.qcow2    26-Apr-2016 15:05    685M
    devuan_jessie_1.0.0-beta_amd64_vagrant.box         25-Apr-2016 16:34    652M
    

    Very PC / Intel centric… and no ARM in sight.

    However you came by it, it’s a “good catch”. I’d looked, and missed it. (Likely from overdependence on their download page…)

    The method in your link depends on the Raspbian “netinstal” basic process that uses a ‘not typically used’ installer-config.txt file. “How To” use it here:

    https://github.com/debian-pi/raspbian-ua-netinst/

    More “handholdy” but not telling me where the file was located directions here:

    Raspberry Pi – How to create your own Pi OS

    Took me a while to find “where is installer-config.txt?” as it isn’t normally there (so wasn’t on my chips…) and you must create it.

    I’m going to try just using a running Wheezy image in Berry Boot and doing an upgrade with changed “upstream” as I’d rather avoid the hour+ of netinstalling, but “when that fails” I’ll do it per the recipe ;-)

    I find it odd that the Devuan folks don’t have an ARM version “up”, but you can’t do everything when launching a new distro…

    I’m not sure this is a 100% solution to my wants and needs, but it will be darned close. No systemD needed. Debian tools and ease of use. Reasonable build system WITH package management and “upstream” provider. “Good enough” security paranoia. Coupled with Alpine for appliance things (where tricks like MUSL and stack protection matter more) It is certainly a “good enough for a few years” solution.

    Now I just have to build it and prove it… (in the sense of “proof” of whiskey… i.e. QA stress it.)

  24. tom0mason says:

    You’ll probably have to dig through this http://126kr.com/article/8feqegfbfju too, it’s looks all like work-in-progress developer stuff to me.
    I got that from https://www.raspberrypi.org/forums/viewtopic.php?f=66&t=133078.
    note the comments of

    “The RPF have removed Raspbian Wheezy from Downloads Page, so it would by conclusion appear the answer is not going to happen.
    Even the Devuan Project has not gained much traction, ALPHA4 at present”

    There may be other copies around. Till then I think Devuan project is a non-starter.
    Sorry for the waste of time.

  25. E.M.Smith says:

    @Tom0Mason:

    I’d not expect much enthusiasm from the Raspbian folks for Devuan, as they are pushing Debian.

    FWIW, this morning into the early afternoon were spent getting Devuan (modified from basic Raspbian install) running and booting on the Model 3. I have it working…

    That’s the good news.

    The bad news is that every attempt to install LXDE or XFCE tries to haul systemD back in… so I’ve got some more to do to figure out how to force it not to do that…

    In any case, I’m “taking a break” now from the tech stuff for a little while. Time for some blog reading, maybe a posting, some tea, and a bit of a think… Did I start from the wrong base? (Most current Raspbian Jessie) and if I put up my old Wheezy copy would that work? Ought to to do what was recommended and start from the minimal install instead of the full on? (What I’m going to try next, right after I back up this chip image…) Ought I to hang out at the Devuan boards for a while and poke around / pester? It’s sunny out, should I leave my crypt and risk evaporating in a puff of smoke? ;-)

    So no need for apologies. I’ve got a long archive of old system images, so anything they do to deprecate them doesn’t impact me much.

    BTW, also got a Devuan “conversion” to run to completion on a BerryBoot image, only problem is that like all things BerryBoot, when the kernel is upgraded, it blows the abilty of BerryBoot to boot. Haven’t figured out why yet…. but the bottom line is that the conversion phase looked fine.

  26. tom0mason says:

    Glad to hear its all up and running.
    Why a kernel upgrade breaks it was mentioned in some other posts I read online but failed to note of what was done to ameliorate it, and of course I haven’t a record of the site as I’m set-up to clear all data (including caches) when I shutdown or close the browser.

    Still sound like you’ve made progress.
    Have fun — TM.

  27. E.M.Smith says:

    @Tom0Mason:

    Berryboot uses a compressed (squashfs) Filesystem. Some common library bits are pulled out to a common directory. The boot launches the berryboot app, not the kernel (the app launches the kernel you choose). Kernel overlay modules are in a special place.

    Now, during a kernel upgrade, one or more of those special bits gets broken, or ignored. At a minimum the kernel ends up in the wrong place and not squashed. IMHO, it is likely the overlay parts that are wrong and break the berryboot app launch, but it could be something else (I haven’t looked yet).

    I have the magic sauce for a berryboot os add, and it includes manual squashfs creation and putting things in special directories on the bboot chip. Basically, the default Debian or similar build doesn’t know how to do those steps, and presumes the SD card is NOOBS not BerryBoot. Then overwrites some of those essential files.

    FWIW: Found a nice article on Void with gui setup, so I’m going to give it another try. Looks like they have MATE and LXQt as attractive choices.. Since I have X running, adding MATE or LXQt is very few commands and fast. Also found they swapped out ifconfig for the ‘ip’ command, so my network annoyance may also be curable…

    Basically, I’m in a race condition between Void, Devuan, and Slackware. Whichever finishes first and easiest gets the nod ;-) Looking into the Void xpbs build system, it has some nice advantages. Supports distcc, crosscompiles between architectures, and build from source or binary packages. This means you can just install prebuilt Void packages like Debian, or fairly easily do private source builds for really secure things with a nice BSD like or Arch like build (handles dependencies…).

    Anyway, it gets another shot. I really like the way they expected to use mixed HW & SW platforms in a distributed build. That’s what I want to do, but many builds are hostile to that.

    Oh, and yes, when I get too frustrated on one, I boot the other and try it 8{>}

  28. E.M.Smith says:

    Well, I think I’m (slightly) over the hump with Void. The “trick” is that their package manager (xbps) is NOT configured to actually work “out of the box”. Trying to use it (xbps-query) to look for packages and / or targets to build or install just Does Not Work. Until you tell it where the “repositories” are located and do some other ‘turn things on’ in the config files. Yes, plural. Mostly /usr/share/xbps.conf.

    Just because every other distribution on the planet comes with a basic working config doesn’t mean this one needs to… They repository locations are listed in the files, just not activated. Sigh.

    I’ve now installed a whole bunch of stuff, including LXDE and MATE. Unfortunately, I can’t figure out what command actually starts MATE… (it has a dozen or two in /usr/local/bin with mate-*) and when I do a ‘startlxde’ it segmentation faults… so likely something not quite right in that part of the install.

    While I like the clean and uncluttered ‘feel’ of Void Linux, it is just way sparse on documentation (not a big surprise as the originator is in Spain and likely not fond of writing English…) and not set up to run “out of the box”, so there’ s alot of by guess and by gosh and by golly… It also looks to have changed a lot from first launch (not surprising in a young port) so several web pages with “install this” list things no longer in the packages repository… (or in one I haven’t found yet).

    In any case, there’s a bit more hope now, IMHO, for Void. It DOES have all the important parts, it’s just still a bit rough in the install / config phase and with some ongoing growing pains… at least on the Pi.

    With that, I’m stopping work for the day. (Night?)… I’ll try writing up more about this once I’ve got it more deterministic…

Comments are closed.