dotfiles
My PC Dotfiles & Websitegit clone https://github.com/maydayv7/dotfiles
commit 8a23011f47a19043ecdcb54347e4efb11291ee70 parent 9fa3dc5c75cc774e198305a76e4e87364ef3c4ba Author: maydayv7 <maydayv7@gmail.com> Date: Wed, 17 Apr 2024 12:01:41 +0530 fix: Random Fixes + Add Calibre + Improve `os-install` + Update README + Hyprland: Use 9 Workspaces
Diffstat:
| M | README.md | | | 21 | +++++++++++++++++++-- |
| M | flake.nix | | | 2 | +- |
| M | modules/apps/office.nix | | | 21 | +++++++++++++-------- |
| M | modules/gui/desktop/hyprland/apps/bar.nix | | | 1 | - |
| M | modules/gui/desktop/hyprland/apps/default.nix | | | 9 | ++++++++- |
| M | modules/gui/desktop/hyprland/settings/keybindings.nix | | | 11 | +++++------ |
| M | modules/gui/desktop/hyprland/settings/plugins.nix | | | 4 | ++-- |
| M | scripts/install.nix | | | 7 | ++++++- |
8 files changed, 54 insertions(+), 22 deletions(-)
diff --git a/README.md b/README.md @@ -81,7 +81,7 @@ This [repository](https://github.com/maydayv7/dotfiles) contains the configurati | :------------------- | :----------------------------------------------------------------------------------------------------------------------: | | Editors | [`nano`](https://www.nano-editor.org/), [VS Code](https://code.visualstudio.com/) | | Shells | [`bash`](https://www.gnu.org/software/bash/), [`zsh`](https://www.zsh.org) | -| Terminal | [Blackbox](https://gitlab.gnome.org/raggesilver/blackbox), [`xfce4` Terminal](https://docs.xfce.org/apps/terminal/start) | +| Terminal | [Blackbox](https://gitlab.gnome.org/raggesilver/blackbox), [`xfce4` Terminal](https://docs.xfce.org/apps/terminal/start), [Kitty](https://sw.kovidgoyal.net/kitty/) | | Browser | [Firefox](https://www.mozilla.org/en-US/firefox/) | | Desktop Environments | [GNOME](https://www.gnome.org), [XFCE](https://xfce.org/), [Pantheon](https://elementary.io/) | | Compositors | [Hyprland](https://hyprland.org/), [Picom](https://github.com/yshui/picom) | @@ -376,7 +376,10 @@ If you really want to get dirty with Nix and decide to invest oodles of your tim ### Caution -I am pretty new to Nix, and my configuration is still _WIP_ and uses Nix [Flakes](https://nixos.wiki/wiki/Flakes), an experimental feature (**Important:** Nix >= 2.19) +This repository contains my personal configuration, and may cause undesirable effects on other systems. It may also be subject to rapid undocumented changes, and uses Nix [Flakes](https://nixos.wiki/wiki/Flakes), an experimental feature + +> [!NOTE] +> Required Nix Version >= 2.19 It is not recommended to use NixOS if you are a beginner just starting out, without acquaintance with either the command-line or functional programming languages, since the learning curve is steep, debugging issues is difficult, documentation is shallow, and the effort required/time spent isn't worth the hassle for a novice/casual user @@ -495,6 +498,20 @@ You can navigate to the `README`s present in the various directories to know mor <details> <summary><b>Changelog</b></summary> +### vNEXT +- Hyprland Improvements + - Update to latest version + - Keybindings List + - Panel Improvements + - Border Gradients + - Revamp `hyprutils` Script + - Use [`clipse`](https://github.com/savedra1/clipse) for Clipboard + - Use amazing plugins + - [Hycov](https://github.com/DreamMaoMao/hycov) + - [Hyprspace](https://github.com/KZDKM/Hyprspace) + - [Hyprexpo](https://github.com/hyprwm/hyprland-plugins/tree/main/hyprexpo) +- Add `devcontainer` for Github Codespaces + ### v17 - Re-expose `lib.build.device` diff --git a/flake.nix b/flake.nix @@ -23,7 +23,7 @@ # Author -> V 7 <maydayv7@gmail.com> # # License -> MIT # # URL -> github:maydayv7/dotfiles # -# Version -> v17 # +# Version -> vNEXT # # --------------------------------------- # # Welcome to Ground Zero! # # The Very Heart of my 'dotfiles' # diff --git a/modules/apps/office.nix b/modules/apps/office.nix @@ -12,15 +12,18 @@ in { imports = [inputs.windows.nixosModules.onlyoffice]; config = lib.mkIf enable { # Applications + programs.onlyoffice = { + enable = true; + package = pkgs.onlyoffice-bin_latest; + }; + environment.systemPackages = with pkgs; [ # Productivity + calibre gimp gnome.simple-scan gscan2pdf handbrake - hunspell - hunspellDicts.en_US-large - hyphen libreoffice obs-studio pitivi @@ -31,12 +34,12 @@ in { thunderbird whatsapp-for-linux zoom-us - ]; - programs.onlyoffice = { - enable = true; - package = pkgs.onlyoffice-bin_latest; - }; + # Utilities + hunspell + hunspellDicts.en_US-large + hyphen + ]; # Dictionaries environment = { @@ -48,8 +51,10 @@ in { # Persisted Files persist.files = [".config/gscan2pdfrc" ".config/zoomus.conf"]; persist.directories = [ + ".calibre" ".thunderbird" ".zoom" + ".config/calibre" ".config/GIMP" ".config/google-chrome" ".config/libreoffice" diff --git a/modules/gui/desktop/hyprland/apps/bar.nix b/modules/gui/desktop/hyprland/apps/bar.nix @@ -111,7 +111,6 @@ in rec { "7" = ""; "8" = ""; "9" = ""; - "10" = ""; OVERVIEW = ""; special = ""; }; diff --git a/modules/gui/desktop/hyprland/apps/default.nix b/modules/gui/desktop/hyprland/apps/default.nix @@ -270,7 +270,14 @@ in { # Application Drawer ".config/nwg-drawer/drawer.css".text = hyprland.nwg.drawer; - # Clipboard + # Browser + ".mozilla/firefox/default/chrome/userChrome.css".text = '' + #TabsToolbar { + -moz-window-dragging: no-drag; + } + ''; + + # Clipboard Manager ".config/clipse/custom_theme.json".text = replaceStrings ["@base01" "@base05" "@base07" "@base08" "@base0B" "@base0D" "@base0E" "@base0F"] (with colors; [base01 base05 base07 base08 base0B base0D base0E base0F]) diff --git a/modules/gui/desktop/hyprland/settings/keybindings.nix b/modules/gui/desktop/hyprland/settings/keybindings.nix @@ -72,15 +72,14 @@ _: { # Workspaces (with builtins; concatLists (genList ( - num: let - key = toString (num + 1 - (((num + 1) / 10) * 10)); - workspace = toString (num + 1); + n: let + num = toString (n + 1); in [ - "$mod, ${key}, workspace, ${workspace}" - "$mod SHIFT, ${key}, movetoworkspace, ${workspace}" + "$mod, ${num}, workspace, ${num}" + "$mod SHIFT, ${num}, movetoworkspace, ${num}" ] ) - 10)); + 9)); # Mouse bindm = [ diff --git a/modules/gui/desktop/hyprland/settings/plugins.nix b/modules/gui/desktop/hyprland/settings/plugins.nix @@ -27,7 +27,7 @@ in { columns = 3 gap_size = ${gaps} bg_col = rgb(${base00}) - workspace_method = center current + workspace_method = first 1 enable_gesture = true gesture_positive = false } @@ -66,7 +66,7 @@ in { exec-once = ["pypr"]; bind = [ # Expose - "$MOD CTRL, TAB, hyprexpo:expo, toggle" + "$mod CTRL, TAB, hyprexpo:expo, toggle" # Application Overview "ALT, Tab, hycov:toggleoverview" diff --git a/scripts/install.nix b/scripts/install.nix @@ -15,6 +15,10 @@ with files.path; let then error "Path to Disk cannot be empty. If unsure, use the command 'fdisk -l'" fi + + echo "Deleting Partitions..." + dd if=/dev/zero of=/dev/"$DISK" bs=512 count=1 + echo "Creating Partitions..." parted /dev/"$DISK" -- mkpart ESP fat32 1MiB 1024MiB parted /dev/"$DISK" -- set 1 esp on @@ -115,9 +119,10 @@ in fi read -rp "Enter Name of Device to Install: " HOST + warn "Disk will be Completely Wiped for Automatic Partitioning" read -rp "Do you want to Automatically Create the Partitions? (Y/N): " choice case $choice in - [Yy]*) warn "Assuming Disk is Completely Empty"; partition_disk;; + [Yy]*) partition_disk;; *) warn "You must Create, Format and Label the Partitions on your own"; gparted &> /dev/null;; esac newline