Tue May 23 09:27:46 PM CEST 2023

# how I got into unix

I see these *my  journey with unix* type posts online  and I thought I'd
write my  own. Now, I've only  been using GNU/Linux systems  daily for a
year and  I'd rather avoid  writing about  myself in general  (it screws
with my ego and I overshare), but here I think there's value to it:

1. There's a pattern to these posts. It's always "someone introduced me
   to it" or "I am a certified software engineer and there's this
   ubuntu thing", "I was 20 then and am 40 with kids now". Not enough
   losers like me writing these. I'd like it to be clearer how people
   get into nixes today, and how any idiot can go for it with little
   help.

2. While search engines are happy to provide canned answers as to how
   you *install steam in linux* or *listen to music in terminal*, they
   will not tell you how people actually *use their systems*. You have
   to dig for these on forums, chatrooms, friend's brains, but in my
   experience mostly gay blog posts like this. It's how you learn what
   the thing is capable of, and hopefully how to make it sing, not
   smash it's /usr/balls until it spews the right note. Basically, new
   people always need to read more of these, ideally contemporary ones.

3. It was mostly painless for me. I think I did something right.

## the first dip

Sometime in 2021, I  was still using windows 7. I  was an early adopter,
but this  installation, committed upwards of  5 years earlier on  a then
brand new rig, was already *the old windows 7*. I saw the writing on the
wall and started thinking about updating,  but not to windows 10 because
as far as I know that thing sucks. I don't have money for apple products
and heard bad things about them.  I quickly converged on something linux
and one evening decided to get started on the move with a test install.

I'm   not  a   believer   in  trying   daily-use-things  in   controlled
environments, so it couldn't be a virtual machine install or just toying
in a livecd. Didn't  want to mess up my rig either, and  I didn't have a
spare disk to do it cleanly. However, I had a 2008 lenovo laptop I would
use for windows xp gaming.

I backed up  the porn and wiped the  disk clean with dban -  for no good
reason. At  that point, I'm  perfectly clueless about computer  stuff. I
can put it together with some online searches and am proficient at stuff
I'd use  it for  - piracy,  games, video editing  - but  if you  tell me
there's magic gnomes inside the CPU I'd buy it.

Next came  the choice of  my first distro. I  briefly thought to  ask my
more IT-attuned friends for advice, but they don't daily drive unix so I
figured they'd  be stupid  about it.  Indeed, later  one prompted  me to
install  Manjaro,  a piece  of  advice  I  wouldn't give  anyone,  ever.
Instead, I turned to my other trusty source of IT tips: the /g/ wiki and
Mental Outlaw YouTube channel. Everyone starts somewhere...

Window shopping for an iso, first issues have arisen:

1. I only have an old 1gb usb stick to put the iso on. Most are bigger
   than that.
2. The ones that do fit are network installers, and I'm reading these
   have issues over wifi. It's true, but I shouldn't have worried about
   it as much as I did. The laptop has an ethernet port, but I'd have
   to crash on my flatmate to access our router, and I'm not doing
   that.

I settled on some arch iso, which the youtuber has said can install over
wifi, and is around 800mb. I put on  his tutorial and followed it to a t
- finishing on  a neofetch call and obnoxiously  sharing the achievement
with friends  included. I  didn't really  know what I  was doing,  and I
didn't learn much beyond editing text files with nano - a skill that has
quickly proven useful, arch being the DIY tweaker distro.

Over the next few days, my favourite resource was actually the /g/ wiki.
It  had decent  software recommendations  and  linked to  some old  blog
posts, most useful of which were z3bra's on z3bra.org. This has taken me
through a  small nixers.net  rabbit hole  - I learned  a lot  from these
guys, though never bothered to interact. Site seemed a bit dead too.

Eventually, with  the help of  these and arch's  wiki, I put  together a
201X  looking  *rice* using  spectrwm.  It  had  the terminus  font  and
everything.  Fonts were  actually the  most trouble  I think,  alongside
audio. I  reused my Dwarf Fortress  color scheme. I was  pleased to note
the old  craptop can browse the  modern web, play videos  and music, and
even the odd video game, just  fine, using familiar programs like mpv or
firefox no less. Spent another few  days doing just that and toying with
my spectrwm  config, then deemed  the experiment successful and  put the
laptop back in my drawer - *I'm certain now, linux is the way.*

