Back to home page
Tux the penguin flying

Setup/software list

Why linux

I have always liked being able to customize, mod, and poke inside different things. Computers are machines for us to play around with and use how we see fit yet the only thing the big tech companies want to do it lock everything up and it disgusts me. Fuck google, fuck microsoft, fuck apple, and fuck all the other evil tech companies!!! Its time for the open source revolution and seize them all and open source the entire world!!! Without linux or any other unix life would be much much worse. Linux is my safe place from all the shit in the world.

Window kills kittens

Distros

I will distro hop a bit though for the most part I like to stay with the same distro and just change DE's or WM's. For the longest time I just switched to a different fedora spin every so often. Now I use arch because I got tired of fedora and couldnt find a distro I liked so I switched to arch to make it feel the way I want.

Guides

Cool distros

Not including the guides

GUI apps

A lot of linux users dont like GUI apps. I think they are great when they are done right.

Claws mail

I have used thunderbird in the past though like I said before mozilla is evil as fuck. Through the power of actually following the unix philosophy and not being full of javascript bullshit claws is about the safest email client out there. Gone are the days of just clicking a email being enough to fuck you over. Anyways you likely noticed that claws just displays everything in plain text. I like using the dillo plugin for a nicer view, and guess what? Still no shitty javascript that can get you fucked!

Emacs

Don't use emacs. Its stupido.

That is and will always be true but lately as of writing this I been bit by the emacs bug. Using emacs is so bad and so wrong but feels so good to use. I defeated rsi by doing hand exercises for nearly a year and a half as of writing this. I had to learn the hard way being a guitarist and emacs user while taking CS classes and writing code all the time wasnt a good idea. Now I play bass to but it balances out because I switched over to IT and became too lazy to write code most of the time. I lost my lite weight hand exercise tools and instead of buying new ones I just started using the heavy ones for hours at a time until I had the grip strength to crush a human skull. Now my rsi is cured as long as I keep up the exercises.

I dont use doom emacs, spaceacs.. or any of that bullshit. Just good old gnu emacs with a simple config and a hand full of plugins.
Some of my favorite are:

  • Ivy: it makes emacs feel a bit nicer without completely changing it by much.
  • Company with eglot: a easy way to add good auto-complete and lsp support. It doesnt bloat the system up too much and it adds much faster and better auto-complete then what any standard ide has and it doesnt get in the way.
  • nyan-mode: this plugin will change your life. Emacs isnt even usable without it. This plugin is the biggest reason I use emacs. Take that vim users!

Fun fact: I use emacs to work on this site.

SpaceFM

For the longest time I just used thunar because its decent and default in xfce though I decided to give spaceFM a try as of writing this. I might got annoyed of it in a week and ditch it or end up really liking it. These kinds of things tend to go either way for me. I will either fucking hate it or wonder how I ever lived without it.
Update: After using it for a little bit I really dig it and never want to go back.

Encrypted partitions/the few things udevil doesnt support yet in spaceFM

SpaceFM doesnt support encrypted partitions by default but lucky for us its very customizable. To get encrypted disks working I use udisks2 and udiskie.

  • Install udisks2 and udiskie.
  • Go to xfce session and startup than add the command udiskie -s as a autostarted app. The -s option makes udiskie show a tray icon and hide it when there arent any disks. -t will show the tray all the time and by default udiskie will not show a tray.
  • In spaceFM go to Devices->Settings->Device Handlers and add a new handler: udiskie device handler in spacefm Whitelist: crypto_LUKS
    Mount: udiskie-mount %v
    Unmount: udiskie-umount $(lsblk -n -o MOUNTPOINT %v)

sftp

Spacefm uses sshfs for sftp support. Once you install it you will be ready to rock. Though for my use case I need symlink support. sshfs needs to have the option -o follow_symlinks To support symlinks. To add the option go to Devices->Settings->Protocol Handlers->ssh and change the mount option to:
#!/bin/bash

