Newsboat

Newsboat is the Mutt of RSS readers. Works and looks pretty much the same as mutt. In making the conversion, I learned that I have over 500 RSS feeds, which in combination with a few dozen newsletters via email is how I discover the material to post to this blog.

I used to use an app on my phone to scroll through when I had time, but I found using Newsboat sped up the process considerably. So, even though I have to sit down at the computer and go through each feed, Newsboat will be my default method moving forward. Recommended.

Revisiting the ASUS C201

Two and half years ago, I came across libreboot. I was looking for a linux laptop and came across this bit on the ASUS C201 page:

“This is unlike the other current libreboot laptops (Intel based). In practise, you can (if you do without the video/wifi blobs, and replace ChromeOS with a distribution that respects your freedom) be more free when using one of these laptops.”

ASUS Chromebook C201, libreboot.org. 2017

At the time, I was focused on exploring what it would mean to have the most free laptop available, and it led to the post: “Freedom & Limits: The ASUS C201 with libreboot and Parabola Linux.” The net: the machine did not have a reliable way to be free to the level of passing the requirements of the package of “your-freedom” and still be usable. The main problem is that it didn’t have a functional web browser and updates tended to bork the machine. I managed to get Arch, Parabola and Devuan linux installed on the machine. However, the installations kept breaking for various reasons, maybe half the time due to user error and half because ARM versions of the distributions were problematic for one reason or another.

In July 2019, I tried PrawnOS. It’s a nice distribution of Debian that actually was able to install to the computer’s onboard drive, which I couldn’t figure out how to do with the previous distributions. It provided a working system. Still, it really did not have a web browser that worked, I think it was still using Dillo. So, I left off at this point, happy to have learned something from the exercise.

A few days ago, I tried turning on the C201 again. I found that the distribution wouldn’t update. The documentation at github suggested I should reinstall PrawnOS. Easy enough.

I had already done the work of removing the security screw, upgrading the BIOS to libreboot, and had the machine in developer mode. If you aren’t there yet, then refer to the libreboot documentation and get to the point where it says Debian, Devuan or Parabola. Then, come back here and install PrawnOS instead.

To install PrawnOS, get the most recent release, which is available as a binary for people like me that don’t want to build from source. I tried using the browser Dillo on the C201 machine, but it kept timing out. So, I turned to wget.

$ sudo apt-get install wget
$ wget -c url_to_most_recent_release

Once you have the release, you need to copy it to the SD card. If you aren’t sure, you can always take out the SD card, run lsblk, then put the SD card back in and run lsblk again. The additional blk device is your SD card that you plug into /dev/$SD_CARD below..

$ sudo dd if=PrawnOS-*.img of=/dev/$SD_CARD bs=50M status=progress; sync

Then, you turn off the device, reboot and hit CTRL-U quickly at the menu to boot off the SD card. After booting, it gives you a prompt. Type in root, there is no password. Then, you are given a root prompt. Type:

# InstallPrawnOS

At this point, I was really blown away by how much this has been improved since the last time I have tried installing PrawnOS to this ASUS C201. PrawnOS is a Debian-derivative, with an encrypted partition. I typically do this with every linux install, and it was nice that it was built into the process. It offers sane defaults, such as using xfce4 over gnome, since gnome seems to have problems when used on an ASUS C201 machine. It also gets more pragmatic about freedom. Freedom is useless if it means you aren’t free to do something fundamental to using a computer, like browse the web.

So, PrawnOS includes Firefox-ESR, which the Free Software Foundation doesn’t consider free because it implements digital rights management technology. However, it is essentially required in order to use a computer normally. PrawnOS makes the pragmatic choice.

After I went through the set-up process, I was able to install emacs and add-ons. I did have some trouble updating the machine, whereas xorg threw configuration errors, but nothing that made the machine unusable like I have encountered in the past. I also continue to not be able to use the touchpad. However, for Chrome-level computer use, email, web browsing and so forth, the ASUS C201 seems like it could be a viable machine.

e Foundation

“We build desirable, open source, privacy-enabled smartphone operating systems.

https://e.foundation/

e Foundation is a recent fork of LineageOS. It looks like it supports older devices, such as the t0lte device (aka Samsung Note 2) that I had to upgrade from when LineageOS stopped supporting when they rolled out Android 9, Pie. So, of course, I’ll be trying it in the next few months.

Min, The Minimalist Web Browser

See quick definitions and answers with information from DuckDuckGo, including Wikipedia entries and more. Jump to any site quickly with fuzzy search. Or search through the full text of every page you’ve visited, even if you don’t remember the title.

Min

I haven’t tried this browser. I like the idea. But, I think being able to use a SOCKS5 proxy is important, and I don’t see that functionality on a casual scan. Still, I thought it might be worth looking into as a secondary browser.

Static Websites with Hugo

I created a website back in 2010. It’s a professional website. It has a personal profile, description of the work, location and contact page. None of these change with any regularity. So, I just needed a few static pages.

