aboutsummaryrefslogtreecommitdiffstats
path: root/modules/scripts
Commit message (Collapse)AuthorAgeLines
* feat: added auto-completion for usque-warp, fixed usque-warp disconnectArpit Chakladar2026-08-29-28/+94
| | | | | - Added zsh auto-completion for usque-warp - Fixed usque-warp disconnect
* refactor: moved the git-log-graph into a separate scriptArpit Chakladar2026-08-29-0/+86
|
* feat: updated the visual indicator for neomutt-syncArpit Chakladar2026-08-29-18/+18
|
* feat: Rewrote neomutt keybindings, updated commentsArpit Chakladar2026-08-05-18/+17
| | | | | - Rewriting the neomutt keybindings by hand - Updated comments to be simpler
* feat: moved gpg data directory, other gopass ssh keys, script builderArpit Chakladar2026-08-04-52/+70
| | | | | | | | | | - Using ~/.local/share/gnupg/ for storing the data for gnupg, and made the necessary changes in all places to that effect - Additional ssh keys can be added to gopass under ssh/, which is on top of the git servers that already existed - Using pkgs.writeShellApplication for creating the scripts, stopped setting path for each dependency (creating a long PATH variable and thus finding binaries may take longer), instead using the inbuild dependency (runtimeInputs) for the scripts
* feat: Added package option to each module, darkman serviceArpit Chakladar2026-08-02-4/+2
| | | | | | | - 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: fixed chromium extension ids, duplicate sent emails, etcArpit Chakladar2026-08-02-4/+1
| | | | | | | | | | | - 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: added icons to desktop entriesArpit Chakladar2026-08-01-1/+14
| | | | | | - 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): added custom usque moduleArpit Chakladar2026-07-30-68/+73
| | | | | - 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-0/+58
| | | | | | - 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
* 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-177/+154
| | | | | | - 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: replace w3m with chawan for HTML rendering and web browsingArpit Chakladar2026-07-26-36/+0
| | | | | | | - 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: using xdg.desktopEntries inplace of lib.makeDesktopItemArpit Chakladar2026-07-26-20/+13
|
* feat: configure Wayland scaling, switch to scrolling layout, polish themeArpit Chakladar2026-07-26-2/+2
| | | | | | | | | | | | | | | | - 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: migrate to Wayland-native media tools, drop X11 cruft, polish waybar ↵Arpit Chakladar2026-07-26-152/+18
| | | | | | | | | | | 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(rofi): add rofi launcher module, drop polybar and fzf-launcher, add ↵Arpit Chakladar2026-07-25-82/+0
| | | | | | | | | | | | 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: migrate from lf to yazi as default file managerArpit Chakladar2026-07-23-230/+62
| | | | | | | | | - 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: add private email and git modulesArpit Chakladar2026-07-21-22/+20
| | | | | | | 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
* refactor(scripts): split monolithic module into per-script submodulesArpit Chakladar2026-07-18-356/+533
| | | | | | | | | | | | | | | | | Extract shared `mkScript` and `mkScriptModule` helpers into `lib.nix` Split each script into `modules/scripts/<name>/` with its own `default.nix`, `script.sh`, and `assertions.nix` Remove `conditions` parameter from `mkScriptModule`; move condition assertions into per-script `assertions.nix` files with inline checks and error messages Simplify `mkScriptModule` to return `{ options, moduleConfig }` instead of a module function, taking `config` as a direct parameter Add `description` field to `mkScript` that inserts the description as a `# <text>` comment between the shebang and env vars Thread `description` through `mkScriptModule` to each `default.nix` Move top comment lines from each `script.sh` into the `description` field and remove from sources to avoid duplication Remove old flat `.sh` files from `modules/scripts/` root
* feat: switch launcher to dex, add vi-mode and kitty nav, enable ouch unfreeArpit Chakladar2026-07-18-26/+15
| | | | | | | | | | | | | Rewrite fzf-launcher to use dex via setsid instead of parsing Exec= lines Add vi-mode (bindkey -v, KEYTIMEOUT=1) to zsh Add Ctrl+click link handling and Ctrl+Shift+h/j/k/l window nav to kitty Switch i3 terminal key from $mod+t to $mod+Return Enable unRAR support in ouch (override enableUnfree) Fix epub cover extraction (decompress full archive, use find) Remove neomutt dd/gT keybindings Fix missing $TITLE quoting in neomutt-sync Add findutils and dex to script deps
* refactor: replace zsh deps with runtimeShell, migrate scripts from ↵Arpit Chakladar2026-07-18-41/+68
| | | | | | | | | | | | | | | | | | | symlinkJoin to runCommand, add missing assertions and deps Scripts: Migrated from symlinkJoin to runCommand; replaced zsh dependency with pkgs.runtimeShell across polybar, scripts, and fzf-launcher Assertions: Added gopass/gpg checks for neomutt, signing checks for git, git dependency for lazygit, file-preview deps for lf, desktop/kitten checks for scripts Lazygit: Fixed mkIf placement, imported assertions Neomutt: Removed verbose keybinding descriptions Nixvim: Removed <c-c> notification-clear mapping File preview: Replaced libreoffice document preview with pandoc/antiword (terminal-based) Fzf launcher: Fixed bash compatibility (setopt → shopt -s) Deps: Added coreutils, fontconfig, antiword, pandoc, util-linux, bash, findutils, grep, sed, gawk, ncurses to various scripts
* refactor: standardize file-level comments, drop unused pkgs, and theme ↵Arpit Chakladar2026-07-17-5/+7
| | | | | | | | | | | | | | | | | lazygit with base16 - Move inline comments to top of file across all modules for consistent style - Add descriptive comments to files missing them (aggregators, assertions, scripts, flake) - Remove unused `pkgs` parameter from i3/keybindings.nix and zathura/default.nix - Drop explicit `package = pkgs.zathura` (home-manager provides the default) - Delete stale meli-sync.sh (migrated to neomutt) - Remove extraneous blank lines for consistent formatting - Theme lazygit with config.scheme base16 colors instead of hardcoded names
* feat: added ui for displaying syncing mail in neomuttArpit Chakladar2026-07-15-0/+76
| | | | | Using dialog to show the progress indicator for email syncing in mbsync and notmuch. Just for eye candy.
* feat: renamed the options to reflect their changed directory stuctureArpit Chakladar2026-07-15-35/+35
| | | | | Renamed the options for the configurations based on the sub-module that they belong to
* fix: fixed fzf-launcher sometimes failingArpit Chakladar2026-07-14-1/+5
| | | | | sometimes fzf-launcher didn't successfully launched the selected app, to open something we had to do it multiple times. now it works everytime.
* feat: using neomutt instead of meli for the tui email clientArpit Chakladar2026-07-10-13/+0
| | | | using a private module that stores the private config options for the user which are not to be pushed to the public repo
* feat: added email configuration with mbsync + notmuchArpit Chakladar2026-07-09-374/+18
| | | | added a private module which will be gitignored and serves to include options that are not meant to be shared
* feat: replace pass with gopassArpit Chakladar2026-07-09-1/+1
| | | | | | Renamed pass module to gopass, updated the package to pkgs.gopass (with passAlias override for the pass binary symlink), and migrated all references across the config (programs option, script deps, imports).
* refactor: made some minor changesArpit Chakladar2026-07-09-2/+0
|
* feat: added aerc (email client), pass (password manager), gpg (encryption ↵Arpit Chakladar2026-07-09-0/+376
| | | | | | | | | manager) Using aerc email client with imap and smtp with mbsync to download the mail locally and notmuch to query it Added custom scripts to automatically add email configurations for popular email providers for mbsync Using pass password manager with gpg for encryption Using git with pass instead of storing the github token in a plain-text file
* added the scripts to desktop items so they can be launched through ↵Arpit Chakladar2026-06-13-6/+60
| | | | application launcher
* created helper script to run aria2 downloader in the terminalArpit Chakladar2026-06-13-0/+13
|
* added nexus mods to heroic launcherArpit Chakladar2026-05-31-0/+1
|
* passing SYSTEMD_RESOLVED_PATH through env variables for vpn-connect scriptArpit Chakladar2026-04-24-3/+3
|
* added librsvg for file preview script for svg filesArpit Chakladar2026-04-24-1/+2
|
* removed redundant variables from file-preview scriptArpit Chakladar2026-04-24-8/+1
|
* relying on path variable for accessing the binaries in the script rather ↵Arpit Chakladar2026-04-24-78/+45
| | | | than passing them as env variables
* using new explicitly specified packages in scriptsArpit Chakladar2026-04-24-19/+15
|
* using config.programs.kitty.package to get the derivation for kittyArpit Chakladar2026-04-24-4/+4
|
* replacing tools with programs to be more consistent with config optionsArpit Chakladar2026-04-24-16/+16
|
* waiting for the vpn to connect before exitting the script in vpn-connectArpit Chakladar2026-04-23-13/+30
|
* minor changesArpit Chakladar2026-04-23-3/+2
|
* fixed the file preview scriptArpit Chakladar2026-04-23-17/+9
|
* fixed the file previewer script to prevent race conditions when the preview ↵Arpit Chakladar2026-04-23-19/+54
| | | | images are being created as it is passed to kitty
* storing a temp file for each image preview generated, for lf file preview scriptArpit Chakladar2026-04-23-24/+35
|
* added bat configurationArpit Chakladar2026-04-23-10/+14
|
* passing paths to the the executables used in the scriptArpit Chakladar2026-04-23-26/+38
|