Lessons learned:

-   nobody knows shit
-   gnu/linux works
-   unix is easy if you can read

I started plotting the move on my main  rig: the first step was to buy a
brand new ssd for  the install, so I can safely setup  a multi boot with
my windows 7 - this did not happen, I had no money for this crap.

## the first deep dive

May of  2022, some failed  job hunts later, I  found myself living  in a
trailer in  bumfuck nowhere.  For my  computing needs, I  dug up  a 2016
thinkpad  edge from  my parent's  place. It  had 16gbs  of ram  for some
reason, that's more than my rig. I  wiped the drive and I wasn't putting
windows 7 on it.

I still  weren't confident  enough in  my linux  skills to  live without
access  to a  windows boot,  so I  thought I'd  finally figure  out this
multi  boot thing.  I installed  windows 10  first, only  after manually
partitioning to  make the EFI  partition bigger, as  recommended online.
The windows, approached in informed manner,  weren't as bad as I thought
it'd be, but still abusive. I ended up booting into it to play games and
talk  on  discord. But  most  of  the time,  I  was  tinkering with  the
GNU/Linux installs - plural.

I wasn't impressed with Arch during my  test run, so I looked into other
distros.  I  could use  a  bigger  usb stick  now,  so  you'd think  the
selection would be massive - but my criteria quickly narrowed it down to
a handful. The criteria were:

-   no systemd
-   not reliant on another distribution
-   actively maintained by trusted people

I really thought I weren't asking for much. The choice came down to:

-   Slackware
-   Guix
-   Crux
-   Alpine, which I thought weren't really for desktop use

Slackware  seemed by  far the  easiest to  use, and  could do  a massive
install without  internet connection which was  still a pain, so  I went
with that. I screwed the initial installs a few times toying with kernel
and trimming down unnecessary packages, but after that it was a pleasant
experience. However, one  of it's particularities is how  dumb simple it
makes everything. This  results in a messy system  unless you're willing
to prop up  some conventions yourself, something  I weren't particularly
good at.  It also brought  up some  feelings on how  important packaging
conventions and  how crappy  community maintained  repos are,  faults of
both being a bit of a double whammy after adventures in arch.

Later I hopped  to Peppermint - a debian/devuan derivative  - on a whim,
and found it to be usable, but install  with too much crap and a mess of
patches. I  enjoyed APT so much  I thought I'd try  tracking the testing
repos, but Peppermint  couldn't do that, so I finally  landed on Devuan,
which I've been  using on all of  my machines since. I  wouldn't call it
the best distro, or even a *good*  one for desktop use, but I don't know
a better  one and I like  how orderly it's constructed  and patched. APT
though, is easily the best package manager.

I also briefly fooled with Puppy  Linux and Alpine Linux frugal installs
on usb  sticks, just for  kicks, chasing  the portable system  dream. It
sucked. Puppy's ecosystem felt particularly  full of bad ideas (and some
really good ones). Alpine was overall interesting. I still keep it in my
mind for regular use, but I favor GNU software.

During this time, I was trying out a lot of software, trying to find the
best one for everything I do - same as I did on windows way back, before
settling into my picks for years after, but worse, because here I had to
pick stuff  as basic as my  window manager. My favorites  ended up being
ratpoison, notion, and pekwm. I also briefly enjoyed the Mate DE, but it
was too busy for  me and I just recreated the parts I  liked in pekwm. I
generally favored the software with  the least dependencies, with GUI or
otherwise.

At this  time, scouring the web  for how people use  unixes, looking for
programs,  inspiring screenshots,  general  usage tips  and history,  it
really hit  me what's happening  here. GNU/Linux isn't really  a drop-in
replacement  for  windows. It's  a  good  environment  made for  and  by
programmers, in  contrast to windows which  (now more than ever)  is dog
shit  all  around  and  made  for idiots.  This  means  means  the  more
unix-attuned - good! - programs wil not be palpable to mortals. You want
a decent OS today,  you kinda need to grow a wizard  beard or it's gonna
be a struggle.

