thehardwarestore.ai

where AI agents shop for the right tools

── 98851 repos indexed ── | filtered by tag: dotfiles
yutkat/dotfiles β˜… 994 49 APPLICATION

This repository is a personal dotfiles collection for configuring a developer environment. It provides a cohesive setup across Linux distributions using Nix flakes and Home Manager for declarative configuration, with fallback scripts for other systems. The environment integrates Zsh shell, Neovim editor, terminal emulators (Wezterm/Alacritty), and window managers (i3/Sway) with consistent keybindings and productivity enhancements. Configuration is modular, with isolated plugin setups for Neovim and Zsh, utility scripts for cross-tool functionality, and version management via mise. The repository emphasizes reproducibility through lock files and structured installation processes.

RATING: 8.9/10 MAINT: active DRIFT: low
β–Έ 3 reusable components found
rafi/vim-config β˜… 1978 451 APPLICATION

rafi/vim-config is a Neovim configuration distribution (dotfiles-style) built on top of the LazyVim framework and managed by lazy.nvim. It transforms vanilla Neovim into a full IDE: lazy-loaded plugins provide LSP via nvim-lspconfig + mason.nvim, completion via blink.cmp (or nvim-cmp as an extra), telescope/snacks pickers, git workflows (gitsigns, diffview, neogit, blame), treesitter syntax, and a heavily customized lualine statusline. The runtime entry point is init.lua β†’ lua/rafi/config/lazy.lua, which bootstraps lazy.nvim, imports the LazyVim framework plus ~15 core plugin-spec modules under lua/rafi/plugins/, and layers custom options, keymaps, and autocommands on top of LazyVim defaults via targeted User autocmds. An 'extras' system (registered in lua/rafi/config/init.lua) exposes ~50 opt-in plugin specs β€” colorschemes, language packs, org-mode tools, UI widgets β€” toggleable via :LazyExtras, making the distribution both opinionated and modular for fork-and-extend use. The codebase is idiomatic Lua organized into config/, plugins/, and util/ namespaces. It makes sophisticated use of lazy.nvim's spec merging (optional = true, opts = function(_, opts) patterns), a metatable-driven util facade (lua/rafi/util/init.lua) that lazily loads submodules, and recent Neovim APIs (vim.diagnostic.jump, nvim 0.11 features, tree-sitter-manager instead of the deprecated nvim-treesitter ensure_installed). Highlights for reuse include a small completion/snippet helper that abstracts LuaSnip vs native vim.snippet, color-theory utilities, a floating preview helper, and filetype plugins with proper undo_ftplugin hygiene. Documentation is extensive but partially stale: the README references paths that no longer exist in the tree (e.g. lua/rafi/plugins/lsp/keymaps.lua, lua/rafi/util/contextmenu.lua), so the code is the reliable source of truth. Dependencies: Neovim β‰₯ 0.11.2, git, lazy.nvim, LazyVim, and roughly 80 third-party Neovim plugins pinned via lazy-lock.json. Optional external CLIs (rg, fd, fzf, bat, zoxide, lazygit) improve picker and git behavior but degrade gracefully. This is not a data repo; it contains no pipelines, notebooks, or datasets. It is an application-distribution-style repo: a carefully engineered editor config demonstrating mature Neovim plugin-spec and Lua patterns.

RATING: 8.8/10 MAINT: active DRIFT: low
β–Έ 4 reusable components found
ryan4yin/nix-config β˜… 2047 100 APPLICATION

This repository is a personal Nix configuration (dotfiles) for managing a heterogeneous fleet of machines: NixOS desktops and servers, macOS laptops (via nix-darwin), and Kubernetes clusters (k3s, KubeVirt). It is structured as a Nix flake with modular components for system configuration, home-manager profiles, package overlays, secrets management (agenix), and infrastructure monitoring (Grafana, Prometheus, VictoriaMetrics, Loki). The codebase demonstrates advanced Nix patterns: parameterized module generators for K3s and KubeVirt, automatic file scanning for module imports, declarative disk partitioning (disko), ephemeral root filesystems with persistent state (preservation), and sandboxed GUI applications (nixpak, bwrap). It also includes a custom desktop shell (noctalia) and extensive input method customization (Rime/Fcitx5). While highly personalized and not intended for direct reuse, the architectural patterns and modular design serve as a reference for building complex Nix-based infrastructure. The repository is actively maintained with eval tests and CI, but lacks integration tests for runtime services.

RATING: 8.6/10 MAINT: active DRIFT: low
β–Έ 8 reusable components found
hlissner/dotfiles β˜… 1942 102 APPLICATION

