Friday, April 5, 2019

Brief note on Manjaro and libraries, and install of Arch, then back to Manjaro

Distrohopping has not been my way, of late.  For a few years I have leaned heavily toward Arch Linux's infrastructure.  When stymied by Arch, I have several times thrown up my hands and installed Manjaro.

Manjaro is fine with me.  I am using Manjaro i3 Edition of late.  For over a year, I think.  I'm happy with i3.  Especially on a laptop, a few years old, i3 lag-freekeeps me lag-free.

This week I was furious when I learned that Manjaro (hence Arch) does not support the use of /usr/local.  I'm not ready to write a long piece about this, but it's pretty much the only big deal I have encountered with Arch, requiring an intervention to use it in my accustomed manner, my muscle memory workflow.

Well, maybe Muscle Memory is a little too much to say abot this glitch.  It's a PITA, though.   I installed a library in /usr/local/lib, and discovered that a certain program I had installed would not run, due to the need to take extra measured to ensure that /usr/local/lib would be visible to the linker.

The program was tideeditor, from the xtide suite of programs.  I have been self compiling these programs for years, without encountering this problem.  In about 1993 or 1994, I discovered Debian, or maybe 1995, after using Slackware for some years.  I learned from my experience with Debian the value of the /usr/local subtree: one thereby does not touch the files in the distribution itself.  I can install programs, do anything in /usr/local/ and it is mine, not part of the infrastructure provided by the "maintainers."

This week, after over 25 years of using GNU/Linux, I learned about this problem with /usr/local.  I went overboard, and decided to install Arch.  I was in a rush and apparently made some mistakes---not to mention that my storage is filling up on my Thinkpad Yoga.  The upshot was a rat's nest of errors.  I was unable to use Emacs. 

I had attempted to modify the instructions for a video for installing archlinux in 10 minutes using systemd-boot as the boot manager, while following the Archlinux Installation documentation.  It worked, but I seem to have skipped or messed up some steps, at least twice.  Although the new machine booted fine, I was unable to use Emacs as I am accustomed.

So after fiddling around a full day, and then some, I finalliy reached for Manjaro i3 Edition.

This is a masterpiece of guru magic.  Very well thought out.  A conky on the desktop screen has the important keystrokes on display in any open desktop. 
This installation is working extremely well, as I have modified it over time to fit my needs.  But not least of the fine features of this Manjaro i3 is the setup of the boot manager (which is grub.  That's fine.).  I was able to pick up the previous Manjaro right where I had left off.  And---this is what I like---now that the new Manjaro boot manager set up has been booted through and into the old install, on a different partition, it will remember this and boot to it every time, as long as I want.  That's a stroke of good magick.

Manjaro installed from a flash drive in perhaps 10-15 minutes til first reboot.  Few questions asked.

I follow this simple rule, which leaves me pain free: ALWAYS USE A SEPARATE /home PARTITION.  In any install of a distro, one can (in my experience) always find a way to specify that partition during the install process.  Step 2: I use dropbox for work that needs to be portable, including some config files.

Leaving me time to write the short bit.

By the way...

the program I was installing was tideeditor.  The library is libtcd.  I wrote a hasty email off to David Flater, the developer of Xtide and friends.  He answered with cut and pasted FAQs.  To his credit, he has always answered such inquiries from me, even though I have so often failed to check the FAQs before emailing.

Even more is this to his credit because, as I discovered when re-installing libtcd, a long message at the end, after typing "sudo make install," he has included a long explanation of this very problem---that the library is installed in /usr/local/lib, and that therefore some further steps may be necessary to make the library visible to programs.  WOW!  It's on me.

The best fix is to include a file in /etc/ld.conf.d/ pointing to /usr/local/lib.

And one question remains: why did this not happen on any earlier installs?




No comments:

The Free Software Foundation (FSF) is a beacon

I just stumbled upon a statement on the website of the FSF ( fsf.org ) about the appointment of three new board members of the organisation....