/dev/null

discard to the void

Outils pour utilisateurs

Outils du site


tech:linux_desktop

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
tech:linux_desktop [2023/12/22] Mathieutech:linux_desktop [2025/04/12] (Version actuelle) – supprimée Mathieu
Ligne 1: Ligne 1:
-====== Customized linux desktop for advanced users ====== 
-~~DISCUSSION~~ 
- 
- 
-**Despite the grandiose title, this will just be a collection of free software i use to build a tailored, efficient and minimalist tiling desktop experience, a word about possible alternatives and some random thoughts.** 
- 
-<WRAP center round info 60%> 
-Une version en français est [[tech:linux_desktop-fr|disponible ici]] 
-</WRAP> 
- 
-I won't mention specialized software, like Blender, Krita, OBS or Godot, or even Thunderbird. If you need them, you probably know it and they don't belong on every user desktop.  
- 
-I run debian, but almost **any linux distribution will do**.  
- 
-I you want to use them, you can find most of [[https://github.com/isingasimplesong/dotfiles|my personal configs there]]. Use it as an example, not a recipe : personalize and make it yours 
- 
- 
-{{gallery>:tech:qtile:?200x200}} 
- 
-===== Window manager ===== 
- 
-  * **[[https://github.com/qtile/qtile#readme|Qtile]]** is my window manager of choice. It's a modern, simple, automatic [[https://en.wikipedia.org/wiki/Tiling_window_manager|tiling WM]], very hackable, written and configured in python, that's **available for both X11 and Wayland**. It comes with a great built-in bar, and widgets for almost everything you may need for a regular desktop experience. It provides a large number of automatic layouts, including the classic master/stack, and it's scratchpad is the best implementation i've used. On debian, you'll need to install it //via// [[https://pypi.org/project/pip/|pip]] 
-  * **[[https://github.com/baskerville/bspwm#readme|Bspwm]]** is also a very good choice if you value simplicity. It's configured in bash (or any other script langage you like) and is very minimalist 
-  * I manage most of my **keyboard shortcuts in [[https://github.com/baskerville/sxhkd#readme|sxhkd]]**. This is required in bspwm, but also work wonderfully with any other window manager. Have a look [[https://github.com/isingasimplesong/dotfiles/tree/main/sxhkd|at my config]] to see how i manage to maintain a common sxhkd file compatible with every WM i want, by separating [[https://github.com/isingasimplesong/dotfiles/blob/main/qtile/keys.py|specific window management shortcuts]] from [[https://github.com/isingasimplesong/dotfiles/blob/main/sxhkd/sxhkdrc_common|generic user shortcuts]]. Sxhkd is awesome, lightweight, portable, and provide advanced shortcuts management, like keychords and a powerful syntax  
-  * [[https://github.com/yshui/picom|Picom]] is a window compositor for X11. It provide nice eyecandy, animations, blur and other rounded corners to your windows. I use it  to slightly dim unfocused windows, and easily focus on my main task 
- 
-===== Session manager ===== 
- 
-If you need one, [[https://github.com/canonical/lightdm#lightdm-display-manager|lightdm]] is perfectly capable and lightweight. If you don't need the additional functions, or the eyecandy, the ''starx'' command is perfectly fine 
- 
- 
-===== Application launcher ===== 
- 
-I use **[[https://github.com/davatorium/rofi#-rofi-|rofi]]** as an application launcher. It's like dmenu on steroids, with full compatibility, easier configuration and customization. But you'll still want to bind your most used applications to direct keyboard shortcuts and keep that launcher for applications that you don't want to waste keyboard real estate for. 
- 
-===== Notifications ===== 
- 
-[[https://github.com/dunst-project/dunst#dunst|Dunst]] is a graphical, lightweight and customizable notifications deamon 
- 
- 
-===== Terminal, shell & co. ===== 
- 
-**[[https://sw.kovidgoyal.net/kitty/|Kitty]]** is a modern, multi-plateform, GPU accelerated, capable of displaying ligatures, links, emoticons and images, and including splits, panes, tabs and session management. Some may prefer [[https://github.com/alacritty/alacritty#readme|alacritty]] or [[https://wezfurlong.org/wezterm/index.html|wezterm]], but i find kitty more powerfull 
- 
-Despite the session management features included in kitty, i still prefer to use **[[https://github.com/tmux/tmux#welcome-to-tmux|tmux]] as a terminal multiplexer**. 
- 
-I pair it with [[https://www.zsh.org/|zsh]], cause it has better autocompletion than the standard GNU [[https://www.gnu.org/software/bash/|bash]], while still being 100% POSIX compliant, unlike [[https://fishshell.com/|fish]] 
- 
-Finally, i pimp my prompt with [[https://starship.rs/|starship]], that provide nice customization and icons for git and code repositories 
- 
- 
-===== File manager ===== 
- 
-  * [[https://github.com/ranger/ranger#readme|Ranger]] is a vim inspired file manager in the terminal, that provide a simple interface with vim-like shortcuts, suitable for most file management tasks, 
-  * I also use [[https://docs.xfce.org/xfce/thunar/start|thunar]], the xfce file browser, when i need a graphical one. It can perfectly run outside of xfce, integrate well with my mostly GTK desktop, and provide handy tools for volumes management. You could also use [[https://github.com/lxde/pcmanfm|Pcmanfm]], that's slightly different, but still GTK, lightweight and independent  
- 
- 
-===== Browser ===== 
- 
-{{gallery> :tech:2023-09-30_09-59.png}} Being concerned by online privacy, i ban Chrome, Safari or Edge on my desktop. My main browser is [[https://www.mozilla.org/en-US/firefox/new/|firefox]], mostly for the huge collection of addons, the commitment to free software and to preserve web rendering engines diversity.  
- 
- 
-I streamline it's UI, with [[https://addons.mozilla.org/en-US/firefox/addon/tree-style-tab/|Tree Style tabs]], and the following userChrome.css to make it as simple as possible, with just one bar 
- 
- 
- 
-<file css userChrome.css> 
-/* hides the native tabs */ 
-#TabsToolbar { 
-  visibility: collapse; 
-} 
- 
-/* hides the sidebar */ 
-#sidebar-header { 
-  visibility: collapse !important; 
-} 
- 
-</file> 
- 
- 
- 
-I also use [[https://brave.com/|Brave]] when i need a chromium-based engine, and [[https://www.torproject.org/|TOR Browser]] if needed 
- 
-===== Text editor / IDE ===== 
- 
-[[https://neovim.io/|Neovim]] is the best iteration of vim yet, come with [[https://www.lua.org/|lua]] built-in for it's configuration, and provide **very** powerful plugins like [[https://github.com/nvim-telescope/telescope.nvim#telescopenvim|telescope]], [[https://github.com/nvim-treesitter/nvim-treesitter#readme|treesitter]] and [[https://neovim.io/doc/user/lsp.html|LSP]], that can turn it into a powerful hand-made, personalized IDE 
- 
-There's really no viable alternative to vim. Some say [[https://www.gnu.org/software/emacs/|GNU emacs]] is, but i already run an OS. 
- 
- 
-===== Note taking ===== 
- 
-Meh. I hate most note taking apps, free as well as proprietary. For now, i stick with using [[https://daringfireball.net/projects/markdown/|markdown]] in vim, and post-processing it with the mighty [[https://pandoc.org/|pandoc]] to export it to any other formats i may need 
-===== Office suite ===== 
- 
-Please, please, do not use OpenOffice. The project is long dead, and you should use [[https://www.libreoffice.org/|LibreOffice]] instead. 
- 
-That being said, i do not use any office application on a regular basis, only when someone occasionally send me a .doc or .xslx, and mosly use simple [[https://www.latex-project.org/|LaTeX]] templates for my actual, rare office tasks. It's less work overall, and can be managed in git. 
- 
-===== Backups & synchronisation ===== 
- 
-These are 2 different things, and you should use both.  
- 
-I use [[https://wiki.gnome.org/Apps/DejaDup|dejaDup]] for my regular, encrypted backups, on a local NAS. These are then backed up once again, on a cloud bucket provider (backblaze for now). 
- 
-I also sync my important files with a self-hosted [[https://owncloud.com/|ownCloud]] instance, to access them when not on my computer 
- 
-===== Screenshots ===== 
- 
-Despite my mostly GTK desktop, and [[https://flameshot.org/|flameshot]] being a Qt app, it's still the greatest screenshot tool imho. [[https://github.com/resurrecting-open-source-projects/scrot#scrot-screenshot|Scrot]] would be a lighter, desktop-agnostic, 100% command line option 
- 
-===== Archive manager ===== 
- 
-I use [[https://fileroller.sourceforge.net/|fileroller]], but [[https://github.com/ib/xarchiver|xarchiver]] would be equally good, despite being less actively developed  
-===== Password manager ===== 
- 
-I use both [[https://bitwarden.com/|bitwarden]], for it's integration in web browsers, and [[https://keepassxc.org/|KeepassXC]] for out-of-browser uses. Both are really good manager. Unless you have special needs as i do, one of them is sufficient   
-===== Media player ===== 
- 
-Most of my media management is done outside of the desktop, with the [[https://wiki.servarr.com/|Lidarr, Prowlarr, Radarr, Readarr, Sonarr, and Whisparr stack]], [[https://transmissionbt.com/|transmission]] and [[https://jellyfin.org/|Jellyfin]]. 
- 
-If i need a media player for on the desktop, i use [[https://mpv.io/|mpv]] 
- 
-===== Image viewer ===== 
- 
-[[https://docs.xfce.org/apps/ristretto/start|Ristretto]], xfce's image viewer, is a fine, simple, lightweight app 
- 
-===== Document viewer ===== 
- 
-I prefer a features rich pdf viewer, and use [[https://wiki.gnome.org/Apps/Evince|evince]]. Use [[https://pwmt.org/projects/zathura/|zathura]] if you're looking for a lighter, keyboard driven one  
- 
-===== Wallpaper picker ===== 
- 
-[[https://github.com/l3ib/nitrogen|Nitrogen]] is a simple graphical tool to set a wallpaper. [[https://feh.finalrewind.org/|Feh]] is a command line tool, easily called from your window manager's launch script.  
- 
-===== Configuration tools ===== 
- 
-  * [[https://github.com/lxde/lxappearance|lxappearance]] allows you to graphically configure your GTK+ themes, icons, fonts...  
-  * [[https://gitlab.gnome.org/GNOME/network-manager-applet|nm-applet]] is a graphical interface that stay in your systray, and allows you to easily configure a new network connection 
-  * [[https://github.com/blueman-project/blueman|blueman-applet]] let you configure and manage Bluetooth devices 
-  * [[https://github.com/cdemoulins/pamixer#readme|pamixer]] is a terminal mixer app, letting you adjust and configure your pulseaudio or pipewire driven sound system  
- 
-===== System monitoring ===== 
- 
-[[https://htop.dev/|htop]] and [[https://github.com/aristocratos/btop#readme|btop]] are two simple and beautiful system monitors running in terminal 
- 
-===== Base utilities ===== 
- 
-  * lxpolkit is the LXDE session manager, and is desktop agnostic. Just run it from your starting script 
-  * coreutils & utils-linux : basic unix commands for almost everything. Learn them, use them, profit  
- 
- 
- 
- 
-{{tag>Linux English}} 
- 
- 
  
tech/linux_desktop.1703232320.txt.gz · Dernière modification : 2023/12/22 de Mathieu

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki