#+SETUPFILE: ../../../template/level-2.org
#+TITLE: Weekly Research
#+DATE: <2021-10-24 Sun 10:57>
#+AUTHOR: vaeringjar
#+EMAIL: vaeringjar@land
#+DESCRIPTION: Weekly research and followup post.
#+KEYWORDS: terminals window managers graphs version control


* Terminals follow-up turned into a look at WMs and Wayland

While reading about terminals, I came across a thread from a few years
ago where someone suggested their terminal supported the following
command, but others did not. Unfortunately, I cannot find the link
anymore.

#+BEGIN_SRC bash

# This will break most shells or terminals
echo -e "\033(0"

#+END_SRC


So I tried that terminal and it still broke. It broke in everything I
tried. Moving on for now...

Along the way I tried several DEs and WMs I had not used in a
while. Xfce has been my daily driver for the last two or three
years. I mainly tried out IceWM and LXDE which I had previously used
as my daily driver before Xfce.


** IceWM

I spent quite a bit of time using IceWM. I mostly used the win95
theme. It reminded me of when I used Tails in the office because at
the time some folks gave me flack for using "Linucks". That slowly
stopped. And now I pretty much haven't used Tails since before the
pandemic now.

I have pasted the output below, with a minor edit to the desktop
background image path. Some of these combine things I pasted from a
couple sources from the faq or forums. Note that every time I switched
it mutated the theme dotfile, so I left it for posterity. My
lockscreen did not work, but not a big deal when I have a door on my
office. Not sure if another WM/DE config had clobbered it. I did
notice some changes to xscreensaver.

#+BEGIN_SRC bash

~ $ tree .icewm/
.icewm/
├── preferences
├── startup
└── theme

0 directories, 3 files
~ $ cat .icewm/startup 
#!/usr/bin/env bash
set -e
set -u
set -o pipefail


xcompmgr -c &
~ $ cat .icewm/theme 
Theme="win95/default.theme"
#Theme="default/default.theme"
#Theme="win95/default.theme"
#Theme="default/default.theme"
#Theme="win95/default.theme"
~ $ cat .icewm/preferences 
# Display desktop background centered and not tiled
DesktopBackgroundCenter=1 # 0/1

# Support for semitransparent terminals like Eterm or gnome-terminal
# SupportSemitransparency=1 # 0/1

# Desktop background scaled to full screen
DesktopBackgroundScaled=1 # 0/1

# Desktop background color
DesktopBackgroundColor="rgb:00/00/00"

# Desktop background image
DesktopBackgroundImage="/home/USERNAME/wallpapers/foo.jpg"

#+END_SRC


** Wayland

I decided to look into DEs or WMs with Wayland support. Though I
currently use Debian buster, I often take a look at other distros such
as gnu guix system (formerly aka just guix aka guixsd) or arch just to
see what they've packaged. I went down some more rabbit holes. I found
this fun command to print out whether I had x11 or wayland.

#+BEGIN_SRC bash

loginctl \
    show-session \
    $(loginctl | grep $(whoami) | awk '{print $1}') \
    -p Type

#+END_SRC


** hikari

I haven't spent much time with hikari yet. But I did watch their video
on why they chose darcs which seems like one of the best explanations
I've heard for the whole "why not use git?" question.

That said, I want a compositing WM because I already do tiling inside
emacs anyway. That said... sounds like an interesting massive spin-off
project to write an elisp-extensible WM with emacs compatibility. Not
that I have the time for that since I barely have time for my blog.


* Folks who want to use Windows

Two well-seasoned staffers I work with asked for help this week. They
do not feel comfortable using anything but Windows, but want to
develop some CLI apps in Windows for use on bash.

A side note: Personally, I feel like if someone can survive the
migration over the last decade from XP to Vista to 7 to 10, migrating
to a Gnome or KDE or UbuntuDE shouldn't cause any more
confusion. Though I didn't come here today to complain, so back to
business.

I gave them several suggestions:

- Use cygwin. It has some unique UI steps, but it feels like a Windows app.
- The Debian WSL feels like a tty to a remote running Debian.
- Windows Terminal might work, but I've never used it.
- Alacritty can work on any system. So if they ever decide to not use
  Windows they could just migrate their dotfiles (if they do that).
- Chocolatey might be a good idea if they want a package manager.


* See also

- https://hikari.acmelabs.space/videos/hikari-darcs.mp4
- https://github.com/alacritty/alacritty/issues/3075
- https://chocolatey.org/


* Reading

- https://blog.cleancoder.com/uncle-bob/2017/03/16/DrCalvin.html
- https://medium.com/@amannagpal4/how-to-create-your-own-decentralized-file-sharing-service-using-python-2e00005bdc4a
- https://github.com/golgote/neturl
- https://lispcookbook.github.io/cl-cookbook/web.html
