Migration To Arch Linux

Well, I’ve been migrating to the Arch flavor of Linux for the last day or two. So far, no big negative surprises.

Minor negatives?

It isn’t very “hand holdy”.

(That, FWIW, is another of those “inner words”…. I’m sure “handholdy” isn’t in any dictionary… yet it is very useful as a tag for those fat releases that do lots of things for you, sometimes in ways you don’t really want… Treating you like a child that has no valid opinion on how things ought to be. Ubuntu and Red Hat are that way. Centos is a Strict Parent and only does an install The One True Centos Way on many points. The more proper English would be “user friendly”, yet that implies it’s a good thing, that isn’t what “handholdy” implies… It is more ambiguous and is good if you are a naive innocent, but bad if you are a Unix Warrior with battle scars.)

The Red Font on the “top” command. Very BMW Dashboard like, but I’m a Mercedes driver.

Finding the name of a package to install is not obvious.

(It shares this trait with other Linuxes as each has their own package manager and libraries, but the others often have more “instructive” results when you hit a forum after a search on “package name for FORTRAN compiler” or such. The Arch user forums are much more ‘terse’ in the typical ‘insider’ way. Saying things like “it’s in the libraries” or “install the compiler packages”… where Debian and especially Ubuntu have more noobs friendly answers and Red Hat / Centos has better formal support pages / answers. That is, you are more “on your own” to find things.)

Things are in different places.

(Really, this is true of all releases. It all depends on where you started. But Arch has some things in places more “old school” and less things off in the new trendy places. Or maybe just “somewhere else”. There’s an example below. But be aware that in the transition to Arch some things you “know” will be wrong. i.e. There’s a learning curve and adjustment to the new environment.

Generally, the default font is too small and you have to size it upward. I know, I know, I’m the old guy not wearing readers, they are the young guys who don’t need them… but… it’s still an annoyance.

So far that’s about it. The positives, for me, vastly outweigh those points. It is far more efficient with resources, and that makes the PiM2 very usable as a desktop. Red Hat Fedora and Debian and especially Ubuntu are just too fat, too slow, and a PITA in a nagging sort of way for a “daily driver” desktop. Just a bit too slow to be acceptable. On Arch, it’s quite good enough, thanks, and that PiM-3 buy becomes totally optional. (I’m still going to get one, but now it is ‘someday’ instead of ‘soon as possible’)

The Good

It is very efficient with resources. On “The Others” I’d run into swapping at times. Normally they would float along at ‘almost all memory used’ and when I’d start doing too much, swap a few hundred MB. I put swap on a real USB disk just for that reason. On Arch, it has not swapped at all so far. Memory runs about 1/3 of the installed even with “the usual” stuff open (terminal window, top monitor, systems monitor, browser – and not a lite one like Midori, we’re talking FireFox). With FireFox running a video (which has sound that actually works, unlike Fedora and Ubuntu and Debian – or at least I could not figure out the magic sauce to make it work on them) CPU runs up to about 75% total AND it is smart enough to use all cores more or less evenly. Oh, and using a non-Flash video plug-in the CPU dropped to about 30%-40% (hard to tell with the red font ;-)

It has packages for what I need, and they install fast and easy. It doesn’t choke on errors. The handholdy releases will often barf on any error and halt / back out an install. Arch just runs on forward and lets you decide if it was a problem. Well, I’ve had a few errors pop up, and so far they didn’t matter. What kind? Well, on install the first time I added the “xorg” package first, then the specific bits for X called out in a reference web page. On re-install, I did it in the other order. Each complained one way or another, so there’s some kind of dependency to work out. The “xorg” last barfed 1/2 way through on some file already existing. OK, I renamed it to …/old.FOO and reran the install. Worked fine. Now a noob is unlikely to say “Screw it, just move that junk file out of the way” since it might scrog (another of those ‘inner words’- to really screw up something and break it causing it to not work, but you can likely fix it with work) things and cause you heartburn to figure out how to recover. For other packages it would say things like “BAR missing” or “FOO conflict” and go on. Nice “advisories” to have, but not very important as things ran anyway… (Until they DON’T run, then you pour over those messages seeking clue…) Basically,. Arch says it is your job as Systems Guy to know when errors matter and when they don’t. As a Systems Guy, I like that.

Everything just works. So far, so good, but I’ve not had broken / missing stuff that could not be fixed with the update or install processes. The pacman package manager is easy and fast. Find out “gimp” (image editing program) is missing? Just (as root) type “pacman -S gimp” and a few minutes later it’s done. (I’m running it right now in a terminal as I type this. Something that would kill The Others with resource demands.)

It just feels more like a proper Unix/Linux. Not a lot of cruft (old crummy dusty not quite right any more) laying around and much of the old pure ways still in evidence. Not quite BSD, but you can see memories of it here.

The Transition

As is usually the case, a transition takes time. Now this is made easier by my having my home directory on external media. So first off, I can just unmount / remount ‘my stuff” and it moves. Also, I can squirrel away key config files from the old system onto “my stuff” and have it available.

I’m also starting to make an Arch Build Script to make the process more consistent (like the one for Debian / Ubuntu / anything using apt-get).

The rough steps:

1) Put BerryBoot on an SD chip. Boot it up. Choose Arch Linux from the list. (In reality, I used a large chip, so loaded on the memtester, PXE server, Fedora and Debian along with Arch, but that’s just for future playing when I deprecate other chips and decide I want to test something on Fedora or…)

2) Once Arch boots, login as root (passwd root). Update the system and install the basic X environment (eventually to be ‘run the builit script’)

pacman -Suy
pacman -S xorg #(which throws some errors that I think can be ignored)
pacman -S xf86-video-fbdev lxde xorg-xinit dbus

edit the .xinitrc file in your home directory and put in it

exec startlxde

To now launch your X-window LXDE world, type:

startx

(those last two hold for your personal login, added later, too)

Now you are in a nice graphical LXDE world. Open a terminal server from the icon that looks like an alien crystal arrowhead lower left, system tools, LXTermal and continue with adding any desired packages. So far, I’ve got:

pacman -S firefox
pacman -S chromium #(that seems to not work, or has an unresolved dependency – we’ll see)
pacman -S seamonkey
pacman -S binutils
pacman -S dnsutils
pacman -S ntfs-3g
pacman -S gcc-fortran #(That brings wtih it the gcc C compiler)
pacman -S gimp