I wanted to get up something quick. So, I had coded what I needed over a week, wrote all the copy and put the site up. Back then, around a quarter of the population had a smart phone, so it did not seem necessary to worry about mobile access to the site. So, I have a great site that works well for the PC. But, it’s useless on mobile. That’s not going to work in 2019.

But, I’ve been dreading doing the update. I figured it would be an unmitigated pain to code a site that worked across platforms. Being inclined to take the easiest route to solve a problem, I thought I might check to see if there was some free software that would help me make the transition with a minimum of fuss.

Turns out, there’s a lot of open source software to build static websites. Jekyll and Hugo are probably the most popular. But, Wintersmith, Harp, Middleman, and others are all viable options. I ended up using Hugo because of the two top options it didn’t require installation of any additional software on my system.

It ended up taking about two days to port the website content to Hugo. Most of the time was just understanding how Hugo works, such as the need to create directories and then put an index.md in each of them to get the content to link up right from the main page.

In retrospect, there are two main considerations in this process. One, pick a system that will convert your old website for you, if you have a large site. For small static sites like mine, this really isn’t a problem. Two, make sure whatever you use has good theme support and choose a theme that has the built in look and feel you want for your site.

For example, I looked at Nikola first, but its theme support is largely non-existent. It became apparent I’d have better luck choosing the top two options after looking at this one.

Once the choice of system and theme is made, the coding and porting of sites is pretty straight-forward. I did have to noodle around a bit with templates to get the result I wanted, but it wasn’t much different from using HTML, just at one level of abstraction.

If you have the need to put up a small website that works on both PCs and mobile, using a static site generator like Hugo will save you a lot of time and be relatively painless. Recommended.

Personal CRM Done Right – Monica

“Monica helps you organize the social interactions with your loved ones.

Organize. Follow-up. Strengthen your relationships.

Monica is for people who have jobs, a family, and are busy trying to find a good work/life balance. So busy, that they don’t have time anymore to remember to call a friend, say happy birthday to a nephew, or remember to invite someone special for dinner next week.”

Monica

Either a sign of an impending Apocalypse or exactly what you’ve been looking for. Take your pick.

Why I Use Old Hardware

“My 11-year-old laptop can compile the Linux kernel from scratch in 20 minutes, and it can play 1080p video in real-time. That’s all I need! Many users cannot afford high-end computer hardware, and most have better things to spend their money on. And you know, I work hard for my money, too – if I can get a computer which can do nearly 5 billion operations per second for $60, that should be sufficient to solve nearly any problem. No doubt, there are faster laptops out there, many of them with similarly impressive levels of compatibility with my ideals. But why bother?”

—Drew Devault. ” Why I Use Old Hardware. drewdevault.com. January 23, 2019.

One of the advantages of using free software is that support for old hardware tends to get better. The more free you go, say to the level of wanting a free bootloader such as libreboot and all free software drivers, the more likely you are either using old hardware or you are spending a lot of money for a free machine from companies like Purism.

My main computer is a Lenovo Thinkpad T400 with libreboot. You can buy one for <$150 on eBay.

Setting DNS Manually on Ubuntu Linux

Introduction: Domain name servers (DNS) provide the numerical addresses for sites on the Internet. When you type cafebedouin.org into your browser, your computer queries a DNS name server to get a numerical address. This numerical address is then used to contact the site.  Normally, configuring DNS is handled behind the scenes by Dynamic Host Configuration Protocol (DCHP) automatically.

For some situations, you’ll want to set a different DNS server than the one set by DCHP. Maybe your Internet Service Provider (ISP) uses their own DNS server that is slower than Google’s DNS server. Maybe you use a Virtual Private Network (VPN) and want to stop DNS leaks to your ISP.

In Linux and other UNIX-like operating systems in the past,  you would change configuration files, such as /etc/resolv.conf or /etc/dchp/dhclient.conf, to set DNS manually. 

The problem: Changing resolv.conf and dhclient.conf configuration files does not work in Ubuntu.

The solution: Starting with 17.10, Ubuntu uses netplan to set DNS. On my test machine, netplan’s configuration file looks like this:

version: 2
   renderer: NetworkManager

It is possible to manually do the job of DCHP in netplan, but it’s complicated. If your objective is to just change the DNS servers, there is an easier way to do it. Use Network Manager.

There are files in the directory /etc/NetworkManager/system-connections that define how DCHP should work for each network connection. To the files listed in that directory, add the following with DNS server IP addresses under [ipv4]:

dns-search=
method=auto
dns=84.200.69.80;84.200.70.40;45.33.97.5;
ignore-auto-dns=true

The DNS servers in this example are from FreeDNS and DNS Watch.

After adding the DNS IP addresses, separated by a semi-colon, then from the command line, do: sudo service network-manager restart

Once completed, you should be on your DNS server of choice. It’s a little inconvenient to have to add these lines to each network-connection file, and there might be a better way. But, this will work.