[[ -n "$fm_url_user" ]] && fm_url_user="${fm_url_user}@"
[[ -z "$fm_url_port" ]] && fm_url_port=22
echo ">>> sshfs -o follow_symlinks -p $fm_url_port $fm_url_user$fm_url_host:$fm_url_path %a"
echo
# Run sshfs through nohup to prevent disconnect on terminal close
sshtmp="$(mktemp --tmpdir spacefm-ssh-output-XXXXXXXX.tmp)" || exit 1
nohup sshfs -o follow_symlinks -p $fm_url_port $fm_url_user$fm_url_host:$fm_url_path %a &> "$sshtmp"
err=$?
[[ -e "$sshtmp" ]] && cat "$sshtmp" ; rm -f "$sshtmp"
[[ $err -eq 0 ]] # set error status


# Alternate Method - if enabled, disable nohup line above and
# uncheck Run In Terminal
# # Run sshfs in a terminal without SpaceFM task. sshfs disconnects when the
# # terminal is closed
# spacefm -s run-task cmd --terminal "echo 'Connecting to $fm_url'; echo; sshfs -p $fm_url_port $fm_url_user$fm_url_host:$fm_url_path %a; if [ $? -ne 0 ]; then echo; echo '[ Finished ] Press Enter to close'; else echo; echo 'Press Enter to close (closing this window may unmount sshfs)'; fi; read" & sleep 1

mpv

I switched to mpv because vlc was acting weird with audio sometimes when watching anime and nothing in this world is worse then something getting in the way of anime time! Just like lite-xl and neovim mpv uses lua for its config files and is really simple by default. It also can play youtube videos or other online streams just by giving it a url.

Liferea

Feed readers are one of those things I use on and off. A lot like mail clients feed readers tend to be very bloated. Liferea is my favorite but it has always had issues with nvidia drivers until I found out a trick.

If liferea has issues add this to your /etc/environment and reboot
WEBKIT_DISABLE_DMABUF_RENDERER=1

Some cool tricks:

  • Get this plugin to find feeds easier.
  • You can turn youtube channels into rss feeds with https://www.youtube.com/feeds/videos.xml?channel_id={channel_id}
    This can be done for all your subscriptions with this script
  • You can drag and drop youtube urls from your feed reader into mpv so you can keep up with your subscriptions without even touching youtube's website.

ePDFViewer

I wanted a pdf viewer that was light weight and simple. Being a xfce user I wanted something that isnt tied to another DE and doesnt uses a hell ton of dependencies.

Web browsers

Modern browsers are some of the worse things to every happen. These are some of the better options out there.

For some resources on browsers check out spyware watch dog and dig deeper.

For addons stay away from the mozilla or google bullshit and instead use something like the gnuzilla thingy. You can also find addons on mybrowseraddon than manually install them or something along those lines.

For a dark mode addon stay away from darkreader. Dont know if its spyware or not but when the browser starts up it makes a bunch of requests which is something a dark mode plugin shouldnt do. Instead use something like dark-mode.

Icecat

I use to use firefox but switched to librewolf because mozilla is evil as fuck. If you don't know librewolf it its the ungoogled-chromium of firefox. Than I switched from librewolf to icecat.

The builtin plugins are decent. Librejs and its other contend blocking plugins are way more annoying than something like umatrix but I am giving them a fair chance knowing that umatrix might not have much of a future even if its still quite functional still. I still like to install ublock even with everything that comes builtin.
So I got annoyed of librejs and other builtin plugins in icecat. Now I just disable them because umatrix and ublock can do way more, except jshelter: It is a api spoofer which is different from the others which are contend blockers. Its useful for when you have to use javascript heavy websites but still want to prevent alot of information from being leaked. I set ublock to disable javascript by default and I set jshelter to strict mode by default.

Fun little trick: If video playback/youtube frame breaks on a website just throw it into mpv to stream it from there. Sometimes to find the media you can hit ctrl+i to pull up page info and use the media section or in some cases you might have to dig around in the inspector.

Installing

You can find some newer builds here. The offical version can be found here.

Hardening

The magic of icecat is it makes zero requests to mozilla but its not too hardened so you might wanta use a user.js. Check out pyllyukko user.js.

Palemoon and Basilisk

Palemoon is a old firefox fork that uses a different rendering engine so it can keep up with newer webstandards while stilling keeping the old interface and support older plugins. Basilisk use to be developed by moonchild and was designed to be kind of like palemoon but based off a bit newer version of firefox. The basilisk team broke off and is now seprate from moonchild but still keeps in close contact with them.

