aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
* feat: Added package option to each module, darkman serviceArpit Chakladar2026-08-02-185/+297
| | | | | | | - Added package options to each module which defines the package/derivation that should be used in all other modules - Added a systemd oneshot service that autosets darkman to dark mode - Removed the prompt from rofi
* feat: added gpg-backup scriptArpit Chakladar2026-08-02-0/+174
| | | | | - Added utility script that can export and import gpg public keys, private keys and trust database
* feat: added example to use pgp signing of emails, fixed browserpassArpit Chakladar2026-08-02-95/+146
| | | | | | | | - Added example on how to enable pgp signing on gmail email accounts - The programs.browserpass.enable option only used extension ids for the actual extensions not for the custom extension key we gave it. So we are updaing the com.github.browserpass.native.json file to manually add our own extension id to it
* feat: fixed chromium extension ids, duplicate sent emails, etcArpit Chakladar2026-08-02-91/+123
| | | | | | | | | | | - Every home-manager switch had a change to change the ids of the extensions, now we get the same extension id for any build of the given extension - Sending emails from neomutt send duplicate emails, it is now fixed - Auto re-registering in usque-warp connect, as it gets deactivated in about 24 hours - Using a style.mustache.css for the waybar css configs for syntax highlighting
* feat: using nixpkgs from the local flake registry, added darkmanArpit Chakladar2026-08-01-55/+56
| | | | | | | - Making nixpkgs use the local registry instead of downloading from github from home manager this makes sure that home manager and nixos use the same derivations for any given package - Added darkman and removed gtk for enabling and using dark mode
* feat: removed enteauthArpit Chakladar2026-08-01-31/+1
| | | | | - Gopass and its otp generation from secret is good enough, enteauth is redundant.
* fix: used the logo for yazi that comes with the packageArpit Chakladar2026-08-01-1/+1
|
* feat: added icons to desktop entriesArpit Chakladar2026-08-01-6/+705
| | | | | | - Text-based applications (neomutt, impala, ...) start a desktop session by running inside of kitty and thus had kitty's icon, but now we are using their own icons.
* feat: waybar vpn module, heroic launcher desktop entryArpit Chakladar2026-08-01-1/+12
| | | | | | - Added a VPN indicator module to waybar - Added a desktop entry for heroic game launcher, for running through rofi
* feat(waybar): added custom usque moduleArpit Chakladar2026-07-30-70/+94
| | | | | - Uses the newly added usque-warp script's subcommand status to get the status and device name and display it in the custom/usque module
* feat(gopass-ssh-load): moved the gopass-ssh-load into modules/scriptsArpit Chakladar2026-07-29-51/+60
| | | | | | - Maintaining the format of the rest of the codebase moving gopass-ssh-load into its own script in modules/scripts instead of writing it directly in modules/security/gopass/default.nix
* feat(ssh): lazy-loading ssh keys from gopassArpit Chakladar2026-07-29-50/+63
| | | | | - Loading ssh keys from gopass only when ssh command runs for the first time
* feat(chromium): added custom themeArpit Chakladar2026-07-29-4/+96
| | | | | | - Added a custom theme as an extension with just manifest.json file. The theme now more closely matches the colors of the rest of the applications.
* feat(gtk): add dark theme config, dconf color-scheme, and qt gtk4 integrationArpit Chakladar2026-07-29-0/+20
|
* feat(chromium): use ouch, drop python dep, add assertion; add private configsArpit Chakladar2026-07-29-28/+62
| | | | | | | | | - Replace unzip with ouch from file-management.ouch.package - Replace python3-based CRX header parsing with pure shell (od) - Add assertion that file-management.ouch is enabled when chromium is - Thread config through to extension lib - Add bookmark_bar.show_on_all_tabs = false to chromium prefs - Add private modules: cloudflare-warp wireguard, email, git config
* feat: updated searxng-home extensionArpit Chakladar2026-07-29-17/+13
| | | | | - Added extension id for searxng-home - Updated searxng-home to v0.2.0
* feat(chromium): added searxng-home extensionArpit Chakladar2026-07-29-3/+41
| | | | | | - SearXNG-Home extension converts the new tab page into a page that automatically uses https://searx.space to find publicly hosted searxng instances for searching
* fix(usque-warp): fixed connect and disconnect optionsArpit Chakladar2026-07-28-23/+92
| | | | | | | | | - Previously if the system reboots before disconnect is ran the PID file lingers and prevented running on the next boot. - Disconnect replaced the tun0 redirect in ip route to the previous default route which caused duplicate routes - disconnect didn't run kill for the usque process with sudo and thus it failed to kill the process
* feat(deep-clean): deep-clean deletes all generations except current oneArpit Chakladar2026-07-28-13/+18
| | | | | - Running deep-clean will now delete all generations for home-manager and nixos except the latest one before cleaning dangling derivations
* feat(usque): using usque for connecting with cloudflare warpArpit Chakladar2026-07-28-222/+180
| | | | | | - Using usque for an opensource alternative to cloudflare-warp client - Created utility script usque-warp that can automatically connect and disconnect channel with cloudflare warp
* feat(chawan): add homeUrl option; feat(chromium): hide NTP footerArpit Chakladar2026-07-28-1/+9
| | | | | | - Add web.chawan.homeUrl option (default: https://searx.space) and pass it as the startup URL in the desktop entry. - Set NewTabPage.FooterVisible = false in Chromium preferences.
* feat: using ungoogled-chromium, accelerated graphics for hyprlandArpit Chakladar2026-07-27-66/+347
| | | | | | | | | | | - Switch to using ungoogled-chromium package instead of chromium to get away from google tracking - Installing extensions unpacked from their source code/zip downloads for ungoogled-chromium - Using hl.env to pass environment variables to hyprland as home.sessionVariables don't get passed - Fixed the graphics acceleration for hyprland, but passing the environment variables through hl.env
* fix: browserpass works with chromiumArpit Chakladar2026-07-27-2/+17
| | | | | | - Setting the environment variables in hyprland so that chromium launches with all the environment variables, (PASSWORD_STORE_DIR in this case)
* fix(chawan): refine neomutt integration, add default waybar icon, drop kitty ↵Arpit Chakladar2026-07-26-7/+10
| | | | | | | | | | image-mode - Set window title to "neomutt" via chawan -o flag for waybar matching - Add "Default" workspace icon using base16 base07 color, set as window-rewrite-default - Drop kitty-specific image-mode, use "auto" instead - Disable chawan set-title to avoid title conflicts - Pass full config into waybar/lib.nix for scheme access
* feat: replace w3m with chawan for HTML rendering and web browsingArpit Chakladar2026-07-26-102/+97
| | | | | | | - Create web.chawan module with enable/package options, kitty desktop entry, and programs.chawan.settings (buffer.images=true, display.image-mode=auto) - Update neomutt macros, mailcap, and assertions from w3m to chawan - Switch waybar window-rewrite and workspace icon from W3M to Chawan - Drop web/w3m module
* feat: replace feh with swayimg, refactor waybar icons and window rewritesArpit Chakladar2026-07-26-105/+141
| | | | | | | | | - Replace feh module with swayimg (Wayland-native image viewer with Lua config) - Extract shared app icons into waybar lib, switch to title-based matching in window module - Remove gnome-keyring wrapper from ente-auth, drop custom desktop entry - Clean up bluetui/impala desktop entries (lowercase name, drop --class flag) - Add PASSWORD_STORE_DIR session variable to gopass - Switch Chromium to True Amoled Black theme
* feat: hyprland keybindings, neomutt refactoringArpit Chakladar2026-07-26-52/+59
| | | | | | - Fixed the keybinding to resize the windows to 50% and 100% (Super + =) - Left Click + Drag on mouse to move windows - Right Click + Drag on mouse to resize
* feat(neomutt): wrap neomutt with urlscan, remove flag legendArpit Chakladar2026-07-26-45/+26
| | | | | | - Add `communication.neomutt.package` option wrapping neomutt with urlscan - Replace standalone urlscan in home.packages with the wrapped package - Drop flag_legend.txt and its `gl` macro binding
* feat: using xdg.desktopEntries inplace of lib.makeDesktopItemArpit Chakladar2026-07-26-107/+83
|
* feat: configure Wayland scaling, switch to scrolling layout, polish themeArpit Chakladar2026-07-26-47/+74
| | | | | | | | | | | | | | | | - Set GDK_SCALE, QT_SCALE_FACTOR, monitor scale=1, chromium --force-device-scale-factor=1.15 - Migrate dwindle → scrolling layout with column config and Equal key resize - Bump default font size to 18, cursor to 20, system-monitor font shift - Change gap_out to 10, border width to 1px, inactive border to base03 - Refactor waybar workspaces/network to use shared mkIcon helper - Toggle window close with SHIFT+Q, remove redundant file-explorer size rule - Thinner rofi borders, larger width, bigger icons, bold prompt color - Tidy waybar spacing: uniform margins, larger padding, resized workspace buttons - Enable xwayland force_zero_scaling
* feat: enable hyprland vfr and other optimizationsArpit Chakladar2026-07-26-11/+73
| | | | - Enable misc.vfr in hyprland for variable frame rate
* feat(waybar): rearranged the modules in waybarArpit Chakladar2026-07-26-10/+9
|
* refactor(waybar): extract mkIcon helper, drop per-module iconColor parameterArpit Chakladar2026-07-26-53/+68
| | | | | | | - Add lib.nix with shared mkIcon function for consistent icon formatting - Pass mkIcon instead of per-module iconColor to all modules - Define iconColor locally within each module - Fix battery icon character
* feat: migrate to Wayland-native media tools, drop X11 cruft, polish waybar ↵Arpit Chakladar2026-07-26-253/+144
| | | | | | | | | | | and hyprland - Switch ffmpeg/maim/slop → grim/slurp/wf-recorder (X11→Wayland) - Rewrite screen-recording script for wf-recorder+slurp - Add window-rewrite icons and style workspace buttons in waybar - Set --class on kitty desktop entries for correct hyprland window matching - Remove i3-keybindings script and stale rofi window rules - Tweak cursor size, border colors, file-explorer dimensions
* feat(waybar): add bandwidth stats, tooltips, spacing consistency, and ↵Arpit Chakladar2026-07-25-15/+31
| | | | | | | | | workspace list fix - Add spacing between icon and text across all waybar modules for consistency - Add bandwidth download/upload indicators to network module - Add tooltip-format to date (weekday) and time (seconds) modules - Replace persistent-workspaces integer with table syntax, remove on-click
* fix: removed the unused configs referencing the keybindings scriptArpit Chakladar2026-07-25-21/+2
|
* feat(rofi): add rofi launcher module, drop polybar and fzf-launcher, add ↵Arpit Chakladar2026-07-25-419/+232
| | | | | | | | | | | | private configs - Add rofi module with base16-themed .rasi template and drun mode - Remove polybar module (replaced by waybar in prior commits) - Remove fzf-launcher script (replaced by rofi) - Update hyprland window rules, keybinding, and cursor size - Add private email and git config modules - Switch pinentry from gtk2 to rofi - Tweak waybar #window margin
* feat(waybar): color icons with base16, refactor modules, polish bar stylingArpit Chakladar2026-07-25-35/+103
| | | | | | | | | - Color individual module icons with base16 palette via iconColor param - Refactor vpn module into writeShellScript for Pango markup support - Switch window module from max-length to expand, fix-center to false - Add persistent-workspaces to reserve workspaces across monitor changes - Overhaul waybar CSS: borders, padding, hover/active workspace states - Change memory display from {usedGb} GB to {percentage}%
* feat(waybar): add waybar module, refine hyprland config, add private configsArpit Chakladar2026-07-25-38/+239
| | | | | | | | | | | | | - Add waybar with base16-themed bar, modules (workspaces, window, volume, battery, network, vpn, cpu, memory, date, time), and CSS style - Replace polybar with waybar in desktop imports - Launch waybar + hyprpaper on hyprland startup - Extract hyprpaper into its own module with eDP-2 output target - Tweak border colors (active: base07→base03, inactive: base03→base00) - Enable Nordzy cursor theme with hyprcursor support - Add private email (neomutt) and git (signing key) configs - Remove chromium force-device-scale-factor flag - Drop explicit desktop.hyprland.enable from user config - Add result to gitignore
* feat(hyprland): migrate config to Lua, fix API calls, switch to hyprpaperArpit Chakladar2026-07-25-217/+295
| | | | | | | | | | - Set configType = "lua" for Hyprland 0.55+ Lua config format - Rewrite window rules to use hl.window_rule({...}) table API - Convert keybindings to hl.bind() with _args + mkLuaInline - Fix dispatchers: hl.dsp.focus (not window.focus), hl.dsp.focus({workspace=}) (not workspace.switch) - Replace swaybg with services.hyprpaper module for wallpaper - Fix border colors to use base07 (white) / base03 (grey) with rgba() format - Reduce default font size from 16 to 12
* feat(display): using proper window classes for i3Arpit Chakladar2026-07-25-10/+32
|
* fix: fixed the popup windows in i3Arpit Chakladar2026-07-25-1/+5
|
* feat: migrate from brave to chromium, enable aria2 systemd integrationArpit Chakladar2026-07-25-93/+100
| | | | | | | | | | - Replace Brave with Chromium as default browser - Switch to uBlock Origin Lite, add extension descriptions - Enable vertical tabs, high efficiency mode, and system color theme - Remove managed browser policies (RestoreOnStartup, PasswordManager, etc.) - Expose configurable `web.chromium.package` option - Fix browserpass guard to check `chromium.enable` instead of `brave.enable` - Enable systemd integration for aria2
* feat: add private email/git config and refine i3 floating window rulesArpit Chakladar2026-07-24-5/+5
|
* feat(gopass): load SSH keys from gopass for git platformsArpit Chakladar2026-07-24-34/+60
| | | | | | | - Add security.gopass.ssh-agent.enable option - Create gopass-ssh-load systemd oneshot service - Remove identityFile and placeholder files from SSH git host configs - Enable ssh-agent for the user
* feat: migrate from lf to yazi as default file managerArpit Chakladar2026-07-23-815/+363
| | | | | | | | | - Replace lf module with yazi module including base16 theme - Remove file-preview and file-preview-clean scripts (no longer needed) - Add yazi-file-chooser script for XDG Desktop Portal integration - Update i3 keybinding to use yazi - Add GTK_USE_PORTAL and TERMCMD session variables - Add extraLinks support to mkScriptModule
* feat(w3m): add module with desktop entry + integrate into neomuttArpit Chakladar2026-07-23-28/+131
| | | | | | | | | | | - modules/web/w3m: enable/package options, desktop entry via kitty, assertion - modules/web/w3m: delegate to programs.w3m under the hood - modules/web/w3m: default package to programs.w3m.finalPackage - modules/desktop/xdg: add portal config with common.default = "*" - neomutt/nix: use lib.getExe' config.web.w3m.package for w3m refs - neomutt/assertions: add w3m dependency assertion - users/arpit: enable web.w3m
* feat: add private email and git modulesArpit Chakladar2026-07-21-48/+42
| | | | | | | modules/private: add email and git personal configuration modules/lf: remove busybox dependency, use config shell modules/scripts: drop redundant file/bat from home.packages flake.lock: update nixpkgs and flake inputs
* feat: added desktop entries for bluetui and impalaArpit Chakladar2026-07-18-4/+66
| | | | | | | | Added the desktop entries for bluetui and impala so they can now be run from fzf-launchers or any other launcher. Also added assertions making sure terminal.kitty is enabled if bluetui or impala are enabled, as we are using it as the terminal for the commands for their desktop entries.
* refactor(gaming): extract heroic into its own module, nest steam/heroic into ↵Arpit Chakladar2026-07-18-42/+42
| | | | | | | | | subdirectories Create modules/gaming/heroic/default.nix with gaming.heroic.{enable,package} options, including gamemode LD_LIBRARY_PATH wrapping and mime handler Move steam.nix → steam/default.nix and heroic.nix → heroic/default.nix Strip heroic out of the gaming.launcher bundle in default.nix