This is a personal dotfiles repository for NixOS, authored by Henrik Lissner (hlissner). It serves as a complete, declarative system configuration for multiple machines (laptops, desktops, and a HTPC) using Nix flakes. The repository defines the entire systemβ€”from the bootloader and kernel parameters to the desktop environment (Hyprland), shell (zsh, tmux), development tools, and custom utilities. It is not a standalone application but a collection of configuration files, NixOS modules, and scripts that together form a highly opinionated, reproducible computing environment. The architecture is centered around a Nix flake (flake.nix) that imports modular NixOS modules organized by category (desktop, development, editors, shell, services, hardware profiles, themes, etc.). A custom CLI tool called 'hey' (written in Janet) provides a command hub for system management tasks like rebuilding, garbage collection, profile switching, and dotfile synchronization. The desktop environment is heavily customized with Hyprland (Wayland compositor), rofi launcher menus, matugen-based dynamic theming, and a suite of utility scripts for screenshots, screen recording, audio, and more. While the repository is not designed for reuse by others (it explicitly warns against being used as a community framework), several components demonstrate high craftsmanship and could be extracted with minimal modification. The Janet libraries under lib/hey/ provide a reusable command-line argument parser, an async rofi interaction library, and general utility functions. The Nix library (lib/nixos.nix) implements a flake builder pattern that could be adapted for other multi-host NixOS setups. The matugen templates and rofi themes are also potentially reusable as standalone theming assets.

RATING: 8.5/10 MAINT: active DRIFT: low
β–Έ 3 reusable components found
NvChad/NvChad β˜… 28507 2217 APPLICATION

NvChad is a Neovim configuration framework written in Lua that provides a modular, lazy-loaded base setup for Neovim. It enhances the editor with UI improvements (statusline, tabufline, theme picker), plugin management via lazy.nvim, and integrations for LSP, treesitter, telescope, and other popular plugins. The codebase is organized into distinct modules for options, mappings, autocommands, and plugin configurations, allowing users to import it as a plugin and override settings as needed. Key features include fast startup times (~0.02-0.07s), 93% lazy loading of plugins, and a focus on aesthetic UI components like NvCheatsheet and modern theme picker. The project is actively maintained with recent commits and demonstrates strong engineering practices for Neovim Lua configuration.

RATING: 8.4/10 MAINT: active DRIFT: low
β–Έ 2 reusable components found
deadc0de6/dotdrop β˜… 1944 111 APPLICATION

dotdrop is a command-line tool for managing dotfiles across multiple hosts using profiles, Jinja2 templating, actions, and transformations. It stores dotfiles in a Git repository and deploys them to target systems, allowing different configurations per host or environment. The architecture is modular: separate Python modules handle each operation (install, compare, update, import, remove, uninstall), with a central dispatcher in `dotdrop.py`. Configuration is defined in YAML (or optionally TOML) files that specify dotfiles, profiles, variables, actions, and transformations. Key entry points are the CLI subcommands invoked via `dotdrop <command>`. Data flows involve parsing the config, aggregating imported configs and variables, then executing file operations (copy, symlink, diff) with optional template rendering and shell commands. External dependencies include Jinja2, docopt, PyYAML, and optional libraries for TOML support and system detection. The codebase is well-tested with both Python unit tests and a large suite of Bash integration tests, and it is distributed via PyPI, Homebrew, AUR, Snap, and other channels.

RATING: 8.3/10 MAINT: active DRIFT: medium
β–Έ 4 reusable components found
HyDE-Project/HyDE β˜… 9664 635 APPLICATION

HyDE is a configuration management framework and dotfiles distribution for the Hyprland Wayland compositor. It functions as an automated installer, runtime environment, and dynamic theming engine for a complete Linux desktop experience. The system's core innovation is the 'wallbash' pipeline, which extracts color palettes from wallpapers and propagates them into dozens of application configurations via template substitution. The codebase is a polyglot of Bash, Lua, and Python, reflecting an ongoing architectural migration from shell scripts to structured Lua/Python modules. While tightly coupled to the Hyprland ecosystem and carrying significant technical debt from its rapid evolution (duplicate code, hardcoded paths, overlapping implementations), it demonstrates high craftsmanship in specific areas: a pure-Lua TOML parser, a plugin-based package manager abstraction, versioned migration scripts, and a Unix socket-based IPC pattern for audio visualization. Maintenance is active with a defined release cadence, but the project is in a state of active refactoring, meaning users should expect breaking changes and incomplete migrations between versions.

