Installation • Contribution • License • Code of Conduct
Description
This meticulously curated list is designed to assist users in personalizing their Linux desktop, a practice often referred to as 'ricing'. This resource compiles a carefully selected list of themes, tools, and customization options, offering users a comprehensive starting point for customizing their computers. Whether you seek common themes and tools or have specific preferences in mind, this repository provides a structured approach to explore and tailor your Linux desktop to your liking.
Contents
- GRUB
- Display Managers
- Desktop Environments / Window Managers
- Themes
- Wallpapers
- (Nerd) Fonts
- Bar / Panel
- Cursors
- Icons
- App Launchers
- Notifications
- Widgets
- Logout Menu
- Screen Lock
- Terminal
- UI Apps/Tools
- App Theming
- Installation
- Contribution
Window Managers
Window Manager (WM) vs Desktop Environment (DE)
A WM is a software that manages the windows on your screen. It controls the placement and appearance of windows, and provides basic functionality like window resizing and moving.
A DE is a collection of software that provides a complete desktop experience. It includes the window manager, along with a file manager, a bar/panel, and other apps, tools and utilities.
DEs usually provide a more integrated and user-friendly experience, while WMs are more lightweight and customizable, requiring you to manually configure and install additional software to get the same functionality as a DE, but with more control over the look and feel of your desktop.
Stacking vs Tiling vs Dynamic WMs
- Stacking WMs are traditional window managers that place windows on top of each other (like MS Windows). They allow you to move and resize windows freely, but they can be cluttered and hard to manage with many windows open.
- Tiling WMs automatically arrange windows in a non-overlapping layout. They are efficient and help you make the most of your screen space, but they can be less flexible than stacking WMs.
- Dynamic WMs combine the best of both worlds. They allow you to switch between tiling and stacking layouts, giving you the flexibility to choose the best layout for your workflow.
X11 vs Wayland
X11 is the traditional display server protocol used in Linux. It is mature and stable, but it has some limitations in terms of security and performance.
Wayland is a newer display server protocol that aims to address the limitations of X11. It is more secure and efficient, allowing for better performance, smoother animations, touch gestures, etc. However, it is still under development, and usually Nvidia GPUs have issues with it.
All applications with a GUI (as well as WMs) are run under a display server and are usually developed for a specific display server protocol, meaning you can't run a Wayland app on X11, or vice versa. However, it is possible to use a compatibility layer like XWayland to run X11 apps on Wayland.
Stacking
- GNOMEX11 + Wayland - A modern desktop environment that aims to be simple and easy to use.
- KDEX11 + Wayland - A feature-rich and versatile desktop environment.
- XFCEX11 - A lightweight desktop environment. It aims to be fast and low on system resources, while still being visually appealing and user-friendly.
- OpenboxX11 - A highly configurable next generation window manager with extensive standards support.
Tiling
- bspwmX11 - A tiling window manager that represents windows as the leaves of a full binary tree.
- i3X11 - A tiling window manager for X11.
- swayWayland - Α tiling Wayland compositor and a drop-in replacement for the i3 window manager for X11.
- herbstluftwmX11 - A manual tiling window manager for X.
Dynamic
- ΗyprlandWayland - Α highly customizable dynamic tiling Wayland compositor that doesn't sacrifice on its looks.
- awesomeX11 - A highly configurable, next generation framework window manager for X.
- QTileX11 + Wayland - A full-featured, hackable tiling window manager.
- XMonadX11 - Α small but functional ICCCM-compliant tiling window manager.
- dwmX11 - Α dynamic window manager for X. It manages windows in tiled, monocle and floating layouts.
- riverWayland - Α dynamic tiling Wayland compositor with flexible runtime configuration.
- ragnarX11 - Minimal, flexible & user-friendly X tiling window manager.
Color Schemes
What are color schemes
Color schemes in ricing are a set of carefully selected colors used to create a theme. You can pick and use a specific theme you like to customize the colors of all your configurable apps (i.e WM, bar, terminal, browser, etc...), in order to achieve a consistent look and feel across your desktop.- Catppuccin - Soothing pastel theme for the high-spirited.
- Gruvbox - Retro groove color scheme.
- Nord - Arctic, north-bluish color palette.
- Everforest - Comfortable and pleasant green forest color scheme.
- Dracula - Dark spooky theme.
- Rosé Pine - All natural pine, faux fur and a bit of soho vibes for the classy minimalist.
- Tokyo Night - Clean, dark theme that celebrates the lights of Tokyo at night.
- Sweet - Colorful candy theme.
- Kanagawa - Dark color scheme inspired by the famous painting.
- BlackLotus - Dark, dim, blue, purple... beautiful.
- Whale - Dark theme inspired by Ark and Nord.
- Everblush - Dark, vibrant and beautiful Colorscheme.
- Shades of purple - Sweet purple theme.
- opulo - Colorscheme for absolute nerds.
- camellia - Dark yet vibrant color scheme.
Utilities
- pywall - Generate and change color-schemes according to your wallpaper.
- wpgtk - A colorscheme, wallpaper and template manager.
Wallpapers
Some great GitHub repos with wallpaper collections by:
- dharmx
- linuxdotexeNord
- D3Ext
- FrenzyExists
- AngelJumboGruvbox
- GingehCatppuccin
- Apeiros-46BEverforest
- gboncoffee
- zDyanTB
- vctrblckGruvbox
- jorgeloopzz
- Axenide
Utilities
- swwwWayland - Efficient animated wallpaper daemon for wayland, controlled at runtime.
- mpvpaperWayland - A video wallpaper program for wlroots based wayland compositors.
- swaybgWayland - Wallpaper tool for Wayland compositors
- hyprpaperWayland - A fast Wayland wallpaper utility with IPC controls.
Fonts
Sans vs Serif vs Mono
- Serif fonts have decorative lines or strokes at the ends of the letters. They are often used for body text in printed materials.
- Sans-serif fonts are modern and clean, without the decorative flourishes of serif fonts. They are often used for headings and titles.
- Monospace fonts have equal spacing between characters, making them ideal for coding, editors and terminals.
Sans and Mono are the ones usually used for ricing, as they are more readable and modern.
What are ligatures
Ligatures are special characters that combine two or more letters into a single glyph. They are used to improve the appearance and readability of text, especially in code and terminal applications.
Example:
Sans Fonts
- Google Sansligatures - Google's custom and versatile sans-serif font.
- Open Sans - The peace and love issue.
- Roboto - The Android font.
- Ubuntu - The Ubuntu font.
- DejaVu - Font family based on Bitstream Vera.
Monospace Fonts
- JetBrains Monoligatures - Τypeface made for developers.
- FiraCodeligatures - Monospaced font with programming ligatures.
- Cascadia Codeligatures - Fun font designed to enchance the modern look and feel of the *** Terminal.
- Iosevkaligatures - Versatile typeface for code, from code.
- Victor Monoligatures - Free programming font with cursive italics and ligatures.
- DejaVuCode - Monospaced font with programming ligatures based on DejaVu Sans Mono.
- Gohufont - Monospace bitmap font.
- Operator-caskaligatures - Font with ligature and cursive support, combination of both CaskaydiaCove Nerd Font and Operator Mono.
- monoidligatures - Customisable coding font with alternates, ligatures and contextual positioning.
- Haskligligatures - Code font with monospaced ligatures.
Nerd Fonts
What are the Nerd Fonts
Nerd Fonts are patched fonts that contain additional glyphs, icons, and ligatures. These fonts are designed to be used in terminals and code editors, providing a more visually appealing and functional experience. Nerd Fonts are compatible with most of the font families.
- Nerd Fonts - Collection of nerd fonts.
- font-patcher - Patch your own fonts.
- getnf - A helpful tool to install Nerd Fonts.
Tip
In order to make use of glyphs, you should at least have one nerd font installed on your system. Setting your default font as a nerd font is usually not required, as it may show glyphs smaller than they are supposed to be. However, you may need to include a nerd font family along with your default font, when configuring fonts for an application, in order to display the glyphs properly.
Bar / Panel
- PolybarX11
- WaybarWayland
- EwwX11 + Wayland
- agsX11 + Wayland
- lemonbarX11
- gBarWayland
- fabricX11 + Wayland
Cursors
Icons
App Launchers
- Rofi
- custom configs - by adi1090x
- Ulauncher
- Anyrun
- Gauntlet
Notifications
Widgets
- conky - System monitoring.
- GLava - Audio spectrum visualizer.
- Kando - The Cross-Platform Pie Menu.
- wallpaper-cava - Display cava on top of your wallpaper.
Logout Menu
Screen Lock
Terminal
Emulators
Shell
Prompt
- Starship
- oh-my-posh
- powerlevel10k - zsh
- Pure - zsh
- roundy - zsh
Multiplexer
Apps and Tools
- File Managers
- Editors
- Image Viewers
- Music Streamers
- cmus
- ncmpcpp - MPD
- spotify-tui - spotify
- spotify_player - spotify
- System Monitoring
- IRC Clients
- Mail Clients
- Screenshot
- Recording
- Directory Listing
- Misc
- evillimiter - Tool that monitors, analyzes and limits the bandwidth of devices on the local network without administrative access.
- carbon-now-cli - Beautiful images of your code — from right inside your terminal.
- nvm - POSIX-compliant bash script to manage multiple active node.js versions.
- xdg-ninja - A shell script which checks your $HOME for unwanted files and directories.
- ncdu - A disk usage analyzer with an ncurses interface.
- arch-update - An update applier for Arch Linux that assists you with important pre/post update tasks.
- more:
Fetches
Fancies
Terminal Visuals
- pipes.sh - Animated pipes terminal screensaver.
- cbonsai - Grow bonsai trees in your terminal.
- Shell Color Scripts - A collection of terminal color scripts.
- Asciiquarium - Enjoy the mysteries of the sea from the safety of your own terminal!
- ascii-rain - Ncurses rain effect.
- Nyancat - Nyancat in your terminal, rendered through ANSI escape sequences.
- SL - SL(1): Cure your bad habit of mistyping.
- arttime - text art with functionality of clock / timer / pattern-based time manager.
- sortty - Sorting algorithms in the terminal.
Clocks
- tty-clock - Clock using lib ncurses.
- Peaclock - A responsive and customizable clock for the terminal.
Audio Visualizers
- CAVA - Cross-platform Audio Visualizer.
- Musializer - Music Visualizer.
- ReVidia - A highly customizable real time audio visualizer.
- ReCidia - A highly customizable real time audio visualizer on Linux.
Matrix
- CMatrix - Terminal based "The Matrix" like implementation.
- neo - Simulates the digital rain from "The Matrix".
- unimatrix - Python script to simulate the display from "The Matrix" in terminal.
Character Play
- cowsay - A configurable talking cow.
- lovesay - Cowsay, but full of love.
- ponysay - Pony rewrite of cowsay.
- boxes - Command line ASCII boxes unlimited!
- fortune - Random poignant, inspirational, silly or snide phrases.
Pokemon-Themed
- pokemon-colorscripts - CLI utility to print out images of pokemon to terminal.
- pokeget-rs - A bash script you can use to display cool sprites of pokemon in your terminal.
- pokeshell - A featureful shell program to show pokemon sprites in the terminal.
- krabby - Print pokemon sprites in your terminal.
- Poketex - Simple Pokedex based on TUI.
Text and Fonts
- FIGlet - Claudio's FIGlet tree.
- toilet - The Other Implementation of figLET.
- lolcat - Rainbows and unicorns!
- lolcrab - Like lolcat but with noise and more colorful.
UI Apps/Tools
Web Browsers
File Managers
Image Viewers
Music Players
Video Streamers
Document Readers
Text Editors
Archive Managers
Calculators
Notes
Workstation - Content Creation
- Image Editors
- Video Editors
- Music Production
- 3D
- Office
- Screen Recording / Live Streaming
Gaming
App Theming
Firefox
- Themes
- Startpage
Spotify
- Spicetify - Powerful CLI tool to take control of the Spotify client.
- spicetify-themes - The official Spicetify themes repository.
- comfy - Stay comfy while listening to music.
- fluent - Spicetify theme inspired by Microsoft's Fluent Design.
- catppuccin - Soothing pastel theme for Spotify.
- bloom - Powerful theme to calm your eyes while listening to your favorite beats.
- nord - Nord themed Spotify.
- dribbblish-dynamic - Mod of Dribbblish theme for Spicetify.
- lucid - Dynamic, Highly Customizable Spicetify theme inspired by Bloom and Microsoft Fluent Design.
Discord
VSCode
Display Managers
GRUB
What is GRUB
GRUB (GRand Unified Bootloader) is a versatile bootloader commonly used in Linux distributions. It's the software that you first see when your computer starts, allowing you to select which operating system or kernel to boot into. GRUB is very customizable and there is plenty of creative themes made by users.- grub2-themes - Modern design GRUB theme collection.
- Matter - Customizable GRUB theme inspired by Material Design.
- Dark Matter - Dark Matter GRUB Theme.
- Tartarus - Basic grub theme with material gruvbox style.
- Dracula - Dracula GRUB theme.
- Tokyo Night - GRUB theme using Tokyo Night color scheme based on Dracula GRUB.
- Poly dark - Poly dark GRUB theme.
- Minegrub - GRUB theme in Minecraft style.
- steam-big-picture - Steam Big Picture inspired GRUB theme.
Tip
To install a theme, follow the instructions provided in the respective theme's repo.
Installation
The majority of these items are linked to their corresponding repositories. Please endeavor to find installation instructions within these repositories. Additionally, it's strongly advisable to explore your distribution's package manager to see if a pre-packaged solution is available. PROTIP: It's best to refrain from using the "download" button on Linux.
Contribution
Any helpful contribution is welcome, especially for original content!