What version you choose is really up to you and what interface you like more. Both of them are going to struggle to use javascript heavy websites but its ok its I prefer disabling javascript whenever possible and using umatrix to only let in what the site needs to function.

Hardening

Even though they are about as good as browsers get these days the developers are still stupidos so you should follow this guide. Its also best you disable webrtc (only basilisk even supports webrtc out of the two) and webgl along with other hardening because even though they are based off older versions of firefox they still support the modern features that make it easier for sites to fucking fingerprint you. Basilisk is the only one that supports webrtc out of the two.

To help hardened get yourself a palemoon user.js. It helps you stand out less by hiding the fact you are using a weird old ass browser. Btw, for whatever fucking reason this user.js seems to brick github issue pages so just keep that in mind. Though if anything this just is another reason why real git sites like gitea and codeberg are better.

You can timezone spoof by setting TZ=UTC before launching:
sudo -s
rm -rf /usr/bin/palemoon
echo "#! /usr/bin/sh\nTZ=UTC /usr/lib/palemoon/palemoon \$@" > /usr/bin/palemoon
chmod +x /usr/bin/palemoon

Basilisk users can come up with their own hack instead of having their hands held and gently walked through

Ungoogled chromium

Ungoogled chromium is what the name says, chromium without the google. I still prefer to avoid anything chromim but if you really want to use a chromium based browser without all the spyware shit you arent going to get any better than this. It hella beats brave brave is fucking terrible. There is a addon that lets you install addons from the chrome store and update them without having to sign into google but I still think the best option is just to manually install the addons to completely avoid google.

Ungoogled chromium isnt hardened at all by default. Its designed to be a drop in replacement for chrome that is user friendly and doesnt break anything. We dont do that here, for heaven fucking shake at least harden it a little and to do that you can use these flags.

With manifest v2 on the way out the future of chromium based browsers is fucked. Mozilla is also doing shitty things so we are just in general fucked.

librewolf

Librewolf is about the easiest way to get a decent hardened browser setup. It still makes some requests to mozilla which kind of sucks.

Command line

Yes, the terminal is a GUI program. But I put it here because fuck you.

For a cool command line I use nerd fonts. My favorite is the hack nerd font which can be installed with:
wget https://github.com/ryanoasis/nerd-fonts/releases/download/v3.3.0/Hack.zip
unzip Hack.zip -d Hack
sudo cp -r Hack /usr/share/fonts/

More nerd fonts can be found here.

Alacritty

I only started using it very recently because I been using kitty for a long time. I switched to alacritty because ssh in kitty is fucked up and I found out that alacritty now has a option for toml files for the config. The yml files was one of the biggest things keeping me away from alacritty.

zsh

zsh is pretty cool though I been playing with fish a bit and been thinking of switching to that. zsh has lots of cool things like vi keys (even though I use emacs) and is somewhat compatable with bash to.

vim

For a long time I used neovim. I started using neovim becaues I wanted vim to act more like a ide and have fancy shit. For most things I ended up using lite-xl emacs more because well... emacs just make my autism happy. Neovim ended up just being used for editing configs, quickly throwing together scripts, crazy vim wizard edits... so I decided to just ditch neovim (you can find my old config here) and instead go with a simple vimrc with only a few plugins.

How dare someone use both emacs and vim! Shut your fucking piehole stupido!

Extras

These are programs I at one point used, dont use much... that I wanted to add.

lite-xl

I started using lite-xl because I wanted a simple little easy to config graphical text editor. lite-xl is just that. I no longer have a need for it as I get into emacs again as of writing this but still a great little editor.

On different screen sizes lite-xl may look bad and to fix it you need to set the LITE_SCALE environment variable.

vlc

Yes, mpv is better. Yes, vlc sometimes has issues. But vlc is still better than the default media player on most systems and has its fair share of useful features. Even with mpv I still like to have vlc installed just in case mpv breaks when I dont have internet and I like its file converting features. The mobile version of vlc kicks ass.

Evolution

Evolution is one of the better mail clients out there. If for whatever reason you need to use gmail or some other locked down shitty service evolution has you covered. By default it uses the gnome style window decorators but unlike most gnome apps it lets you use your desktop/WM decorators instead. Its not as bad as most mail clients (looking at you thunderbird) and it lets you at least hide most of that shit out of the way.