- minimal
- Package managers
- Firmware-Hardware
- Partitioning
- display server
- x11
- wayland - new, more secure, slim, still not much used
- init systems
- system D - usually “bloated” init system - LS
- what? init system
- first process that starts after booting, runs on bkg to manage services etc
- launch what you need, in specific order
- sysV
- cons
- one point of failure sunce it’s monolythic
- mainly red-hat project
- kind of bloated
- it is modular but most people implement this all togheter
- at the same time, it’s fast
- pushes other software to be dependant on it
- creates problems to distros not willing to use systemD
- hides certain configs behind its own tools
- especially bad if you want to change text files
- pros
- written in C
- mantained
- what? init system
- system D - usually “bloated” init system - LS
- kernel - src
- linux stable - 2 months stable
- linux lts - 2 years stable
- libre kernel - does not allow proprietary stuff
- usually these proprietary stuff gives hardware support
- so you might not be able to use this at all
- released after a few days of linux stable
- usually these proprietary stuff gives hardware support
- hardened kernel - non official more secure kernel
- incompatible with systemd
- might brake some software
- android kernel - specific for mobile devices
- real-time & low latency
- reduce latency between input and output of task at the cost of… much, especially multitasking
- applications needs to be tailored to this to be useful
- zen kernel & xan mod - better performance
- TKG kernels -
- firmware blobs
- UEFI vs legacy Bios
- supports big storage
- supports graphics when you boot
- Table partitioning
- GPT
- MBR - no more than 2TB
- boot loader/manager
- grub
- grub-install
- grub-mkconfig -o /boot/grub/grub.cfg
- grub
- Audio
- ALSA - driver hard to use
- cannot play 2 audio at the same time by default
- complex config
- no docs
- options
- pulseaudio
- everything just works
- bad
- pipewire - new kid in the block to kill pusleaudio + jack
- pulseaudio
- ALSA - driver hard to use
- file systems
- Initial configuration
- archinstall
- mirror
- where software come from? better if close to phisical location like Italy
- f
- img
- mirror
- exit (chroot) - sometimes you also need to reboot
- especially if startx gives you permission denied. Reboot and log-in with default user like e
- keyboard layout - src
- localectl set-keymap uk
- gb is great britain
- resolution
- pacman -S xorg-xrandr
- xrandr - see all devices
- go to xinit
- xrandr —output HDMI-1 —mode 1920x1080 —rate 60
- user & add password
- useradd -m -g wheel myNewUserName
- passwd myNewUserName
- nano /etc/sudoers
- fonts
- quick: pacman -S tff-dejavu
- xorg
-
pacman -S xorg-server xorg-xinit
-
add to
~/.xinitrc
:exec dwm
or whatever u using -
xinit
-
kill xorg server: ctrl + alt + backspace
-
Fixing xinit/startx not running without sudo
sudo usermod -aG tty username
-
Not sure if these stuff is useful
sudo chmod 660 /dev/tty2 sudo chmod 660 /dev/tty3
no screens found
X -configure sudo cp /root/xorg.conf.new /etc/X11/xorg.conf
cp /etc/X11/xinit/xinitrc ~/
startx or xinit — :1 -nolisten tcp vt$XDG_VTNR that’s the enchanced way to do xinit needed in systemd -nolisten tcp optional but great
-
-
- archinstall
- Essential software
- Window manager - tier list
- dwm - src (automatic)
- usage
- tldr -
- if you want to go dumb & simple, modify config.def.h & then do the common
make & sudo make install
or something- make - compiling to get binary
- make install - put binary to usr/local/bin
- if you want to go dumb & simple, modify config.def.h & then do the common
- config.def.h - default, where you should modify stuff
- then run
make
to create another config.h with same code as config.def.h (should make backup of config.h because you’ll lose changes)- you’re supposed to merge this on config.h
- that’s where automatic patches are being applied, not on the config.h
- should remain as is, without modifications
- then run
- config.h - actual settings being used
- that’s where you should make most of your modifications
- needed to compare changes from the config.def.h, especially when patching
- tldr -
- autostart apps
- rule to always check if window class is _firefox… if it is, it’s going to put it on tag 1 in non-floating mode on the first monitor
- we add this line to .xinitrc create window with specific class & application
- rule to always check if window class is _firefox… if it is, it’s going to put it on tag 1 in non-floating mode on the first monitor
- scratchpad! - src
- great config from distrotube
- enable patch writing 1 - src
sudo pacman -S libxinerama libxft ORRRRRR-> libx11
- usage
- dwl - dwm for wayland
- awesome - dwm fork with everything by default
- qtile - more configurable dwm
- i3 - (manual)
- sway - i3 but for wayland
- dwm - src (automatic)
- File manager - thunar
- useful utility for drag file
- thunar - xfce one - works well with WMs - 54mb ram
- well customizable
- more settings than nautilus but no more than dolphin
- less fast to boot than pcmanfm but as faste after first window
- great defaults overall
- written in C and GTK+
- Pcmanfm - 35mb ram - fastest to boot
- written in C and GTK+
- cons
- bad default
- style
- options
- menu positions
- bad default
- spacefn - pcmanfm but with split view & more options -gtk3…
- nemo - cinnamon one
- plugins
- cons
- no split
- no shortcuts?
- doplhin - really customizable + works best w plasma
- nautilus - not many options (gnome based…)
- krusader - 2 split panel
- Text editor - vscodium & nvim
- Browser - mainly brave, firefox=privacy
- Main src
- Forks are less mantained than original
- libre wolf
- Real options
- chromium - lol
- brave - less privacy more functionality
- hardened firefox - best privacy/functionality
- bad ones
- unmaintained
- iceCat - could be n1…
- unmaintained
- Terminal - st
- time tree / test
- Alacritty
- ST
- Alacritty
- mainly for wayland but also x11
- multi-platform
- GPU acelerated
- written in rust
- cons
- no tab support
- no ligatures
- kitty
- tab supp & ligatures
- gpu accelerated
- cons - no multi-platform
- st - great if you really go deep into customization
- opens faster than alacritty
- xterm
- criterias
- GPU accellerated
- time tree / test
- status bar - dwmblocks
- Window manager - tier list
- Smaller
-
Customize startup settings
- nano ~/.profile - these run after log-in
- $PATH - path that lin check to run commands
-
if have bashrc, run it
.bashrc && . ~/.bashrc
export PATH=$PATH:&HOME/.scripts export EDITOR=“vim” export TERMINAL=“st” export BROWSER=“firefox”
-
selector - dmenu - src - wmee - patches
- rofi
- crazy stuff you might do
- emoji
- clipboard
- apps
- files/scripts
- shutdown
- shutdown xorg?
- xrandr
-
shell - ZSH
- Bash - standard boring but needed
- ZSH - fancier configurable bash
- syntax highlight
- better autocomplete
- Fish - pre-configured modern ZSH
- even better autocomplete
- cons
- non posix compliant
- different syntaxt to do scripting
- stuff like loops, ifs, etc
- different syntaxt to do scripting
- non posix compliant
- even better autocomplete
-
additional downloads
- git
- neofetch
- just use top, lol
- htop
- btop
- gtop
- vim
- nano
- cmatrix
- man (core repo)
- Helpers for AUR - needs base-devel & git
sudo pacman -S --needed base-devel git
-
paru
- rustup for cargo pkg
- yay - mantainer ditched it and created paru
- Paru needed
- vscodium -
paru -S vscodium-bin
- if you get permissions errors is because it’s setup by default to use /run/user/0, the problem is that this directory changes based on who log-in first in the TTY
- brave bin
- vscodium -
-
tiny feats
- notifications - dunst -(useful for volume) or notify OSD
- screenshots -
- spectacle - bloated because of KDE but can edit
- doesn’t have text with background
- just worst than flameshot
- bloated - 500mbs
- flameshot - many feats but bloated & bad edit
- can edit img but doesn’t have text with background
- has too much UI
- 110mbs…
- meim - no ui, but has feats & extensible w dmenu
- sharex through wine is not the best options… bloated
- spectacle - bloated because of KDE but can edit
- Bluetooth - bluez
- Compositor - picom - blur, transparency, shadow…
- optimization, etc
- picom
- Clipboard manager - clipmenu
xclip - simplest, no history - dependency of clipmenu
cp - more useful for scripts - default
copy “goddamit”
note0 “tha’ts a goddamit”
CopyQ - tags and bloat
- clipmenu - great simple dmenu history
- add this to xinitrc
systemctl —user import-enviroment DISPLAY
systemctl --user status clipmenud
clipmenud
systemctl --user enable clipmenud
- add this to xinitrc
systemctl —user import-enviroment DISPLAY
- clipmenu - great simple dmenu history
- GTK theme - lxappearence
- widget
- paru -S
- tokyonight-gtk-theme-git
- nordic-theme
- dracula-gtk-theme
- paru -S
- Cursor
- macos_cursor (using this)
- whitesur-cursor-theme-git (alternative)
- bibata
- macos_cursor (using this)
- widget
- Hotkeys/shortcuts+misc
- other
- remap caps
- simple way to remap it to escape/hyper - src
- useful for
- hyper key - usually a unique combination
- Ctrl + Alt + Shift + Super
- meta keys - alt gr
- hyper key - usually a unique combination
- espanso - text expander - github
- installation
- AUR pkgs
- pensonally installed espanso-x11 but it was really slow to compile…
- AUR pkgs
- to set up stuff go to espanso folder (probably in .config), then match folder and add another yaml or use base.yml - src
- installation
- remap caps
- hotkey to command
- sxhkd - src (2 years ago) - alt + a echo “hi!!”
- -xbindkeys - <sxhkd but mantained & most popular
- commands to hotkey
- xdotool - keys through comman - 6months ago?
- e.g. xdotool key ctrl + t
- delay problem
- I had to use sleep 0.1, if not it would not work sometimes
- or even ~ before the shortcut
- other suggest keyup
- seems like the application is preceding xodotool so that instead of the output (xodotool command) it takes the input (shortcut setted up to triggher xodotool command)
- -dotool - same but for wayland & x - github
- xdotool - keys through comman - 6months ago?
- hotkey to hotkey
- xcape - unmantained - 6 years ago
- -xmodmap - “useful” to remap keys - mantained
- cannot set a key to type key combinations (e.g., Ctrl+C), run scripts, or change key behavior based on the currently active application
- other
- Calendar/Todo stuff - vim with plugins
-
RSS reader - newsboat
-
e-mail client -
- neomutt - terminal, configurable
- Thunderbird
-