Pro tip: Make sure you are not scaling a picture of your family on your desktop background. Avoid being asked “Do I really look like that?”
For my X11 friends…
[✓] feh --bg-fill
good
[✗] feh --bg-scale
bad
Had a great vacation in the Dominica Republic. We really enjoyed getting away as a family and spending time relaxing. Such a beautiful country and wounderful people!
It seems like Microsoft is killing it with the Surface lineup. I am on vacation and I have seen more Surface products than MacBooks or Dell laptops combined. This is obviously not backed up by sales data, but the experience is real if not puzzling.
Doing a complete reinstall of Nixos is so easy. Configure drives, run two commands and I am off to the races with everything just the way I want it. 🥰
Nothing wrong with this…😥🤑🙄. Health care should not be a cash cow. People are literally dying while other get rich off it. apple.news
UnitedHealth Raises Earnings Outlook as Quarterly Revenue Up 13% - The Wall Street Journal
Finished reading: Leviathan Falls by James S. A. Corey 📚
I am sad that we will not see this play out on TV, but a good end to the series. I almost cried a few times in the final 10 or so chapters.
Who doesn’t throw plates at the wall in a dining room and clear tables. I know I did that all the time when I was in the military. 🫣
I am starting to worry that if the Padres make it to the World Series this year it’s going to be a flash back to 1998 with a behemoth of a Yankees team.
A local book store sent me a package. It went from Washington DC (20 miles away) to Memphis TN. Not sure how that is effective.
Can someone tell me if a law was broken leaking the draft Supreme Court ruling? I have not seen that question answered. I really want to understand what level of repercussions are involved, not if it was the right thing to do or not.
Recently found out about Libro.fm. I have hundreds of audiobooks on Audible, but I am canceling my membership. I don’t want to support Amazon. Libro.fm provides DRM free downloads and will give a portion of the sales to a local independent book seller.
Finished reading: The Dispossessed: An Ambiguous Utopia by Ursula K. Le Guin 📚
I had never head of this book before, but it was a great read and I think more relivant today than when it was written.
Nix & Emacs
Last week I posted about now I moved to Nix and the ways that it is different from the typical Linux distribution. One of the things that changed for my installations was the way that I manage Emacs packages.
ELPA and MELPA packages as available as part of the distribution. Thanks to that effort, I can install Emacs and ensure that I have all of the additional tools that I want installed at the same time.
{
programs.emacs = {
enable = true;
extraPackages = epkgs : [
epkgs.magit
epkgs.nix-mode
...
];
};
}
Installing additional packages this way means that I do not need to rely on use-package
to download them when Emacs starts up. I can however still take advantage of use-package
on in my configuration that way when I use another machine, like my work computer, everything will still work. Since the package is installed, and loaded into Emacs ensure: t
will do nothing on Nix.
(use-package vertico
:ensure t
:bind (:map vertico-map
("C-j" . vertico-next)
("C-k" . vertico-previous)
("C-f" . vertico-exit)
:map minibuffer-local-map
("M-h" . backward-kill-word))
:custom
(vertico-cycle t)
:init
(vertico-mode))
Nix
I have been using Linux since 2001, most of the time using Red Hat Linux and Fedora. With a short spell of Arch around 2005-2006. Recently I learned about Guix and played with it for a bit, I thought it was cool, but it had a few issues so I moved on to Nix. Both Guix and Nix are very different from traditional Linux distributions. They are both based around expression languages that enable the OS to be configured as code. For example, if I want to install and configure Xmonad I could use the following or at it to my configuration. (This is code for another tool, home-manager, but the idea is the same)
{
xsession = {
enable = true;
windowManager.xmonad = {
enable = true;
enableContribAndExtras = true;
extraPackages = hp: [
hp.dbus
hp.monad-logger
hp.xmonad-contrib
];
config = /home/zoglesby/s/dot/xmonad/xmonad.hs;
};
};
}
This type of configuration allows for a workflow similar to Ansible, Puppet, or Chef. The difference is that the package manager and the operating system are aware of the state. Role backs, for instance, are supported, even at the boot menu level. If you change your configuration and break the start-up process, you can simply boot into the previous configuration and fix it. This feature is built-in functionality that the OS is aware of, not something bolted on like many of the ZFS/package manager solutions that are popular now.
Nix is also not dependent on the traditional file system structure for binaries that most Linux distributions use. While you typically find Python at /usr/bin/python
or something similar, Nix uses a hash such as /nix/store/hb1lzaisgx2m9n29hqhh6yp6hasplq1v-python3-3.9.10/bin/python
. This hashed path enables several cool features, but the first is that you can use more than one version of Python or any other tool.
Nix-shell also allows you to have dependencies that are not in your $PATH
for specific projects or folders. So you can cd
into a directory where all of your dev tools will show up, but they will not be there while you are doing random things on your computer. It can also be helpful if you just need to run a program once but don’t want to keep it installed as it can be cleaned up automatically later without you having to do anything.
[zoglesby@trill:~]$ which python
which: no python in (/run/wrappers/bin:/home/zoglesby/.nix-profile/bin:/etc/profiles/per-user/zoglesby/bin:/nix/var/nix/profiles/default/bin:/run/current-system/sw/bin)
[zoglesby@trill:~]$ nix-shell -p python3
[nix-shell:~]$ which python
/nix/store/hb1lzaisgx2m9n29hqhh6yp6hasplq1v-python3-3.9.10/bin/python
I want to cover more about Nix in more depth in the coming weeks. For instance, how I have moved all of my servers to it, or the Surface Go 2 I am using Nix and Gnome on for a Linux-based tablet.
Had to bust out the old DVD drive for my computer tonight. Good thing I kept it around. Tomorrow maybe I’ll find a ZIP disk I need to read.
Currently reading: The Complete Malazan Book of the Fallen by Erikson, Steven 📚