and so it goes… I need to go through the rest of my buildit script and find the matching packages in the Arch world. Note that many are the same name, but some, like FORTRAN, not so much…

Oh, and somewhere in that process you ought to change the default root password to something other than “root”… and TEST IT before you log out…(su to some other user name in /etc/passwd, then ‘su root’ and you have to use the password. Doesn’t work? Exit that shell back to the root one and change it again…)

The Sys Config

I’ve made a lot of customizations to my Linux World. From a DNS that quashes many advertizing and risk sites (and avoids a LOT of junk network traffic and slow DNS lookups and generally makes things go faster) to having my own login so I’m not running as “root’ or “pi” all the time.

It can be a bit of a pain to remember, find, compare, change all those files. So I typically have a script do it. The script has to change with every release of Linux, as Systems Programmers just can’t help themselves and constantly screw around with where key files for Systems Admin are kept and how they work. (Damn them…) The latest and most eggrigious of this sort being the forced bork (yet another four letter word) of moving to systemD, but I digress… So here’s the one that I used for grabbing the Debian files. I’ve likely missed one or two, and over time I’ll figure that out and add them.

On my “movable feast disk” (that mounted disk with home directories) I have, at the top level, a directory named “Pi_Config_Files”. In it are a couple of scripts and some directories

[root@ARCH_pi_64 Pi_Config_Files]# ls
Adiff  Arch_LXDE  DebDD  cpfiles  difffiles

Note the prompt reminding me I’m logged in as root, on the machine named ARCH_pi_64 (for the 64 GB chip it’s on ;-) and that I’m in the directory “Pi_Config_Files”. Then the “ls” command to list the files. Here’s a “long listing”:

[root@ARCH_pi_64 Pi_Config_Files]# ls -l
total 20
-rwxr-xr-x 1 root root 2252 Apr 26 18:33 Adiff
drwxr-xr-x 2 root root 4096 Apr 26 18:24 Arch_LXDE
drwxr-xr-x 2 root root 4096 Apr 26 23:56 DebDD
-rwxr-xr-x 1 root root  592 Apr 26 18:07 cpfiles
-rwxr-xr-x 1 root root 2215 Apr 26 18:34 difffiles

Now you could name these anything. In the long listing, note that two directories exist. They are the two configs of the two machines. Arch_LXDE and Debian Daily Driver. I can capture and compare any and all configs I like for each chip/system each in their own directory. Next note the command ‘cpfiles’. that is “Copy Files”. I’ve included it below. There might very well be other files I ought to add. This is just what I thought most important for the initial move.

The “cat” command is “concatenate and print” and takes a list of file names, then prints them out. With only one name, it just prints it to your screen.

[root@ARCH_pi_64 Pi_Config_Files]# cat cpfiles
cp /etc/fstab ./ETC_fstab
cp /etc/passwd ./ETC_passwd
cp /etc/dnsmasq.conf ./ETC_dnsmasq.conf
cp /etc/exports ./ETC_exports
cp /etc/group ./ETC_group
cp /etc/hostname ./ETC_hostname
cp /etc/hosts ./ETC_hosts
cp /etc/hosts.allow ./ETC_hosts.allow
cp /etc/hosts.deny ./ETC_hosts.deny
cp /etc/iptables/rules.v4 ./ETC_iptables_rules.v4
cp /etc/motd ./ETC_motd
cp /etc/network/interfaces ./ETC_network_interfaces
cp /etc/ntp.conf ./ETC_NTP.conf
cp /etc/resolv.conf ./ETC_resolv.conf
cp /etc/resolvconf.conf ./ETC_resolvconf.conf
cp /etc/sudoers ./ETC_sudoers
cp /etc/sysctl.conf ./ETC_sysctl.conf
[root@ARCH_pi_64 Pi_Config_Files]# 

Note that I’m only grabbing things in the /etc directory. There’s a lot more stuff on well used systems to grab. Like /usr/local/bin and more. This is just the bare bones version and will grow over time. But it is enough to get me ‘moved in’ quickly.

Note that the ‘to’ file names are all of the form ./ETC_foo … That lets me copy the files to my current working directory. So to use this, you cd (change directory) into whatever name you gave for a particular system, and type “../cpfiles”. The “..” says “go up one directory” and then you run the cpfiles you find there. Which puts all those files in your present directory. Why rename them like that? So you have constant aswareness of when you are talking about a COPY vs the original. Typing cp ./etc/passwd /etc/passwd has risks of getting the ‘dot’ wrong or just generally being opaque… cp ./ETC_passwd /etc/passwd is clearer.

So that’s all it takes grab a debian copy.

Running this same script against the Arch system gave errors. I captured them by redirecting the error output to a file.

../cpfiles 2> err_msgs

Here’s the ls of the Arch_LXDE directory and the contents of the error messages file:

[root@ARCH_pi_64 Arch_LXDE]# ls
ETC_fstab  ETC_group  ETC_hostname  ETC_hosts  ETC_motd  ETC_passwd  ETC_resolv.conf  ETC_resolvconf.conf  err_msgs

[root@ARCH_pi_64 Arch_LXDE]# cat err_msgs 
cp: cannot stat '/etc/dnsmasq.conf': No such file or directory
cp: cannot stat '/etc/exports': No such file or directory
cp: cannot stat '/etc/hosts.allow': No such file or directory
cp: cannot stat '/etc/hosts.deny': No such file or directory
cp: cannot stat '/etc/iptables/rules.v4': No such file or directory
cp: cannot stat '/etc/network/interfaces': No such file or directory
cp: cannot stat '/etc/ntp.conf': No such file or directory
cp: cannot stat '/etc/sudoers': No such file or directory
cp: cannot stat '/etc/sysctl.conf': No such file or directory
[root@ARCH_pi_64 Arch_LXDE]# 

Some of those are because I’ve not installed that “part” yet. So I’ve not set up sudoers on Arch, nor do I have an iptables firewall running yet. Or NFS exports. (Note to self, install the NFS bits…) So those “errors” are in some ways a “to do” list.