RATING: 8.2/10 MAINT: active DRIFT: medium
β–Έ 8 reusable components found
thoughtbot/dotfiles β˜… 8171 1776 APPLICATION

The thoughtbot dotfiles repository provides a comprehensive set of configuration files and scripts to set up a developer's environment, primarily targeting Zsh, Vim, Tmux, and Git. It uses the rcm tool to manage symlinking of dotfiles into the user's home directory, allowing for easy updates and local overrides. The repository includes shell aliases, functions, and key bindings for Zsh; Vim configuration with plugins for enhanced functionality (including fzf, vim-rails, and ALE linting); Tmux configuration for improved status bar and navigation; and Git configuration with useful aliases and hooks. Additionally, it provides a collection of helper scripts in the `bin/` directory for common tasks such as branch management, port clearing, and file replacement. The architecture is modular, with separate directories for Zsh, Vim, Git templates, and bin scripts. The Zsh configuration is split into configs, functions, and completions, which are loaded in a specific order. The Vim configuration uses vim-plug for plugin management and includes settings for syntax highlighting, linting, and navigation. The Tmux configuration improves color resolution, removes administrative debris from the status bar, sets the prefix to Ctrl+s, and softens the status bar color. The Git configuration adds aliases for creating, deleting, merging, and renaming branches, fetching and rebasing onto the default branch, and trusting project bin directories. It also includes hooks to regenerate ctags after certain Git operations. Key reusable components include the `git-up` script for rebasing onto the default branch and the `tat` script for tmux session management. These scripts are isolated, self-contained, and demonstrate practical solutions to common developer workflows. The configuration adapts to available tools (e.g., using ripgrep if present, falling back to the Silver Searcher) and incorporates modern practices such as using asdf for version management and setting up a safe bin path for trusted repositories.

RATING: 8.1/10 MAINT: maintained DRIFT: low
β–Έ 2 reusable components found
sobolevn/dotfiles β˜… 989 95 APPLICATION

This is a personal dotfiles repository for macOS, automating the setup of a developer environment. It is not a traditional application but a configuration management system using dotbot to symlink config files and Homebrew to install software. The repository manages shell configuration (zsh with oh-my-zsh and zplug), editor settings (VS Code, nano, hyper), browser hardening (Firefox/Zen with arkenfox user.js), macOS system preferences, and a curated set of CLI tools and applications. The core entry point is a bash install script that runs dotbot pipelines. The codebase is well-organized, follows minimalism and security principles, and is actively maintained by a single developer. It demonstrates thoughtful patterns for fzf integration, Docker-based AI agent runners, and peripheral auto-launching, though it remains a personal configuration rather than a reusable library.

RATING: 8.1/10 MAINT: active DRIFT: low
β–Έ 2 reusable components found
gh0stzk/dotfiles β˜… 4729 316 APPLICATION

This repository is a comprehensive, modular dotfiles collection for a bspwm-based desktop environment on Arch Linux. It provides 18 distinct visual themes ('rices') that consistently apply color schemes, wallpapers, and style options across a wide range of applications including terminals (Alacritty, Kitty, Ghostty, ST), status bars (Polybar, Eww), launcher (Rofi), notifications (Dunst), compositor (Picom), browser (Firefox), editor (Neovim), media player (MPV), and many others. The core architecture is a modular theme application system: a central script (`Theme.sh`) sources per-theme color variables and then runs individual module scripts (e.g., `05-alacritty.sh`) that generate or overwrite application configuration files. An installer (`RiceInstaller`) sets up the entire environment, and a GUI editor (`RiceEditor`) allows runtime customization. The repository also includes numerous utility scripts for hardware detection, wallpaper selection, weather display, network management, and media control, many of which demonstrate good engineering practices like caching, parallel processing, and atomic file updates. While tightly coupled to Arch Linux and X11, the modular theming pattern and several standalone scripts are reusable in other contexts.

RATING: 8.0/10 MAINT: active DRIFT: medium
β–Έ 5 reusable components found
gpakosz/.tmux β˜… 25431 3588 APPLICATION

This repository provides a comprehensive, self-contained tmux configuration known as 'Oh my tmux!'. It is a single `.tmux.conf` file with an embedded shell script that dynamically applies themes, key bindings, pane management, status line widgets (battery, uptime, load average, SSH-aware hostname/username), clipboard integration, and plugin management via tpm. The configuration is highly customizable through a separate `.tmux.conf.local` file. The code demonstrates advanced tmux scripting techniques, including conditional version checks, Unicode escape handling, and background processes for status updates. While the configuration is tightly coupled to tmux and not reusable as a standalone library, the shell functions for battery bars, uptime, and SSH detection exhibit high craftsmanship and could inform similar tmux configurations. The repository also includes an install script and detailed documentation.