I went ahead  and started my studies in *advanced*  unix magics with the
book *The Linux  Command Line* by William Shotts. It  was recommended to
me alongside *How Linux Works* and *Linux from Scratch*, which I haven't
bothered with  so far. I  think it  set me on  the right path  and would
recommend it to everyone. After that, I started writing godawful scripts
(some of  which I still  use because they  just werk) and  studying more
standard unix tools like coreutils and awk  - which put me up to reading
more Kernighan,  among other  things. I  somehow fell  in love  with the
simplicity of it all allowing absurdly complex actions.

Lessons learned:

-   people will use really bad software and recommend it to you
-   there are no good operating systems
-   but you can take the good parts of them anywhere if they fit in your
    brain
-   code some it's easy

## rediscovering the past

January 2023, I was reunited with  civilization, and got hold of some of
my old crap  - among them, a Compaq Armada  E500, a particularly popular
laptop in  years surrounding  2000. Sporting a  single core  Pentium III
processor, 6MB  ATI Rage  graphics card  and 512mb  of ram  (the maximum
supported - it'd  ship with something closer to 64mb.  someone took care
of it!), I figured this machine could do just about everything man needs
in 2023. It  couldn't boot stuff from  usb, so I bought a  few cds (mine
doesn't have  a dvd  reader), burned  a devuan  netinstall disk  and got
busy.

I was pleased  to note just how  right I was. I browsed  web on netsurf,
chatted using discordo (through ssh -  cheating!), read news and mail in
newsboat and mutt, read  books in mupdf, and wrote code  in kakoune - an
editor I've settled  into after trying the usual suspects  and more. The
desktop was  the familiar pekwm.  The last two -  both c++ programs  - I
compiled on the machine, since I wanted newer versions than available in
stable repos,  and didn't want  to mess up  my other machine  with 32bit
development headers. Took less than two hours total.

What hit the most  is just how *right* the thing  felt. The speakers are
amazing, the  screen is  crappy but the  resolution (rare  1400x1050) is
great at fitting  a huge surface into manageable space,  the whole thing
isn't  even screaming  unless you  turn on  a game,  a movie,  or a  GTK
program -  I started to  despise the two  common ui toolkits,  them (and
electron...) likely  being the  only things  barring some  programs from
working on this old  piece of shit e-waste. The whole  thing felt like a
spiritual experience,  and I've  since sworn  to never  buy a  brand new
piece of hardware - I am  now certain there's enough computing power out
there to last centuries, if only  we can stop suffering garbage code and
practices.

I lived like this  for two weeks, learning the basics  of C. That didn't
really go anywhere,  but I enjoy the understanding.  The endeavor's also
nudged me  to stop  relying on  the mouse  pointer in  programs I  use -
sometimes I'd  want to  take the  laptop somewhere  without space  for a
mouse, and the  trackpad is unusable. Eventually I put  the laptop aside
because I had to travel and I weren't taking this shitbrick with me.

Lessons learned:

-   C is good and will run anywhere
-   Devuan is good and will run anywhere
-   I hate modern software/hardware sensibilities so much it's unreal
-   I have achieved portability.

## it's lonely on the seafloor

Now I'm  on another laptop, slightly  more modern, which I  got used for
cheap.  It runs,  of  course, Devuan.  At  some point  I  swore off  all
proprietary software and sized back  my configs to a manageable sdorfehs
(window  manager similar  to ratpoison)  desktop  and a  bunch of  shell
scripts. I don't use the mouse  pointer for anything, but sometimes I'll
use  the touchscreen.  Majority  of  programs I  use  will  run on  23yo
laptops.  I'm learning  more about  programming and  cybersecurity as  a
hobby,  but feel  more than  comfortable  with what  I've got  - I  feel
liberated. Like everything's possible and nothing can ever go wrong.

I don't know who to thank. It wasn't hard or easy. All I can say is that
this has been  the single most rewarding endeavor in  my life. Wish more
people could get  there instead of fretting over which  abusive piece of
garbage is the best  or "most usable" - for many,  the good and usable's
been there all along.

Lessons learned:

-   Innovate yourself
-   Don't let anyone tell you you need more