The other files already exit, but are different. That’s what the “diff” command scripts do. Compare file sets. The “difffiles” command does them all, even the ones not there on Arch. As that throws nagging errors, I made a ‘cut down’ one with the lines for non-existent files commented out. I’ll do that for each system compared. (Eventually each system has a custom copy script and custom N x M compare script, so if “fstab” moves to /etc/vfstab (damn you Solaris!) that Solaris script would be aware of that and compare fstab to vfstab…

Here’s the one with lines commented out for the missing Arch files. (So later I can just remove the leading “#” and activate that compare once, for example, I’ve installed NFS…)

]
[root@ARCH_pi_64 Pi_Config_Files]# cat Adiff
echo
echo "Doing: diff /etc/fstab ./ETC_fstab"
diff /etc/fstab ./ETC_fstab
echo
echo -n "Next? "
echo
read ANS
echo
echo "Doing: diff /etc/passwd ./ETC_passwd"
diff /etc/passwd ./ETC_passwd
echo
echo -n "Next? "
echo
read ANS
echo
#echo "Doing: diff /etc/dnsmasq.conf ./ETC_dnsmasq.conf"
#diff /etc/dnsmasq.conf ./ETC_dnsmasq.conf
echo
#echo -n "Next? "
echo
#read ANS
echo
#echo "Doing: diff /etc/exports ./ETC_exports"
#diff /etc/exports ./ETC_exports
echo
#echo -n "Next? "
echo
#read ANS
echo
echo "Doing: diff /etc/group ./ETC_group"
diff /etc/group ./ETC_group
echo
echo -n "Next? "
echo
read ANS
echo
echo "Doing: diff /etc/hostname ./ETC_hostname" 
diff /etc/hostname ./ETC_hostname
echo
echo -n "Next? "
echo
read ANS
echo
echo "Doing: diff /etc/hosts ./ETC_hosts"
diff /etc/hosts ./ETC_hosts
echo
echo -n "Next? "
echo
read ANS
echo
#echo "Doing: diff /etc/hosts.allow ./ETC_hosts.allow" 
#diff /etc/hosts.allow ./ETC_hosts.allow
echo
#echo -n "Next? "
echo
#read ANS
echo
#echo "Doing: diff /etc/hosts.deny ./ETC_hosts.deny"
#diff /etc/hosts.deny ./ETC_hosts.deny
#echo
#echo -n "Next? "
echo
#read ANS
echo
#echo "Doing: diff /etc/iptables/rules.v4 ./ETC_iptables_rules.v4"
#diff /etc/iptables/rules.v4 ./ETC_iptables_rules.v4
echo
#echo -n "Next? "
echo
#read ANS
echo
echo "Doing: diff /etc/motd ./ETC_motd"
diff /etc/motd ./ETC_motd
echo
echo -n "Next? "
echo
read ANS
echo
#echo "Doing: diff /etc/network/interfaces ./ETC_network_interfaces"
#diff /etc/network/interfaces ./ETC_network_interfaces
echo
#echo -n "Next? "
echo
#read ANS
echo
#echo "Doing: diff /etc/ntp.conf ./ETC_NTP.conf" 
#diff /etc/ntp.conf ./ETC_NTP.conf
echo
#echo -n "Next? "
echo
#read ANS
echo
echo "Doing: diff /etc/resolv.conf ./ETC_resolv.conf "
diff /etc/resolv.conf ./ETC_resolv.conf
echo
echo -n "Next? "
echo
read ANS
echo
echo "Doing: diff /etc/resolvconf.conf ./ETC_resolvconf.conf"
diff /etc/resolvconf.conf ./ETC_resolvconf.conf
echo
echo -n "Next? "
echo
read ANS
echo
#echo "Doing: diff /etc/sudoers ./ETC_sudoers"
#diff /etc/sudoers ./ETC_sudoers
echo
#echo -n "Next? "
echo
#read ANS
echo
#echo "Doing: diff /etc/sysctl.conf ./ETC_sysctl.conf"
#diff /etc/sysctl.conf ./ETC_sysctl.conf
echo
echo "That's the lot of them...   "
echo
[root@ARCH_pi_64 Pi_Config_Files]# 

Note that this, too, expects to be run in the target system directory as a ../Adiff so you would first ‘cd DebDD’ and then do ../Adiff and each file is compared, one a time, to the one on the Arch system vs the DebDD one. Similarly, you could mount the disk on the Debian Daily Driver and instead ‘cd Arch_LXDE’ and do a ../Adiff to compare them on the Debian system. Yes, keeping track of your context is important here… I only wrote this for me, so it isn’t ‘handholdy’ much…

The “read ANS” is reading an input into the variable $ANS, which is just there to stop things scrolling past. $ANS isn’t used anywhere. We also have my usual “say what is happening, then do it” and white space pretty printing with empty “echo” statements.

And Now?

I’m pretty much moved in. I’ve got “me” in the /etc/passwd file so I don’t need to log in as root. I’ve got things configged (configured) to mount my disks. Life is good.

Still to do is finish that alternate “buildit” script and get the rest of the files changed to match. I’ve done passwd and fstab and hostname and motd (Message Of The Day. The default Arch one says “welcome to…” and there was a court case once where a system intruder used that ‘welcome’ as a defense and won… so mine says:)

[root@ARCH_pi_64 Pi_Config_Files]# cat /etc/motd

This is the Arch Linux ARM Pi Box

     Website: http://archlinuxarm.org
       Forum: http://archlinuxarm.org/forum
         IRC: #archlinux-arm on irc.Freenode.net

What  are  you doing here?  Get Out!


[root@ARCH_pi_64 Pi_Config_Files]# 

For now, though, I’m “good enough” to work using it. I can log in as “me”, listen to tunes, do postings, compile things, and mount all my disks easily. Nice.

As I run into any “odd bits” either with files or pacman -S FOO targets, I’ll add things.

For now, I’m going “back to work” ;-)

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.