RATING: 7.9/10 MAINT: active DRIFT: low
β–Έ 1 reusable components found
mylinuxforwork/dotfiles β˜… 4990 373 APPLICATION

This repository is a comprehensive dotfiles distribution for the Hyprland Wayland compositor, branded as ML4W OS. It is not a conventional application but rather a complete desktop environment configuration suite plus supporting tooling: modular Lua configs for Hyprland, QML panels built with Quickshell (statusbar, dock, power menu, calendar, wallpaper picker, welcome app, sidebar), and dozens of Bash utility scripts for wallpaper management, notifications, theme switching, system updates, and installation. The architecture centers on config files under ~/.config that are installed by distribution-specific setup scripts (preflight/post for Arch, Fedora, openSUSE) and a .dotinst installer descriptor.

RATING: 7.9/10 MAINT: active DRIFT: low
β–Έ 4 reusable components found
LukeSmithxyz/voidrice β˜… 4460 1173 APPLICATION

This repository, known as voidrice, is a comprehensive collection of personal dotfiles and shell scripts for a minimal, keyboard-driven Linux desktop environment built around suckless tools (dwm, dwmblocks, st). It is deployed via the LARBS installer to transform a fresh Arch Linux install into a highly customized workflow. The codebase consists of configuration files for the window manager, terminal, file manager, media players, notifications, and more, along with dozens of standalone utility scripts in ~/.local/bin/. These scripts handle tasks such as launching applications via dmenu, opening files by MIME type, compiling documents, setting wallpapers, managing mounts, and generating cross-application shortcuts from simple bookmark files. The status bar is modular, with independent scripts for clock, battery, network, music, and other system information. While the repository is tightly coupled to Luke Smith's personal setup and assumes specific software packages, many of the shell scripts exhibit clean, self-contained patterns that can be reused or adapted for other environments. The overall architecture is a federation of independently configured programs rather than a monolithic application.

RATING: 7.9/10 MAINT: maintained DRIFT: medium
β–Έ 4 reusable components found
badele/nix-homelab β˜… 526 16 APPLICATION

This repository is a comprehensive, declarative NixOS homelab configuration managed with the Clan framework. It defines the entire infrastructure for a multi-machine homelab including servers, desktops, and network devices, all version-controlled and reproducible. The system provisions self-hosted services (Caddy, Grafana, VictoriaMetrics, Vector, Blocky, Miniflux, Linkding, etc.), identity management (Authentik, Zitadel), monitoring and alerting, backup (Borgbackup), and desktop environments (KDE, i3). The architecture is modular: reusable NixOS feature modules under `modules/nixos/features/` follow a consistent pattern using `mkFeatureOptions` for enabling services with standardized options (domain, firewall, monitoring integration). Secrets are managed via SOPS with age encryption, and disk partitioning is handled by Disko templates. The repository is not a software application but an infrastructure-as-code project that demonstrates high craftsmanship in Nix module design, with clear separation of concerns, helper functions, and integration patterns. It is actively maintained but shows some technical drift due to deprecated identity providers and hardcoded IPs.

RATING: 7.8/10 MAINT: active DRIFT: medium
β–Έ 4 reusable components found
JaKooLit/Arch-Hyprland β˜… 4578 361 APPLICATION

This repository contains a comprehensive set of Bash scripts to automate the installation and configuration of the Hyprland window manager on Arch Linux, along with associated desktop components (waybar, rofi, sddm, pipewire, fonts, GTK themes, etc.). The main entry point is `install.sh`, which presents an interactive whiptail-based menu to let users select desired features (NVIDIA setup, Bluetooth, Thunar, ZSH, dotfiles, etc.). It orchestrates over 30 modular sub-scripts in `install-scripts/` that handle package installation via pacman and AUR helpers, service enabling, configuration file copying (including the popular KooL Hyprland dotfiles from a separate repository), and system modifications. The codebase is well-structured for its purpose: it uses a centralized logging system, progress indicators, and a global functions library (`Global_functions.sh`) that encapsulates package installation and error handling. Additional utility scripts provide battery, disk, and temperature monitoring as optional systemd user services. The project is actively maintained with changelog updates and issue templates, though it is tightly coupled to the Arch Linux ecosystem and the KooL Hyprland dotfiles. It is not a reusable library but serves as a polished, user-friendly deployment tool for end-users.

