I use arch btw
Linux is free, if you don't value your time.

Best OS for desktop: Artix Linux (it's arch without systemd)
Best OS for server: Debian
Best OS for gaming: not linux
Apps that I use
GUI
Window manager: AwesomeWMMusic & video player: mpv
Image editor: gimp
Video recording: obs
Web browser: brave, firefox
Terminal
Terminal: alacrittyFont: Iosevka
Shell: zsh
Text editor: neovim
File browser: ranger
Git wrappers: lazygit
Tools:
- ripgrep - better grep
- fd - better find
- btop - better htop
- lsd - better ls
- fzf - fuzzy finder
Suckless tools
I used to use suckless tools (st, dwm, dmenu), but then I realized they suck. I mean, why would anyone ever want to configure their terminal by modifying source code in C? I had to install like 10 patches (proof) to make it fine. Bear in mind that these patches aren't always compatible, so you have to resolve conflicts to make your fucking terminal usable. I gave up when a small update to ncurses messed up underlining in the terminal. That's when I switched to alacritty, which just works.
Sites related to linux
Tools & apps:
Neovim as IDE
Motivation
I was tired of bloated, buggy, features-rich IDEs. Life was too easy that way. I craved the real coding experience. The best editor I could come up with at that time was Turbo Pascal (preview). Unfortunately, I can't do Java in it, so I had to explore some alternatives. I initially went with vim as my choice, but then switched to neovim.
Some real reasons to use vim/neovim:
Why I use Vim in 2022
Why even bother with Vim or Neovim in 2022?
My config
My neovim config can be found here.
Most useful plugins
There are some plugins, that i would recommend to anyone.
- packer.nvim - Plugin manager for neovim. Use this to install or other plugins.
- telescope.nvim - Fuzzy finder, that can be used to almost everything. I use it to: find files, search text in project, jump between buffers, search lsp symbols, list diagnostics, and many more.
- neo-tree.nvim - File browser. Just like any other sidebar file browser in most IDEs.
- nvim-autopairs - Simple plugin for completing symbols like '('.
- diffview.nvim - Powerful diff viewer. I use to to preview changes in my commits and resolve conflicts.
- nvim-treesitter - Syntax highlight for most languages.
- nvim-cmp - Autocomplete plugin.
- nvim-lspconfig - Set of LSP configurations for many langauges. It's go to plugin, when you want some language tooling out of box. List of supported tools.
- null-ls.nvim - Another helper for LSP. If lspconfig, don't have some tool you want, you can look for it here.
Tips
-
Change key repetition delay for faster hjkl navigation. Under X server, you just have to add
xset r rate 250 50
to.xinitrc
. -
Prepare alias to easy config changing. I use my admin perl script for this. When typing
a nvim
in terminal, it runs:exec "cd ~/.config/nvim && nvim"
. - Dont spend too much time ricing you editor, stick with minimal useful tools ;)