16 Responses to Migration To Arch Linux

  1. Larry Ledwick says:

    Nice — I will have to go over this in detail later but I like your assessment of Arch Linux, I will probably just side step the earlier efforts and go straight to it on my pi M2 (which I have not gotten around to messing with). Sounds like a workable low overhead desktop system for routine browsing and low exposure to gremlins.

  2. E.M.Smith says:

    @Larry:

    Well, IF you use a ‘big’ SD chip (over about 8 GB) and BerryBoot you can easily just load up serverl linux versions and choose at boot time. I regularly do that, as in BerryBoot they use a squashfs to store the bits, so a full up Ubuntu, for example, is about 900 MB. Out of a 32 GB chip, that’s nearly nothing. (And I just bought a 32 GB Class 10 Ultra Sandisk chip at WallyMart for about $17, so it isn’t like it breaks the bank…)

    IMHO, a Linux Release is like a new pair of shoes. What fits one person might not fit another, and what is your idea of ‘looking good’ might not be mine; so it’s better to install several and then take them for a test drive. Had I done a bit more of that earlier, I’d have gotten further with Arch. I did boot it, but at “What? NO desktop environment?” just “moved along” instead of installing X.

    But yeah, if you want to just start with Arch, it isn’t nearly as hard as I’d expected at first blush.

    BTW, per “red font” on “top”:

    Seems that someone was way too bored, or was assigned the job of monitoring systems when he really wanted to be a sysprog… so “top” now has a zillion options under Arch. It is so “flexible” now that it can spit out a config file for the setup you like and that way you don’t have to go through all that stuff again later… The “Magic Sauce” is the letter “Z” and “W”. Typing Z when in the window running ‘top’ lets you config the colors. Once set, ‘enter’ to exit the color config and return to running ‘top’. Then type “W” and the present configuration is written out to a start up file. Yeah, waaaaay too much for one stupid little command.

    from the ‘man top’ manual page:

       4d. COLOR Mapping
           When  you issue the `Z' interactive command, you will be presented with a separate screen.  That screen can be used to change the colors in
           just the `current' window or in all four windows before returning to the top display.
    
           The following interactive commands are available.
               4 upper case letters to select a target
               8 numbers to select a color
               normal toggles available
                   B         :bold disable/enable
                   b         :running tasks "bold"/reverse
                   z         :color/mono
               other commands available
                   a/w       :apply, then go to next/prior
                      :apply and exit
                   q         :abandon current changes and exit
    
           If you use `a' or `w' to cycle the targeted window, you will have applied the color scheme that was displayed when you  left  that  window.
           You can, of course, easily return to any window and reapply different colors or turn colors Off completely with the `z' toggle.
    
           The  Color Mapping screen can also be used to change the `current' window/field group in either full-screen mode or alternate-display mode.
           Whatever was targeted when `q' or  was pressed will be made current as you return to the top display.
    

    So I’ve now “fixed” the horrid red and have a subdued magenta / cyan color scheme running… For “sometime later” is figuring out which of 1000 toggles get the processes to sort by activity level instead of the (default) PID that is realy rather uselss as ‘systemD’ and it’s spawn are the onlything that shows in the top of the panel and the active tasks are way off down page… but I have other bits for now that are more important to deal with.

    This is, sadly, both the curse and wonder of Linux. Somone makes some simple direct command, like “top” that shows you a screen of what’s going on. Standard over all systems everywhere. Then, over time, folks think “I have a better idea” and they all slowly grow into giant things with so many options and toggles that it takes you 4 hours to find out how to make it stop doing some stupid thing you never asked for. That, then, puts an upper limit on how many commands you can use / master as eventually N x T > Usable Lifetime, where N is number of commands and T is ‘time to configure and make right’ and U.L. is the lenght of time before it’s all changed in the next release and you get to start over… I have no complaint about folks adding such features, just have them all turned off by default so everyone else can just ignore them until they want them; instead of being forced to waste 2 hours working through a ‘man page’ and figuring out how to “make it stop!@”…

    Oh, and the man page also explains the changed fields. CPU is in % User + nice / % Sys and memory is in %used / GB total. Looks a bit odd as: 30.7/0.841 when first encountered. So right now I’m using 30% of 841 MB… not as clear as it could be… Maybe I need to add a configuration switch ;-) (Or just learn the ones in it…)

    Oh Well, such are the teething pains of a new environment move in.

    FWIW on Errors:

    Had my first two “issues”. A “non-Flash” plug-in for video on FireFox was sporadically giving garbled music. I removed it and things got better. Then it would still garble after the first video was run. Don’t know if it is an artifact of the plug-in, or an undiscoverd bug in earlier testing. Moving to SeaMonkey seems to not have that problem. I may need to re-install FireFox to test the artifacty character. Or just ignore it and use SeaMonkey (FireFox unbranded…)

    Well, back to making that ABuildit script…

  3. E.M.Smith says:

    Here’s the current status of the “AbuildIt” script. I’ve annotated those things that didn’t have a build target and where I need to “go fish” and find out what their target name is, or if they are already installed by default.

    So here you go, but realize it’s only about 2/3 done… and not debugged. (I ran each command by hand, then typed into the script, so beware that no check for things like unmatched quotes has been done…)

    [root@ARCH_pi_64 Pi_Config_Files]# cat AbuildIt 
    echo " "
    echo " "
    echo " "
    echo " http://www.berryterminal.com/doku.php/berryboot "
    echo " "
    echo "Boot that chip, select the OSs desired - Arch in particular"
    echo " "
    echo "Then copy this script from an external SD card or USB drive" 
    echo "into your working directory (home directory or /media/data"
    echo "after all the usual and customary setup questions are answered and done."
    echo " "
    #
    # In general, I'm encapsulating what all I did in these two postings as a script:
    #
    # https://chiefio.wordpress.com/2015/07/18/raspberry-pi-m2-unboxing-and-setup/
    #
    # https://chiefio.wordpress.com/2015/07/22/raspberry-pi-software-setup/
    #
    # BUT, modified for the Arch distribution of Linux.
    #
    # If you didn't already change the password while running the startup,
    # When done, log in as 'root' password 'root'.  Change the password.
    # passwd
    # and respond with the new one when prompted.
    
    echo "Also, to change the name of your machine, edit /etc/hostname and make it"
    echo "what you like.  "
    echo "Here, I'm going to just set mine by brute force write to the file."
    echo " "
    echo "echo 'Arch_RPiM2' > /etc/hostname "
    echo " "
    
    echo 'Arch_RPiM2' > /etc/hostname
    
    echo " "
    echo "Next, do the 'usual' update upgrade that brings you up to the present"
    echo "repository status (need a network connection from here on out)"
    echo " "
    echo "You can either put 'sudo' in front of each of these commands, or just "
    echo "'become root' which is what I usually do."
    echo " "
    echo "sudo bash"
    echo " "
    echo "Or, at first boot, just login as root.
    echo " "
    echo "then run this script with ./ABuildIt (assuming you didn't change the name"
    echo "and that you are 'in' the directory where it is located.)"
    echo " "
    echo "pacman -Suy "
    echo " "
    
    pacman -Suy
    
    echo " "
    echo "Start doing useful operational 'packages'. "
    echo " "
    
    # This gets the useful tools like "nslookup" for looking at Domain Names
    
    echo " "
    echo pacman -S dnsutils
    echo " "
    
    #pacman -S dnsutils
    
    echo " "
    echo " VNC is a nice way to get a remote desktop.  It takes some configuring later."
    echo " "
    
    echo " " 
    echo "This command isn't it, so need the right target"
    echo pacman -S tightvncserver
    echo " "
    
    #pacman -S tightvncserver
    
    echo " "
    echo "I like wicd for an easier way to manage wireless devices and networks."
    echo " "
    echo "The post install gives some interesting messages, which may explain"
    echo "some 'conflict' like behaviour I've seen on other systems.  Places"
    echo "where that 'turn off other services' wasn't done." 
    echo " "
    echo " "
    echo "==> You need to restart the dbus service after "
    echo "==> upgrading wicd."
    echo "==> Disable networkmanager, dhcpcd or other networking "
    echo "==> utility and add 'wicd' to your systemd configuration."
    
    echo "==> To run: wicd-cli or wicd-curses"
    echo "Optional dependencies for wicd"
    echo "    wicd-gtk: needed if you want the GTK interface"
    
    echo " "
    
    echo " " 
    echo pacman -S wicd
    echo " "
    
    pacman -S wicd
    
    echo " "
    echo "Scrot is a tool for taking screen shots by saying 'scrot' in a terminal"
    echo " "
    
    echo " " 
    echo pacman -S scrot
    echo " "
    
    echo pacman -S scrot
    
    # Normally I would install "build-essential" to get things like C compiler
    # and some language tools, but this isn't the right target.
    
    echo "This command isn't it, so need the right target"
    #pacman -S build-essential
    
    echo " "
    echo "Some 'user land' useful things like browser options and Office / Mail tools."
    echo " "
    echo "Chromium is the 'chrome' browser from Google but in Linux land"
    echo " "
    echo "    CHROMIUM HAS STAID DEAD "
    
    echo " " 
    echo pacman -S chromium
    echo " "
    
    pacman -S chromium
    
    # IceApe is a "more free" version of IceWeasel that is a "more free" version of
    # Firefox that is a rebranded Mozilla that is...   IceDove is the matching
    # Thunderbird replacement minus the trademarks, non-free bits, etc.
    # In Arch, they are under the Seamonkey brand.  But it also has regular FireFox.
    
    echo " "
    echo "Doing FireFox browser and Seamonkey browser/ mail reader"
    echo " "
    
    echo " " 
    echo pacman -S firefox
    echo pacman -S seamonkey
    echo " "
    
    pacman -S firefox
    pacman -S seamonkey
    
    echo " "
    echo "GIMP is the photo editor ( 'photoshop Free'...) "
    echo " "
    
    echo " " 
    echo pacman -S gimp
    echo " "
    
    pacman -S gimp
    
    echo " "
    echo "Don't forget Libreoffice - Microsoft?  We don't need no steenking MicroSoft..." 
    echo " "
    
    echo " " 
    echo pacman -S libreoffice
    echo " "
    echo "This gave a choice of 2 repositories.  Fresh and Still.  No idea, but "
    echo "guessing Fresh is more devo and Still is more stable?"
    echo " "
    
    pacman -S libreoffice
    
    
    # On Delian, I tried "arora" and got error messages and "xbmc" was not working for sound
    # so I'm not installing those again until it's clear they work.  Arora is a
    # browser (so who needs "yet another browser" with Epiphany in by default and
    # with both IceApe and Chromium installed?...) and I'll likely make a dedicated
    # SD card for the media center option as there are 2 Pi Model 2 version up
    # and I won't need to screw around with Debian issues...
    #
    # I'm leaving thes lines here as a reminder, but didn't test it and have no idea
    # what works.
    
    #pacman -S arora
    #pacman -S xbmc
    
    # As I also wanted one of these to be a bittorrent server, I sometimes add
    # the "transmission" bittorent code.
    
    echo " "
    echo "Adding the 'transmission' bit torrent server"
    echo " "
    echo "Need to find the right target for 'transmission' !!  "
    echo " "
    
    echo " " 
    echo pacman -S transmission
    echo " "
    
    #pacman -S transmission
    
    echo " "
    echo "To get NTFS disks (like USB or an NTSB formatted SD card in adapter) to "
    echo "work 'read write' instead of just 'read only', you need ntfs-3g"
    echo " "
    
    echo " " 
    echo pacman -S ntfs-3g
    echo " "
    
    pacman -S ntfs-3g
    
    # In Theory, this installed 2 VNC "viewers" so the R.Pi could use VNC to 
    # get to other machines.  In practice, I found that one of them locked up
    # my console when launched against my own machine as target (might be a 
    # PIBKAC problem - Problem Is Between Keyboard And Chair - as the R.Pi
    # isn't really expecting to drive 2 video sessions at once (the real one
    # and the VNC one inside the real one...) so maybe all is fine and I just
    # need to RTFM (Read The, er, "Friendly" Manual) before using software...
    
    echo " "
    echo "Some VNC Viewers for being the client instead of the server"
    echo "I've not used either of these yet so have no clue about them in practice"
    echo " "
    echo "These are not the right targets.   Need to find the right ones!!! "
    
    
    echo " " 
    echo pacman -S xtightvncviewer
    echo pacman -S ssvnc
    echo " "
    
    #pacman -S xtightvncviewer
    #pacman -S ssvnc
    
    echo " "
    echo "Want an NFS (Network File System) server so you can share disks with" 
    echo "your internal network?  This will install the code, then you get to" 
    echo "configure things like /etc/exports"
    echo " "
    echo " "
    echo "These are not the right targets.   Need to find the right ones!!! "
    
    
    echo " " 
    echo pacman -S nfs-kernel-server
    echo " "
    
    #pacman -S nfs-kernel-server
    
    # prior to first use.  Or reboot.
    
    # In your /etc/exports file, put something like:
    
    # /etc/exports: the access control list for filesystems which may be exported
    #		to NFS clients.  See exports(5).
    #
    # Example for NFSv2 and NFSv3:
    # /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
    #
    # Example for NFSv4:
    # /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
    # /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
    #
    
    # /YourFileSystem  *(rw,sync,fsid=0,no_root_squash)
    # But without the # in front of YourFileSystem... and with your file system...
    
    echo " "
    echo "IF you chose that 'add a 512 MB partition option' at build time"
    echo "This adds it to the /etc/exports file so it is NFS mountable elsewhere"
    echo " "
    echo "echo '/media/data   *(rw,sync,fsid=0,no_root_squash,no_subtree_check)' >> /etc/exports"
    echo " "
    
    echo "/media/data   *(rw,sync,fsid=0,no_root_squash,no_subtree_check)" >> /etc/exports
    
    # Remember to do a 
    
    echo " "
    echo "Restarting the appropriate services so NFS will work"
    echo " "
    echo " " 
    echo service rpcbind restart
    echo service nfs-kernel-server restart
    echo " "
    echo " "
    echo "Need to validate that this is the same on Arch.   Need to find the right ones!!! "
    
    
    #service rpcbind restart
    #service nfs-kernel-server restart
    
    # I also made my box a static IP number as it's a server.  You will need to
    # make this your own server name and IP numbers.
    #
    # Here's my /etc/network/interfaces file with leading # to make it comments.
    # 
    # I will make this a "dump these lines in to replace" in my running version.
    #
    
    echo " "
    echo "Remember to make your /etc/network/interfaces file have a static IP#"
    echo "If you are going to be using PXE boot and such"
    echo " "
    
    #auto lo
    #iface lo inet loopback
    
    #auto eth0
    #allow-hotplug eth0
    #iface eth0 inet static
    #address 172.16.16.253
    #netmask 255.255.255.0
    #gateway 172.16.16.254
    #dns-domain chiefio.home
    #dns-nameservers 172.16.16.254 192.168.1.253 192.168.1.1
    #
    #auto wlan0
    #allow-hotplug wlan0
    #iface wlan0 inet manual
    #wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
    #
    #auto wlan1
    #allow-hotplug wlan1
    #iface wlan1 inet manual
    #wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
    
    # Don't forget to do a
    # ifdown eth0
    # wait a minute for it to quiet down
    # ifup eth0
    
    # As I want this to be a DNS server, DHCP server, and PXE server (uses a 
    # tftp or "Trivial File Transfer Protocol" server, all of those can come in
    # one package with dnsmasq.
    
    echo " "
    echo "Installing a light weight but effective DNS, DHCP and TFTP service"
    echo " "
    
    echo " " 
    echo pacman -S dnsmasq 
    echo " "
    
    pacman -S dnsmasq 
    
    echo " "
    echo "Yes, it takes configuring.  See the file at"
    echo " /etc/dnsmasq.conf"
    echo " "
    
    # Then I installed the Apache web server :
    
    # http://www.raspipress.com/2012/09/tutorial-install-apache-php-and-mysql-on-raspberry-pi/
    
    echo " " 
    echo "Instlling the Apache Web Servier and related stuff"
    echo " "
    echo " "
    echo "These are not the right targets.   Need to find the right ones!!! "
    
    echo " " 
    echo pacman -S apache2 apache2-utils apache2-doc
    echo " "
    
    #pacman -S apache2 apache2-utils apache2-doc
    
    # and yes, it takes some configuring and even web page building.
    # See files in places like /etc/apache2/sites-available and more.
    
    echo " " 
    echo pacman -S libapache2-mod-php5 php5 php-pear php5-xcache
    echo " "
    
    #pacman -S libapache2-mod-php5 php5 php-pear php5-xcache
    
    echo " "
    echo "How about mysql?  "
    echo " "
    echo " "
    echo "Ths is not the right target.   Need to find the right one!!! "
    
    echo " " 
    echo pacman -S php5-mysql
    echo " "
    
    #pacman -S php5-mysql
    
    echo " " 
    echo pacman -S mysql-server mysql-client
    echo " "
    
    #pacman -S mysql-server mysql-client
    
    echo " "
    echo "But myql unadorned worked.  At the end, gave these messages:" 
    echo " "
    echo ": You need to initialize the MariaDB data directory prior to starting"
    echo "   the service. This can be done with mysql_install_db command, e.g.:"
    echo "   mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql"
    echo "Optional dependencies for mariadb"
    echo "    perl-dbd-mysql: for mysqlhotcopy, mysql_convert_table_format and"
    echo "    mysql_setpermission"
    
    
    
    # These needed to be added for Transmission and for file systems
    #
    echo " "
    echo "These are not the right targets.   Need to find the right ones!!! "
    
    echo pacman -S transmission-daemon
    echo pacman -S btrfs-tools xfsprogs f2fs-tools 
    echo pacman -S hfsplus hfsutils
    echo pacman -S aufs-tools
    
    echo " "
    echo "But these did work"
    echo " "
    
    pacman -S squashfs-tools aufs-tools
    
    pacman -S unionfs-fuse
    
    pacman -S gparted 
    
    echo " "
    echo "With these messages:"
    echo " "
    
    echo "Optional dependencies for gparted"
    echo "    dosfstools: for FAT16 and FAT32 partitions"
    echo "    jfsutils: for jfs partitions [installed]"
    echo "    f2fs-tools: for Flash-Friendly File System"
    echo "    btrfs-progs: for btrfs partitions"
    echo "    exfat-utils: for exFAT partitions"
    echo "    ntfs-3g: for ntfs partitions [installed]"
    echo "    reiserfsprogs: for reiser partitions [installed]"
    echo "    xfsprogs: for xfs partitions [installed]"
    echo "    nilfs-utils: for nilfs2 support"
    echo "    polkit: to run gparted directly from menu [installed]"
    echo "    gpart: for recovering corrupt partition tables"
    echo "    mtools: utilities to access MS-DOS disks"
    echo " "
    echo "Which sort of implies that btrfs is already installed"
    echo "Things to check..."
    echo " "
    echo "And that's the end of my present install build process."
    echo " "
    #
    # There are several files to edit and configure.  Eventually I'll add a 
    # "here script" to dump them from this script to where they belong, or 
    # I'll just save a copy and have a 'save / restore' copy process.
    #
    # Once I get everything configured ;-)
    

    So yet more progress.

    At this point, I’m going to ‘checkpoint’ the system in BerryBoot and have a nice, fairly complete, fall back point if I scrog something going forward.

    It may be rough, but it can still put you ahead of starting from nothing…

  4. E.M.Smith says:

    In testing the parallel fortran compiler with gfortran, it only runs single thread. So I’ve got some debugging to do there. (Then again, when it did run parallel on the other distros, it wasn’t any faster… but still).

    In any case, I ran into the interesting bit that you can make a ‘build farm’ with a built in C compiler on may Linuxen, including Arch. It is the ‘distcc’ command / package. So I’ve added this to my build script:

    echo ” ”
    echo “Added the distributed C compiler”
    echo ” ”

    echo pacman -S distcc
    echo ” ”
    pacman -S distcc

    There’s more to it (the configuration…) and it may or may not need some other packages ( I’m a noob on distcc) but it has the nice feature of letting you spread complies over several machines. Or, if you local machine only does one core, you can even use it to distribute over more of your cores… This means I can set up my 2 x RaPiM2 boxes as an 8 core C build engine. That will be very nice when I try Gentoo (that is source and you compile locally). The only requirement is that all the C compilers be at the same major / mid release. So x.y.z has to match on x.y and then all is good.

    Doesn’t help much with things like running a climate model, but hey, one bit at a time…

    Now back to that OMP FORTRAN not using multiple cores despite doing a
    export OMP_NUM_THREADS=4

    Yes, I can always just boot Red Hat Fedora for now when I want to use OMP FORTRAN… but it was no great shakes, so I was hoping Arch would do better…

  5. Larry Ledwick says:

    Since I am red-green colorblind I absolutely detest the linux use of color in ls, vi and such. The very first thing I do is unalias vi and ls when I log into a session on Centos, and if I use htop I use “htop -C” to get away from their stupid color choices. I especially dislike their use of dark red and purple on black backgrounds, those combinations are literally unreadable for me.

    Thumbs up on the “turn that crap off default”!

  6. E.M.Smith says:

    white / black always works and ought to be the default. I still have some b&w monitors…

  7. E.M.Smith says:

    Well, I got OMP (Open Multi Processor) FORTRAN to “go” on the Arch. It was the compiler directives. They needed to be pulled out to start in the first character position; and the first one, that had been “!#OMP” changed to “!$OMP” in keeping with what I found here:

    http://stackoverflow.com/questions/19590550/gfortran-openmp-no-threading

    The following sentinels are recognized in fixed form source files:

    !$omp | c$omp | *$omp

    Sentinels must start in column 1 and appear as a single word with no intervening characters. Fortran fixed form line length, white space, continuation, and column rules apply to the directive line. Initial directive lines must have a space or zero in column 6, and continuation directive lines must have a character other than a space or a zero in column 6. (emphasis mine)

    IIRC, the last system I tested this on insisted on the .f ending instead of .f90, but took f90 syntax. This one is picky the other way. OK… Whatever.

    BTW, the test results are what they are… This puppy just absolutely sucks at doing parallel FORTRAN. It might do better with really really long loops, but as it stands, it takes a LOT longer to run parallel on 4 cores than just crank on one.

    “time” command on single threaded version:

     Experiment          95
     Experiment          96
     Experiment          97
     Experiment          98
     Experiment          99
     Experiment         100
     mean  0.499993414    
     stdev   2.69877473E-05
    
    real	0m8.793s
    user	0m8.640s
    sys	0m0.030s
    

    So about 8.8 Seconds elapsed time, while on 4 cores:

     Experiment         100
     Experiment          74
     Experiment          49
     Experiment          25
     Experiment          75
     Experiment          50
     mean  0.499993593    
     stdev   2.75875791E-05
    
    real	0m48.024s
    user	0m39.170s
    sys	1m16.440s
    

    48 seconds elapsed time. 6 times as long.
    1 MINUTE 16 seconds system time compared with 3/100 second.

    Something in the system load is just badly handled.

    The variation in mean and std dev are due to this being a montecarlo thing with call random so it varies based on order threads execute…

    At any rate, the new ‘top” lets me see the load on the cores and I’ve run this a few times now. With 4 cores cranking they load up about 40%-80% each, hovering about 60% most of the time. With one, it pegs near 100% plus some other ancillary stuff on another core (likely the browser).

    Clearly the OpenMP overhead is just way high. No idea if there is some way to make ANY code run faster on the Pi using it, but as things stand now, it looks very sucky on context switches and interprocess communications. Just like on the other OS.

    No idea why, no idea if it can be fixed. Maybe I’ll just try distcc and see if C is more efficient at spreading the work around. (As gfortran is just a front end to gcc, one could, I suppose, catch the C in the middle and make it distcc and… )

    Oh Well. My quest for an efficient multiprocessor FORTRAN engine continues. (Maybe I’ll get that NVIDIA board… )

  8. E.M.Smith says:

    NFS is all in one package:

    pacman -S nfs-utils

    this is how to get rpcbind

    pacman -S rpcbind

    The lightweight DNS server:

    pacman -S dnsmasq

    Then the file systems and gparted disk formatter

    pacman -S squashfs-tools aufs-tools

    pacman -S unionfs-fuse

    pacman -S gparted

    And a bit of a grab bag of things I’ve added as I stumbled on them:

    echo “Added the distributed C compiler”

    pacman -S distcc

    echo “The pkgfile program is useful for various pakage queries ”

    pacman -S pkgfile

    echo “Then populate the database:”

    pkgfile –update

    echo “Adding the “fish” shell that has a package finding feature”
    echo “And is handholdy with suggestions on commands and syntax”

    pacman -S fish

    echo “Adding MPI Message Passing Interface for parallel processing”

    pacman -S openmpi python-mpi4py python2-mpi4py

    Still have a few odds and ends to find, like ‘transmission’ or other bittorrent client, and a VNC server / client, and the apache web server. Potentially also the xfs file system and f2fs-tools and maybe even the hfs file system if I find a need, and the package.

    So there’s most of it done, and only low priority stuff left for “someday” when I want to play with those odd file systems and / or set up a bittorrent server (though these two boxes are destined to stay inside the inner firewall so unlikely to be able to get bittorrent out anyway… Oh, and clean up, final re-write and final re-qa of the ABuildIt script finished polished version…

    But now, none of that is top of the ToDo list. So off to other things.

  9. E.M.Smith says:

    And another one… the time daemon is missing…

    pacman -S ntp

  10. I loved Ubuntu until the Unity GUI was introduced. Since then I have been using Mint which is like Ubuntu before Unity.

    As long as Mint remains simple enough for use by ordinary mortals I will stick with it given that Arch Linux does not seem to offer anything I need.

  11. E.M.Smith says:

    @GallopingCamel:

    My move to Arch is Raspberry Pi specific and ONLY because the hardware is just a bit too small and slow to make either Fedora or Ubuntu / Mint work fast enough. (Well, that, and not liking the slime green theme of Mint and the way it POPS a panel to full screen when it touches the upper limit… I regularly make a sort of tiling of windows with some touching the upper limit. Endlessly needing to shrink them back is a pain, finding out how to stop it is a pain, installing LXDE isn’t a pain…)

    On other hardware (x86) I’ve run Ubuntu and it was a decent distribution. Not exactly my cup of tea, as I’m more about “let me control” and less about handholdy ‘do things for me’ environments; but for “others” I’d not recommend my path (unless they were Unix / Linux folks of long standing). I started off doing whole system install / build from source tapes… and that is still to some extent my standard. (At some core level I really have a small distrust of sucking down binaries from The Internet and running them uninspected. There is a security exposure or three in doing that, and the compile time options are guaranteed to never match your specific hardware, so efficiency will never be the best it could be.) Yet for folks not of the system admin bent, having it “just happen” is usually a better path.

  12. E.M.Smith says:

    Just a note that sound, on Arch, sporadically transitions to a White Nose like state… No idea why, yet. Just sometimes embedded YouTubes and even YouTube at the site has sound that is like a waterfall… So Something isn’t quite right… OK, I’ll live with it, for now… but clearly there’s a “Dig Here!” issue on sound on the R.PiM2 under Linux in general… (Doesn’t work on most, sometimes works on Arch)

  13. E.M.Smith says:

    And we need to add rsync by hand… so for the future script, add:

    pacman -S rsync

  14. E.M.Smith says:

    “With a capitol P and that rhymes with Pool!”

    Finally had a moment to read the (dozens? of pages long) man page for “top” and figure out how to restore the normal typical default behaviour of showing the currently active processes at the top of the list (so you can have a window maybe 16 or 20 lines long to show what matters, not the 80 to 100 long if it is a static by PID list…)

    Found the answer in section 4c of the man pages:

           SORTING of task window
    
              For  compatibility,  this  top  supports  most of the former top sort
              keys.  Since this is primarily a service to former top  users,  these
              commands do not appear on any help screen.
                    command   sorted-field                  supported
                    A         start time (non-display)      No
                    M         %MEM                          Yes
                    N         PID                           Yes
                    P         %CPU                          Yes
                    T         TIME+                         Yes
    

    It is an “interactive command” so while “top” is running, you type a ‘P’. That’s it.

    Thus ends a few weeks of minor annoyance verging on aggravation…

  15. E.M.Smith says:

    I’d complain more but…

    I went to test OpenMP under FORTRAN on the Arch install. Every run used only one core… The plain code took a bit over 8 seconds. The OpenMP code a bit over 22, so still slower… But why only using one core? Environment variable set? Check. Right code / binary executed (after a recompilation as it was not binary compatible from the last build under Debian to Arch…) Check.

    Turns out that Arch, but default, gives the middle finger to OpenMP:

    https://bugs.archlinux.org/task/32103

    I would like to use openmp too. It is worth nothing this option is completelt safe and independant from –enable-threads

    From the documentation :

    –enable-openmp: Like –enable-threads, but using OpenMP compiler directives in order to induce parallelism rather than spawning its own threads directly, and installing an ‘fftw3_omp’ library rather than an ‘fftw3_threads’ library (see Multi-threaded FFTW). You can use both –enable-openmp and –enable-threads since they compile/install libraries with different names. By default, the OpenMP routines are not compiled.

    Sigh…

    OK, so it has a sort of a clue of a ‘how to fix it’ in the answer:

    The upstream FFTW project supplies two libraries for multithreaded computations: pthreads and openmp. They are stored in differently-named .a and .so files, so both options can be compiled into the same package with no problems. See http://www.fftw.org/fftw3_doc/Installation-and-Supported-Hardware_002fSoftware.html for a basic summary.

    I tried compiling the fftw package from the ABS tree after replacing:

    CONFIGURE=”./configure F77=gfortran –prefix=/usr \
    –enable-shared –enable-threads –enable-type-prefix”

    with:

    CONFIGURE=”./configure F77=gfortran –prefix=/usr \
    –enable-shared –enable-threads –enable-openmp –enable-type-prefix”

    in the PKGBUILD, and it seems to have worked with no problems and without a significant size increase compared to compilation without that added flag.

    So “all” I need to do is recompile the compiler with the magic flags set… that on the R.Pi will take about a day…

    I’d likely do it, were it not for not having a day laying around and for the fact that single core with the directives in place but no libraries actually called it almost tripled the elapsed time to run… and on the Pi has been a real dog under other Linux flavors…

    But still, is it really all that hard for the folks building Linux releases to think that maybe, just maybe, there’s a whole world full of Engineering and Supercomputing and R&D folks who actually DO use FORTRAN, and like it and expect it to actually work multicore / multi-host with parallel compiler directives “out of the box”?

    Sheesh…

    Oh Well…

    Add to the Arch build script “compile the compiler with openmp flags set”…

  16. E.M.Smith says:

    Well, I finally go around to exploring just why wget was not found by a ‘pacman -S wget’… It’s in the “user contributed” library of AUR. OK… named wget-git of all things…

    So I found out how to use the AUR… went here:
    https://aur.archlinux.org/packages/wget-git/

    clicked the “download snapshot” button, downloaded the compressed tarball, un compressed and untarred it and did the “make” thing. Result?:

    chiefio@ARCH_pi_64:/BUILD/wget-git$ makepkg -sri
    ==> ERROR: wget-git is not available for the 'armv7h' architecture.
    chiefio@ARCH_pi_64:/BUILD/wget-git$ 
    

    OK…. and ‘why?’… comes to mind…

    Now I can either get into the business of porting wget to the pi under Arch (given that the other distributions have it already, that ought to be pretty simple) or just say “never mind” to using Arch as the default build monster platform… Since it is also systemd afflicted, I’m not seeing the percentage for me and my time.

    I’m still using it for the Daily Driver for browsing as it is just a bit faster than the others, but at this point I’m going to set up a different set of two matched chips with distcc and matching libraries for any big build I do. That ought to take about an hour, maybe two, when the time comes. Until then I’ll do builds single threaded. IFF at some point speed becomes an issue, then I’ll flow the other way and build the two matched chips.

    I really find it hard to believe that wget is so low on the port priority list. It is a central command for getting things off of the web.

    FWIW, this use of a source package build archive is very similar to Slackware. At this point, given the need to build packages from source, I’d lean toward Slackware or LFS. Arch did come up nicely with full sound and video, so I’m going to keep using it for the browsing / media stuff; but without wget, it becomes a bit more painful as a build platform. Yeah, yeah, I could use curl or ssh or ftp or rsync or… but really… it is one of those things that just ought to be there long before you make video go…

Comments are closed.