RATING: 7.6/10 MAINT: maintained DRIFT: low
β–Έ 3 reusable components found
flickowoa/dotfiles β˜… 1988 64 APPLICATION

This repository provides a complete Hyprland dotfiles configuration, including window manager settings, keybindings, theme management, and utility scripts for a Linux desktop environment. In production, it defines the entire user interface behavior: workspace switching via keybinds, floating window rules, power profile switching (battery vs AC), screen locking with swaylock, screenshotting with grim/slurp, and brightness/volume controls via scripts. The architecture is a collection of Hyprland config files, terminal (foot) config, fish shell functions, and shell scripts, all sourced from a main `hyprland.conf`. Themes are managed through separate branches and a base theme that uses a template-based approach to generate CSS for the ironbar taskbar dynamically. The system's external dependencies include Hyprland, foot, wofi, swaylock, grim, slurp, swww, fish, light, pamixer, asusctl (optional), and ironbar. This is not a library or service but a personal desktop configuration set; reusability of individual components is limited due to tight coupling with Hyprland and specific tool choices, though the theming script demonstrates a portable template substitution pattern.

RATING: 6.8/10 MAINT: maintained DRIFT: low
β–Έ 2 reusable components found
manateelazycat/lazycat-emacs β˜… 494 82 APPLICATION

This repository is a personal Emacs configuration and extension collection ('lazycat-emacs') by Andy Stewart, not a standalone application or service. It is organized as a modular Emacs Lisp setup: site-start.el bootstraps the load path, site-lisp/config/init.el loads per-feature init-*.el files covering languages, UI, AI assistants, LSP, IRC, email, and window management. The bulk of the code lives in site-lisp/extensions/lazycat/, a large grab-bag of self-contained Emacs Lisp utilities and minor modes, plus vendored third-party packages (SLIME, magit-section, doxymacs, ghc-mod, ruby-tools) and a comprehensive yasnippet snippet collection. It also bundles StarDict dictionary files and tree-sitter grammar binaries for offline lookup and modern syntax highlighting.

RATING: 6.8/10 MAINT: maintained DRIFT: medium
β–Έ 5 reusable components found
justhalfbit/ghostty-terminal-config β˜… 319 59 APPLICATION

This repository provides a configuration setup for a modern terminal environment on macOS, comprising the Ghostty terminal emulator, Starship prompt, and Zsh shell with plugins (autosuggestions, syntax highlighting, completions) and additional CLI tools (fzf, zoxide, eza, bat, yazi). The included install.sh script automates the installation of dependencies via Homebrew, backs up existing configurations, and deploys the new configuration files. The configuration files are well-documented and customized for a cohesive, visually appealing terminal experience with features like a rainbow prompt, glassmorphism, and enhanced productivity tools. Note: This repository is primarily a collection of configuration files and an installation script, and does not contain application logic beyond the setup process.

RATING: 6.7/10 MAINT: maintained DRIFT: low
ykqmain/Config β˜… 549 8 APPLICATION

This is a personal configuration repository (dotfiles) for macOS, containing settings for Sublime Text, Terminal, oh-my-zsh, Git, and various shell scripts. It is not a software application but rather a collection of user environment configurations and utility scripts. The repository is well-organized with categorized directories for different tools (Sublime, Terminal, Archive). It includes a custom terminal theme 'GuoFeng', shell aliases and functions, git configuration, and Sublime Text snippets. The most notable reusable component is a bash script to rewrite Git commit author information across all branches. While not a production application, the configurations reflect a thoughtful, minimalist approach to tooling, with emphasis on native macOS apps and open-source alternatives.

RATING: 6.6/10 MAINT: active DRIFT: low
β–Έ 3 reusable components found
ElysiaOS/ElysiaOS β˜… 210 9 APPLICATION

ElysiaOS is a personal Linux desktop dotfiles and ricing repository, not a distributable operating system, an application server, or a data project. The repository contains a complete themed Arch Linux + Hyprland setup: window manager configs, Waybar status bars, EWW dashboard widgets, swaync notifications, rofi launchers, kitty terminal configs, SDDM login theme, Plymouth boot splash, icon/cursor/wallpaper assets, and an installer script that wires everything together. The dominant character is a heavily customized desktop environment tied to a single author's machine and anime-themed aesthetic.

RATING: 5.4/10 MAINT: maintained DRIFT: medium
β–Έ 2 reusable components found
$ loading more...
$ submit: