From 1ffb33dae420c24d7f69592c2b8ed005deac378b Mon Sep 17 00:00:00 2001 From: xbazzi Date: Sat, 1 Feb 2025 01:07:11 -0700 Subject: [PATCH] add yazi, vscode, gnome-tweaks, and others --- .gitignore | 1 + flake.lock | 6 ++-- home/dconf.nix | 37 ++++++++++++++++++++++++ home/default.nix | 1 + home/kitty.nix | 48 +++++++++++++++---------------- system/configuration.nix | 6 ++-- system/default.nix | 4 +++ system/gnome.nix | 25 ++++++++++++++++ system/hardware-configuration.nix | 4 ++- system/packages.nix | 5 +++- system/vscode.nix | 45 +++++++++++++++++++++++++++++ system/yazi.nix | 46 +++++++++++++++++++++++++++++ 12 files changed, 197 insertions(+), 31 deletions(-) create mode 100644 home/dconf.nix create mode 100755 system/gnome.nix create mode 100755 system/vscode.nix create mode 100755 system/yazi.nix diff --git a/.gitignore b/.gitignore index 3cab5f0..36969a3 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ nvf-stuff config-nixvim result hardware-configuration.nix +*.swp diff --git a/flake.lock b/flake.lock index 8f4422f..401cc8b 100755 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ ] }, "locked": { - "lastModified": 1738275749, - "narHash": "sha256-PM+cGduJ05EZ+YXulqAwUFjvfKpPmW080mcuN6R1POw=", + "lastModified": 1738378034, + "narHash": "sha256-mldSa2NhDlnjqeSSFTNnkXIDrCLltpJfhrHUMBBKEiY=", "owner": "nix-community", "repo": "home-manager", - "rev": "a8159195bfaef3c64df75d3b1e6a68d49d392be9", + "rev": "801ddd8693481866c2cfb1efd44ddbae778ea572", "type": "github" }, "original": { diff --git a/home/dconf.nix b/home/dconf.nix new file mode 100644 index 0000000..d5551bc --- /dev/null +++ b/home/dconf.nix @@ -0,0 +1,37 @@ +{ inputs, pkgs, lib, config, ... }: + +{ + dconf = { + enable = true; + settings = { + "org/gnome/shell" = { + disable-user-extensions = false; # enables user extensions + enabled-extensions = [ + # Put UUIDs of extensions that you want to enable here. + # If the extension you want to enable is packaged in nixpkgs, + # you can easily get its UUID by accessing its extensionUuid + # field (look at the following example). + pkgs.gnomeExtensions.gsconnect.extensionUuid + pkgs.gnomeExtensions.blur-my-shell.extensionUuid + pkgs.gnomeExtensions.pop-shell.extensionUuid + pkgs.gnomeExtensions.tactile.extensionUuid + pkgs.gnomeExtensions.pop-shell.extensionUuid + pkgs.gnomeExtensions.space-bar.extensionUuid + pkgs.gnomeExtensions.undecorate.extensionUuid + pkgs.gnomeExtensions.pastafarian-holy-days.extensionUuid + pkgs.gnomeExtensions.just-perfection.extensionUuid + + ]; + }; + "org/gnome/desktop/interface" = { + color-scheme = "prefer-dark"; + }; + + # Configure individual extensions + "org/gnome/shell/extensions/blur-my-shell" = { + brightness = 0.75; + noise-amount = 0; + }; + }; + }; +} diff --git a/home/default.nix b/home/default.nix index 99581a1..aa94c71 100755 --- a/home/default.nix +++ b/home/default.nix @@ -8,6 +8,7 @@ ./starship.nix #./vscode.nix ./packages.nix + ./dconf.nix ./git.nix ./zsh.nix ./variables.nix diff --git a/home/kitty.nix b/home/kitty.nix index 5671ddf..b2d65fd 100755 --- a/home/kitty.nix +++ b/home/kitty.nix @@ -13,30 +13,30 @@ background_opacity = "0.8"; background_blur = 0; themeFile = "Alucard"; - symbol_map = - let - mappings = [ - "U+23FB-U+23FE" - "U+2B58" - "U+E200-U+E2A9" - "U+E0A0-U+E0A3" - "U+E0B0-U+E0BF" - "U+E0C0-U+E0C8" - "U+E0CC-U+E0CF" - "U+E0D0-U+E0D2" - "U+E0D4" - "U+E700-U+E7C5" - "U+F000-U+F2E0" - "U+2665" - "U+26A1" - "U+F400-U+F4A8" - "U+F67C" - "U+E000-U+E00A" - "U+F300-U+F313" - "U+E5FA-U+E62B" - ]; - in - (builtins.concatStringsSep "," mappings) + " Symbols Nerd Font"; + # symbol_map = + # let + # mappings = [ + # "U+23FB-U+23FE" + # "U+2B58" + # "U+E200-U+E2A9" + # "U+E0A0-U+E0A3" + # "U+E0B0-U+E0BF" + # "U+E0C0-U+E0C8" + # "U+E0CC-U+E0CF" + # "U+E0D0-U+E0D2" + # "U+E0D4" + # "U+E700-U+E7C5" + # "U+F000-U+F2E0" + # "U+2665" + # "U+26A1" + # "U+F400-U+F4A8" + # "U+F67C" + # "U+E000-U+E00A" + # "U+F300-U+F313" + # "U+E5FA-U+E62B" + # ]; + # in + # (builtins.concatStringsSep "," mappings) + " Symbols Nerd Font"; }; }; } diff --git a/system/configuration.nix b/system/configuration.nix index f5eaf20..9417055 100755 --- a/system/configuration.nix +++ b/system/configuration.nix @@ -52,11 +52,13 @@ services.printing.enable = true; fonts.packages = with pkgs; [ - noto-fonts + nerd-fonts.fira-code + nerd-fonts.space-mono + nerd-fonts.droid-sans-mono noto-fonts-cjk-sans noto-fonts-emoji liberation_ttf - fira-code + #fira-code fira-code-symbols mplus-outline-fonts.githubRelease dina-font diff --git a/system/default.nix b/system/default.nix index b6dd491..13e80dd 100755 --- a/system/default.nix +++ b/system/default.nix @@ -4,10 +4,14 @@ imports = [ ./configuration.nix + ./gnome.nix + ./yazi.nix ./nvidia.nix ./network.nix ./net-drives.nix ./packages.nix ./services.nix + ./vscode.nix + ./cachix.nix ]; } diff --git a/system/gnome.nix b/system/gnome.nix new file mode 100755 index 0000000..ce7429f --- /dev/null +++ b/system/gnome.nix @@ -0,0 +1,25 @@ +{ config, pkgs, ... }: + +{ + # Enable the X11 windowing system. + services.xserver.enable = true; + + # Enable the GNOME Desktop Environment. + services.xserver.displayManager.gdm.enable = true; + services.xserver.desktopManager.gnome.enable = true; + + environment.systemPackages = (with pkgs.gnomeExtensions; [ + blur-my-shell + pop-shell + tactile + pop-shell + space-bar + undecorate + pastafarian-holy-days + just-perfection + ]) ++ (with pkgs; [ + gnome-tweaks + adwaita-icon-theme + ]); +} + diff --git a/system/hardware-configuration.nix b/system/hardware-configuration.nix index b2fd4b4..c64512a 100755 --- a/system/hardware-configuration.nix +++ b/system/hardware-configuration.nix @@ -24,7 +24,9 @@ options = [ "fmask=0077" "dmask=0077" ]; }; - swapDevices = [ ]; + swapDevices = [{ + device = "/dev/nvme0n1p7"; + }]; # Enables DHCP on each ethernet and wireless interface. In case of scripted networking # (the default) this is the recommended approach. When using systemd-networkd it's diff --git a/system/packages.nix b/system/packages.nix index b94322a..4bdf342 100755 --- a/system/packages.nix +++ b/system/packages.nix @@ -12,7 +12,8 @@ git fastfetch wget - discord + #discord-canary + vesktop cudaPackages_12.cudatoolkit python3 gimp @@ -20,6 +21,8 @@ xclip gparted htop + btop + yazi ]; # Install firefox. diff --git a/system/vscode.nix b/system/vscode.nix new file mode 100755 index 0000000..f3f5f6a --- /dev/null +++ b/system/vscode.nix @@ -0,0 +1,45 @@ +{ inputs, pkgs, lib, config, ... }: + +{ + environment.systemPackages = with pkgs; [ + (vscode-with-extensions.override { + vscodeExtensions = with vscode-extensions; [ + bbenoist.nix + ms-python.python + ms-azuretools.vscode-docker + ms-vscode-remote.remote-ssh + golang.go + ms-vscode.cpptools + ms-vsliveshare.vsliveshare + bbenoist.nix + ms-python.python + #laravel.vscode-laravel + ms-azuretools.vscode-docker + ms-vscode-remote.remote-ssh + vscodevim.vim + enkia.tokyo-night + yzhang.markdown-all-in-one + #onecentlin.laravel-extension-pack + ] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ + { + name = "remote-ssh-edit"; + publisher = "ms-vscode-remote"; + version = "0.47.2"; + sha256 = "1hp6gjh4xp2m1xlm1jsdzxw9d8frkiidhph6nvl24d0h8z34w49g"; + } + { + name = "vsliveshare"; + publisher = "ms-vsliveshare"; + version = "1.0.5948"; # replace with the latest version + sha256 = "kou9zf5l6mtlu8z/l4xbwrl2x3uie15yghezjrkshgy="; # replace with the calculated hash + } + # { + # name = "glassit"; + # publisher = "s-nlf-fh"; + # version = "0.2.6"; + # sha256 = "lcaomgk91hnjwqaw4i0fagtowr8kwv7zhvgcgkokkuy="; + # } + ]; + }) + ]; +} diff --git a/system/yazi.nix b/system/yazi.nix new file mode 100755 index 0000000..49e5737 --- /dev/null +++ b/system/yazi.nix @@ -0,0 +1,46 @@ +{ config, pkgs, ... }: + +{ + + programs.yazi = { + enable = true; + settings = { + yazi = { + ratio = [ + 1 + 4 + 3 + ]; + sort_by = "natural"; + sort_sensitive = true; + sort_reverse = false; + sort_dir_first = true; + linemode = "none"; + show_hidden = true; + show_symlink = true; + }; + + # preview = { + # image_filter = "lanczos3"; + # image_quality = 90; + # tab_size = 1; + # max_width = 600; + # max_height = 900; + # cache_dir = ""; + # ueberzug_scale = 1; + # ueberzug_offset = [ + # 0 + # 0 + # 0 + # 0 + # ]; + # }; + + # tasks = { + # micro_workers = 5; + # macro_workers = 10; + # bizarre_retry = 5; + # }; + }; + }; +}