Compare commits
	
		
			No commits in common. "8ea644f66524045f937b175ec6c40f32b2530195" and "7e368b4f40511df7cf7e4ca46e13bdd47d3872b4" have entirely different histories.
		
	
	
		
			8ea644f665
			...
			7e368b4f40
		
	
		
| @ -16,7 +16,6 @@ | |||||||
|     # Enabled modules |     # Enabled modules | ||||||
|     modules = { |     modules = { | ||||||
|       base.enable = true; |       base.enable = true; | ||||||
|       bluetooth.enable = true; |  | ||||||
|       power-saving.enable = false; |       power-saving.enable = false; | ||||||
|       pipewire.enable = true; |       pipewire.enable = true; | ||||||
|       wpa_supplicant.enable = true; |       wpa_supplicant.enable = true; | ||||||
|  | |||||||
| @ -1,23 +0,0 @@ | |||||||
| { |  | ||||||
|   lib, |  | ||||||
|   config, |  | ||||||
|   pkgs, |  | ||||||
|   ... |  | ||||||
| }: |  | ||||||
| 
 |  | ||||||
| with lib; |  | ||||||
| let |  | ||||||
|   cfg = config.modules.bluetooth; |  | ||||||
| in |  | ||||||
| { |  | ||||||
|   options.modules.bluetooth = { |  | ||||||
|     enable = mkEnableOption "bluetooth"; |  | ||||||
|   }; |  | ||||||
| 
 |  | ||||||
|   config = mkIf cfg.enable { |  | ||||||
|     environment.systemPackages = with pkgs; [ bluez ]; |  | ||||||
| 
 |  | ||||||
|     hardware.bluetooth.enable = true; |  | ||||||
|     hardware.bluetooth.powerOnBoot = true; |  | ||||||
|   }; |  | ||||||
| } |  | ||||||
| @ -10,7 +10,6 @@ with lib; | |||||||
|   imports = [ |   imports = [ | ||||||
|     # Import modules |     # Import modules | ||||||
|     ./base/default.nix |     ./base/default.nix | ||||||
|     ./bluetooth/default.nix |  | ||||||
|     ./boot/clean-tmp.nix |     ./boot/clean-tmp.nix | ||||||
|     ./boot/silent-boot.nix |     ./boot/silent-boot.nix | ||||||
|     ./boot/systemd-boot.nix |     ./boot/systemd-boot.nix | ||||||
|  | |||||||
| @ -8,12 +8,7 @@ | |||||||
| with lib; | with lib; | ||||||
| let | let | ||||||
|   # Nixvim |   # Nixvim | ||||||
|   nixvim = import ( |   nixvim = import (builtins.fetchGit { url = "https://github.com/nix-community/nixvim"; }); | ||||||
|     builtins.fetchGit { |  | ||||||
|       url = "https://github.com/nix-community/nixvim"; |  | ||||||
|       # ref = "nixos-24.05"; |  | ||||||
|     } |  | ||||||
|   ); |  | ||||||
| 
 | 
 | ||||||
|   # Stylix |   # Stylix | ||||||
|   stylix = import ( |   stylix = import ( | ||||||
|  | |||||||
| @ -1,28 +0,0 @@ | |||||||
| { |  | ||||||
|   lib, |  | ||||||
|   config, |  | ||||||
|   pkgs, |  | ||||||
|   ... |  | ||||||
| }: |  | ||||||
| 
 |  | ||||||
| with lib; |  | ||||||
| let |  | ||||||
|   cfg = config.modules.bluetuith; |  | ||||||
| in |  | ||||||
| { |  | ||||||
|   options.modules.bluetuith = { |  | ||||||
|     enable = mkEnableOption "bluetuith"; |  | ||||||
|   }; |  | ||||||
| 
 |  | ||||||
|   config = mkIf cfg.enable { |  | ||||||
|     home.packages = with pkgs; [ bluetuith ]; |  | ||||||
| 
 |  | ||||||
|     # Add nix tree |  | ||||||
|     xdg.desktopEntries.bluetuith = { |  | ||||||
|       exec = "${pkgs.bluetuith}/bin/bluetuith"; |  | ||||||
|       name = "Bluetuith"; |  | ||||||
|       terminal = true; |  | ||||||
|       type = "Application"; |  | ||||||
|     }; |  | ||||||
|   }; |  | ||||||
| } |  | ||||||
| @ -19,23 +19,6 @@ in | |||||||
|   config = mkIf cfg.enable { |   config = mkIf cfg.enable { | ||||||
|     default.browser = mkIf cfg.default "org.qutebrowser.qutebrowser.desktop"; |     default.browser = mkIf cfg.default "org.qutebrowser.qutebrowser.desktop"; | ||||||
| 
 | 
 | ||||||
|     # TODO: Remove once nixpkgs updates |  | ||||||
|     nixpkgs.config.packageOverrides = pkgs: { |  | ||||||
|       python3 = pkgs.python3.override { |  | ||||||
|         packageOverrides = self: super: { |  | ||||||
|           pykeepass = super.pykeepass.overrideAttrs (attrs: { |  | ||||||
|             version = "4.1.0.post1"; |  | ||||||
|             src = pkgs.fetchFromGitHub { |  | ||||||
|               owner = "libkeepass"; |  | ||||||
|               repo = "pykeepass"; |  | ||||||
|               rev = "refs/tags/v4.1.0.post1"; |  | ||||||
|               hash = "sha256-64is/XoRF/kojqd4jQIAQi1od8TRhiv9uR+WNIGvP2A="; |  | ||||||
|             }; |  | ||||||
|           }); |  | ||||||
|         }; |  | ||||||
|       }; |  | ||||||
|     }; |  | ||||||
| 
 |  | ||||||
|     programs.qutebrowser = { |     programs.qutebrowser = { | ||||||
|       enable = true; |       enable = true; | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -8,13 +8,11 @@ | |||||||
| { | { | ||||||
|   imports = [ |   imports = [ | ||||||
|     # Import all modules |     # Import all modules | ||||||
|     ./bluetuith/default.nix |  | ||||||
|     ./browser/default.nix |     ./browser/default.nix | ||||||
|     ./desktop/default.nix |     ./desktop/default.nix | ||||||
|     ./discord/default.nix |     ./discord/default.nix | ||||||
|     ./feishin/default.nix |     ./feishin/default.nix | ||||||
|     ./fontconfig/default.nix |     ./fontconfig/default.nix | ||||||
|     ./language/haskell.nix |  | ||||||
|     ./language/nix.nix |     ./language/nix.nix | ||||||
|     ./language/rust.nix |     ./language/rust.nix | ||||||
|     ./mako/default.nix |     ./mako/default.nix | ||||||
| @ -29,7 +27,6 @@ | |||||||
|     ./terminal/foot/default.nix |     ./terminal/foot/default.nix | ||||||
|     ./theming/default.nix |     ./theming/default.nix | ||||||
|     ./vscode/default.nix |     ./vscode/default.nix | ||||||
|     ./whatsapp/default.nix |  | ||||||
|     ./winbox/default.nix |     ./winbox/default.nix | ||||||
|     ./zathura/default.nix |     ./zathura/default.nix | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -5,7 +5,7 @@ precision mediump float; | |||||||
| uniform float time; | uniform float time; | ||||||
| uniform vec2 resolution; | uniform vec2 resolution; | ||||||
| 
 | 
 | ||||||
| #define iTime time * 0.05 + 50.0 | #define iTime time * 0.01 + 10.0 | ||||||
| #define iResolution resolution | #define iResolution resolution | ||||||
| #define fragCoord gl_FragCoord | #define fragCoord gl_FragCoord | ||||||
| #define fragColor gl_FragColor | #define fragColor gl_FragColor | ||||||
|  | |||||||
| @ -20,7 +20,6 @@ in | |||||||
|     home.packages = with pkgs; [ |     home.packages = with pkgs; [ | ||||||
|       pulsemixer |       pulsemixer | ||||||
|       playerctl |       playerctl | ||||||
|       wpa_supplicant_gui # TODO: Move |  | ||||||
|     ]; |     ]; | ||||||
| 
 | 
 | ||||||
|     programs.waybar = { |     programs.waybar = { | ||||||
| @ -35,8 +34,6 @@ in | |||||||
|             "mpris" |             "mpris" | ||||||
|           ]; |           ]; | ||||||
|           modules-right = [ |           modules-right = [ | ||||||
|             "bluetooth" |  | ||||||
|             "network" |  | ||||||
|             "pulseaudio" |             "pulseaudio" | ||||||
|             "battery" |             "battery" | ||||||
|             "clock" |             "clock" | ||||||
| @ -58,13 +55,6 @@ in | |||||||
|             ]; |             ]; | ||||||
|             disable-click = false; |             disable-click = false; | ||||||
|           }; |           }; | ||||||
|           network = { |  | ||||||
|             tooltip = false; |  | ||||||
|             on-click = "wpa_gui"; |  | ||||||
|             format-wifi = "直 {essid}"; # Spacing achieved using "Thin Space" |  | ||||||
|             format-ethernet = "TODO"; |  | ||||||
|             format-disconnected = "睊"; |  | ||||||
|           }; |  | ||||||
|           pulseaudio = { |           pulseaudio = { | ||||||
|             tooltip = false; |             tooltip = false; | ||||||
|             format = "{icon}   {volume}%"; # Spacing achieved using "Thin Space" |             format = "{icon}   {volume}%"; # Spacing achieved using "Thin Space" | ||||||
| @ -111,11 +101,6 @@ in | |||||||
|             tooltip-format = ""; |             tooltip-format = ""; | ||||||
|             interval = 1; |             interval = 1; | ||||||
|           }; |           }; | ||||||
|           bluetooth = { |  | ||||||
|             tooltip = false; |  | ||||||
|             format = "  {status}"; # Spacing achieved using "Thin Space" |  | ||||||
|             format-connected = "  {device_alias}"; # Spacing achieved using "Thin Space" |  | ||||||
|           }; |  | ||||||
|         }; |         }; | ||||||
|       }; |       }; | ||||||
|       # TODO: Replace base03 color with named color |       # TODO: Replace base03 color with named color | ||||||
| @ -139,7 +124,7 @@ in | |||||||
|           padding: 0 5px 1px 5px; |           padding: 0 5px 1px 5px; | ||||||
|           border-radius: 0; |           border-radius: 0; | ||||||
|           font-size: 16px; |           font-size: 16px; | ||||||
|           font-family: "wenquanyi bitmap song"; |           font-family: "Unifont"; | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         #tags button.occupied { |         #tags button.occupied { | ||||||
|  | |||||||
| @ -36,8 +36,6 @@ in | |||||||
|       [ |       [ | ||||||
|         pkgs.wl-clipboard |         pkgs.wl-clipboard | ||||||
|         pkgs.wtype |         pkgs.wtype | ||||||
|         pkgs.grim |  | ||||||
|         pkgs.slurp |  | ||||||
|       ] |       ] | ||||||
|     ); |     ); | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -22,34 +22,27 @@ in | |||||||
|     # TODO: Move elsewhere and make keybindings more configurable |     # TODO: Move elsewhere and make keybindings more configurable | ||||||
|     modules.rofi.enable = true; |     modules.rofi.enable = true; | ||||||
| 
 | 
 | ||||||
|     # TODO: Move elsewhere |  | ||||||
|     home.packages = with pkgs; [ |  | ||||||
|       brightnessctl |  | ||||||
|       river-filtile |  | ||||||
|       # owm |  | ||||||
|     ]; |  | ||||||
| 
 |  | ||||||
|     # Change desktop to execute river |     # Change desktop to execute river | ||||||
|     modules.desktop.initScript = '' |     modules.desktop.initScript = '' | ||||||
|       river |       river | ||||||
|     ''; |     ''; | ||||||
| 
 | 
 | ||||||
|     # Update background after rebuild |     # Update background after rebuild | ||||||
|     # home.activation = { |     home.activation = { | ||||||
|     #   river = lib.hm.dag.entryBetween [ "reloadSystemd" ] [ "installPackages" ] '' |       river = lib.hm.dag.entryBetween [ "reloadSystemd" ] [ "installPackages" ] '' | ||||||
|     #     # Close waybar |         # Close waybar | ||||||
|     #     PATH="${pkgs.procps}/bin:$PATH" $DRY_RUN_CMD pkill waybar |         PATH="${pkgs.procps}/bin:$PATH" $DRY_RUN_CMD pkill waybar | ||||||
| 
 | 
 | ||||||
|     #     # Kill rivertile |         # Kill rivertile | ||||||
|     #     PATH="${pkgs.procps}/bin:$PATH" $DRY_RUN_CMD pkill rivertile |         PATH="${pkgs.procps}/bin:$PATH" $DRY_RUN_CMD pkill rivertile | ||||||
| 
 | 
 | ||||||
|     #     # Kill glpaper |         # Kill glpaper | ||||||
|     #     PATH="${pkgs.procps}/bin:$PATH" $DRY_RUN_CMD pkill glpaper |         PATH="${pkgs.procps}/bin:$PATH" $DRY_RUN_CMD pkill glpaper | ||||||
| 
 | 
 | ||||||
|     #     # Restart river |         # Restart river | ||||||
|     #     PATH="${pkgs.river}/bin:${pkgs.systemd}/bin:${pkgs.waybar}/bin:$PATH" $DRY_RUN_CMD ~/.config/river/init |         PATH="${pkgs.river}/bin:${pkgs.systemd}/bin:$PATH" $DRY_RUN_CMD ~/.config/river/init | ||||||
|     #   ''; |       ''; | ||||||
|     # }; |     }; | ||||||
| 
 | 
 | ||||||
|     # River setup |     # River setup | ||||||
|     wayland.windowManager.river = { |     wayland.windowManager.river = { | ||||||
| @ -57,7 +50,7 @@ in | |||||||
|       xwayland.enable = true; |       xwayland.enable = true; | ||||||
|       settings = |       settings = | ||||||
|         let |         let | ||||||
|           layout = "filtile"; |           layout = "rivertile"; | ||||||
|           layoutOptions = "-outer-padding ${toString config.theming.layout.windowPadding} -view-padding ${toString config.theming.layout.windowPadding}"; |           layoutOptions = "-outer-padding ${toString config.theming.layout.windowPadding} -view-padding ${toString config.theming.layout.windowPadding}"; | ||||||
|           modes = [ |           modes = [ | ||||||
|             "normal" |             "normal" | ||||||
| @ -109,7 +102,7 @@ in | |||||||
|           ]; |           ]; | ||||||
|           map = ( |           map = ( | ||||||
|             lib.attrsets.recursiveUpdate |             lib.attrsets.recursiveUpdate | ||||||
|               { |               ({ | ||||||
|                 normal = |                 normal = | ||||||
|                   { |                   { | ||||||
|                     "${main} Q" = "close"; |                     "${main} Q" = "close"; | ||||||
| @ -120,7 +113,6 @@ in | |||||||
|                     "${ssm} Return" = "spawn foot"; |                     "${ssm} Return" = "spawn foot"; | ||||||
|                     "${main} P" = "spawn \"rofi -show drun\""; |                     "${main} P" = "spawn \"rofi -show drun\""; | ||||||
|                     "${ssm} P" = "spawn rofi-rbw"; |                     "${ssm} P" = "spawn rofi-rbw"; | ||||||
|                     "${main} S" = "spawn \"grim -g \\\"\\\$(slurp)\\\" ~/Images/Screenshots/\\\$(date +'%s_grim.png')\""; |  | ||||||
| 
 | 
 | ||||||
|                     # Window focus |                     # Window focus | ||||||
|                     "${main} J" = "focus-view next"; |                     "${main} J" = "focus-view next"; | ||||||
| @ -132,22 +124,22 @@ in | |||||||
|                     "${main} Return" = "zoom"; |                     "${main} Return" = "zoom"; | ||||||
| 
 | 
 | ||||||
|                     # Main ratio |                     # Main ratio | ||||||
|                     "${main} H" = "send-layout-cmd ${layout} 'main-ratio -0.05'"; |                     "${main} H" = "send-layout-cmd rivertile 'main-ratio -0.05'"; | ||||||
|                     "${main} L" = "send-layout-cmd ${layout} 'main-ratio +0.05'"; |                     "${main} L" = "send-layout-cmd rivertile 'main-ratio +0.05'"; | ||||||
| 
 | 
 | ||||||
|                     # Main count |                     # Main count | ||||||
|                     "${ssm} H" = "send-layout-cmd ${layout} 'main-count +1'"; |                     "${ssm} H" = "send-layout-cmd rivertile 'main-count +1'"; | ||||||
|                     "${ssm} L" = "send-layout-cmd ${layout} 'main-count -1'"; |                     "${ssm} L" = "send-layout-cmd rivertile 'main-count -1'"; | ||||||
| 
 | 
 | ||||||
|                     # Tags |                     # Tags | ||||||
|                     "${main} 0" = "set-focused-tags ${toString (pow2 32 - 1)}"; |                     "${main} 0" = "set-focused-tags ${toString (pow2 32 - 1)}"; | ||||||
|                     "${ssm} 0" = "set-view-tags ${toString (pow2 32 - 1)}"; |                     "${ssm} 0" = "set-view-tags ${toString (pow2 32 - 1)}"; | ||||||
| 
 | 
 | ||||||
|                     # Orientation |                     # Orientation | ||||||
|                     "${main} Up" = "send-layout-cmd ${layout} \"main-location top\""; |                     "${main} Up" = "send-layout-cmd rivertile \"main-location top\""; | ||||||
|                     "${main} Right" = "send-layout-cmd ${layout} \"main-location right\""; |                     "${main} Right" = "send-layout-cmd rivertile \"main-location right\""; | ||||||
|                     "${main} Down" = "send-layout-cmd ${layout} \"main-location bottom\""; |                     "${main} Down" = "send-layout-cmd rivertile \"main-location bottom\""; | ||||||
|                     "${main} Left" = "send-layout-cmd ${layout} \"main-location left\""; |                     "${main} Left" = "send-layout-cmd rivertile \"main-location left\""; | ||||||
| 
 | 
 | ||||||
|                     # Move floating windows |                     # Move floating windows | ||||||
|                     "${sam} H" = "move left 100"; |                     "${sam} H" = "move left 100"; | ||||||
| @ -193,7 +185,7 @@ in | |||||||
|                       ]) tags |                       ]) tags | ||||||
|                     ) |                     ) | ||||||
|                   ); |                   ); | ||||||
|               } |               }) | ||||||
|               ( |               ( | ||||||
|                 builtins.listToAttrs ( |                 builtins.listToAttrs ( | ||||||
|                   map (mode: { |                   map (mode: { | ||||||
| @ -238,7 +230,6 @@ in | |||||||
|             "-app-id" = { |             "-app-id" = { | ||||||
|               "'bar'" = "csd"; |               "'bar'" = "csd"; | ||||||
|               "'*'" = "ssd"; |               "'*'" = "ssd"; | ||||||
|               "'wpa_gui'" = "float"; |  | ||||||
|             }; |             }; | ||||||
|           }; |           }; | ||||||
|         }; |         }; | ||||||
|  | |||||||
| @ -1,40 +0,0 @@ | |||||||
| { |  | ||||||
|   lib, |  | ||||||
|   config, |  | ||||||
|   pkgs, |  | ||||||
|   ... |  | ||||||
| }: |  | ||||||
| 
 |  | ||||||
| with lib; |  | ||||||
| let |  | ||||||
|   cfg = config.modules.haskell; |  | ||||||
| in |  | ||||||
| { |  | ||||||
|   options.modules.haskell = { |  | ||||||
|     enable = mkEnableOption "haskell"; |  | ||||||
|   }; |  | ||||||
| 
 |  | ||||||
|   config = mkIf cfg.enable { |  | ||||||
|     # Development packages |  | ||||||
|     home.packages = with pkgs; [ |  | ||||||
|       haskell.compiler.ghc948 |  | ||||||
|       (haskell-language-server.override { supportedGhcVersions = [ "948" ]; }) |  | ||||||
|     ]; |  | ||||||
| 
 |  | ||||||
|     # VSCode configuration |  | ||||||
|     programs.vscode = { |  | ||||||
|       extensions = with pkgs.vscode-extensions; [ |  | ||||||
|         haskell.haskell |  | ||||||
|         justusadam.language-haskell |  | ||||||
|       ]; |  | ||||||
| 
 |  | ||||||
|       userSettings = { |  | ||||||
|         "[haskell]" = { }; |  | ||||||
|         # "haskell.formattingProvider" = "fourmolu"; |  | ||||||
|       }; |  | ||||||
|     }; |  | ||||||
| 
 |  | ||||||
|     # Neovim configuration |  | ||||||
|     programs.nixvim = { }; |  | ||||||
|   }; |  | ||||||
| } |  | ||||||
| @ -17,31 +17,18 @@ in | |||||||
|   config = mkIf cfg.enable { |   config = mkIf cfg.enable { | ||||||
|     # Development packages |     # Development packages | ||||||
|     home.packages = with pkgs; [ |     home.packages = with pkgs; [ | ||||||
|       rustup |       rustc | ||||||
|       # rustc |       cargo | ||||||
|       # cargo |       rust-analyzer | ||||||
|       gcc |       rustfmt | ||||||
|       lldb |  | ||||||
|       # rust-analyzer |  | ||||||
|       # rustfmt |  | ||||||
|       # clippy |  | ||||||
|     ]; |     ]; | ||||||
| 
 | 
 | ||||||
|     # VSCode configuration |     # VSCode configuration | ||||||
|     programs.vscode = { |     programs.vscode = { | ||||||
|       extensions = with pkgs.vscode-extensions; [ |       extensions = with pkgs.vscode-extensions; [ rust-lang.rust-analyzer ]; | ||||||
|         rust-lang.rust-analyzer |  | ||||||
|         vadimcn.vscode-lldb |  | ||||||
|         tamasfe.even-better-toml |  | ||||||
|         serayuzgur.crates |  | ||||||
|       ]; |  | ||||||
| 
 | 
 | ||||||
|       userSettings = { |       userSettings = { | ||||||
|         "[rust]" = { |         "[rust]" = { }; | ||||||
|           "editor.inlayHints.enabled" = "off"; |  | ||||||
|         }; |  | ||||||
|         "rust-analyzer.check.command" = "clippy"; |  | ||||||
|         "rust-analyzer.showUnlinkedFileNotification" = false; |  | ||||||
|       }; |       }; | ||||||
|     }; |     }; | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -14,9 +14,5 @@ in | |||||||
|     enable = mkEnableOption "obsidian"; |     enable = mkEnableOption "obsidian"; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   config = mkIf cfg.enable { |   config = mkIf cfg.enable { home.packages = with pkgs; [ obsidian ]; }; | ||||||
|     modules.unfree.allowedPackages = [ "obsidian" ]; |  | ||||||
| 
 |  | ||||||
|     home.packages = with pkgs; [ obsidian ]; |  | ||||||
|   }; |  | ||||||
| } | } | ||||||
|  | |||||||
| @ -22,6 +22,7 @@ in | |||||||
|       enable = true; |       enable = true; | ||||||
|       settings = { |       settings = { | ||||||
|         base_url = "https://keys.bulthuis.dev"; |         base_url = "https://keys.bulthuis.dev"; | ||||||
|  |         identity_url = "https://keys.bulthuis.dev"; | ||||||
|         email = "jan@bulthuis.dev"; |         email = "jan@bulthuis.dev"; | ||||||
|         pinentry = pkgs.pinentry; |         pinentry = pkgs.pinentry; | ||||||
|       }; |       }; | ||||||
|  | |||||||
| @ -101,8 +101,6 @@ in | |||||||
|     # Import all themes |     # Import all themes | ||||||
|     ./themes/catppuccin.nix |     ./themes/catppuccin.nix | ||||||
|     ./themes/gruvbox.nix |     ./themes/gruvbox.nix | ||||||
|     ./themes/oxocarbon.nix |  | ||||||
|     ./themes/papercolor.nix |  | ||||||
|     ./themes/sakura.nix |     ./themes/sakura.nix | ||||||
|   ]; |   ]; | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1,25 +0,0 @@ | |||||||
| { |  | ||||||
|   config, |  | ||||||
|   lib, |  | ||||||
|   pkgs, |  | ||||||
|   ... |  | ||||||
| }: |  | ||||||
| 
 |  | ||||||
| with lib; |  | ||||||
| let |  | ||||||
|   cfg = config.theming.themes.oxocarbon; |  | ||||||
|   mode = if cfg.darkMode then "dark" else "light"; |  | ||||||
| in |  | ||||||
| { |  | ||||||
|   options = { |  | ||||||
|     theming.themes.oxocarbon = { |  | ||||||
|       enable = mkEnableOption "oxocarbon"; |  | ||||||
|       darkMode = mkEnableOption "dark mode"; |  | ||||||
|     }; |  | ||||||
|   }; |  | ||||||
| 
 |  | ||||||
|   config.theming = mkIf cfg.enable { |  | ||||||
|     darkMode = cfg.darkMode; |  | ||||||
|     colorScheme = "${pkgs.base16-schemes}/share/themes/oxocarbon-${mode}.yaml"; |  | ||||||
|   }; |  | ||||||
| } |  | ||||||
| @ -1,25 +0,0 @@ | |||||||
| { |  | ||||||
|   config, |  | ||||||
|   lib, |  | ||||||
|   pkgs, |  | ||||||
|   ... |  | ||||||
| }: |  | ||||||
| 
 |  | ||||||
| with lib; |  | ||||||
| let |  | ||||||
|   cfg = config.theming.themes.papercolor; |  | ||||||
|   mode = if cfg.darkMode then "dark" else "light"; |  | ||||||
| in |  | ||||||
| { |  | ||||||
|   options = { |  | ||||||
|     theming.themes.papercolor = { |  | ||||||
|       enable = mkEnableOption "papercolor"; |  | ||||||
|       darkMode = mkEnableOption "dark mode"; |  | ||||||
|     }; |  | ||||||
|   }; |  | ||||||
| 
 |  | ||||||
|   config.theming = mkIf cfg.enable { |  | ||||||
|     darkMode = cfg.darkMode; |  | ||||||
|     colorScheme = "${pkgs.base16-schemes}/share/themes/papercolor-${mode}.yaml"; |  | ||||||
|   }; |  | ||||||
| } |  | ||||||
| @ -32,13 +32,7 @@ in | |||||||
|       enable = true; |       enable = true; | ||||||
| 
 | 
 | ||||||
|       mutableExtensionsDir = false; |       mutableExtensionsDir = false; | ||||||
|       extensions = with pkgs.vscode-extensions; [ |       extensions = with pkgs.vscode-extensions; [ eamodio.gitlens ]; | ||||||
|         eamodio.gitlens |  | ||||||
|         ms-vscode.hexeditor |  | ||||||
|         mkhl.direnv |  | ||||||
|         usernamehw.errorlens |  | ||||||
|         gruntfuggly.todo-tree |  | ||||||
|       ]; |  | ||||||
| 
 | 
 | ||||||
|       userSettings = { |       userSettings = { | ||||||
|         # Font setup |         # Font setup | ||||||
|  | |||||||
| @ -1,22 +0,0 @@ | |||||||
| { |  | ||||||
|   config, |  | ||||||
|   lib, |  | ||||||
|   pkgs, |  | ||||||
|   ... |  | ||||||
| }: |  | ||||||
| 
 |  | ||||||
| with lib; |  | ||||||
| let |  | ||||||
|   cfg = config.modules.whatsapp; |  | ||||||
| in |  | ||||||
| { |  | ||||||
|   options.modules.whatsapp = { |  | ||||||
|     enable = mkEnableOption "whatsapp"; |  | ||||||
|   }; |  | ||||||
| 
 |  | ||||||
|   config = mkIf cfg.enable { |  | ||||||
|     modules.unfree.allowedPackages = [ "whatsapp-for-linux" ]; |  | ||||||
| 
 |  | ||||||
|     home.packages = with pkgs; [ whatsapp-for-linux ]; |  | ||||||
|   }; |  | ||||||
| } |  | ||||||
| @ -6,6 +6,20 @@ | |||||||
| }: | }: | ||||||
| 
 | 
 | ||||||
| with lib; | with lib; | ||||||
|  | # let | ||||||
|  | #   mkPackage = path: (mkOption { | ||||||
|  | #     type = types.package; | ||||||
|  | #     default = (pkgs.callPackage path) {}; | ||||||
|  | #     description = (mkPackage path).default.name; | ||||||
|  | #   }); | ||||||
|  | # in { | ||||||
|  | #   options.pkgs = { | ||||||
|  | #     # Add all custom packages | ||||||
|  | #     wqy-zenhei = mkPackage ./fonts/wqy-zenhei.nix; | ||||||
|  | #     wqy-microhei = mkPackage ./fonts/wqy-microhei.nix; | ||||||
|  | #     wqy-bitmapsong = mkPackage ./fonts/wqy-bitmapsong.nix; | ||||||
|  | #   };  | ||||||
|  | # } | ||||||
| { | { | ||||||
|   nixpkgs.config.packageOverrides = pkgs: rec { |   nixpkgs.config.packageOverrides = pkgs: rec { | ||||||
|     wqy-zenhei = pkgs.callPackage ./fonts/wqy-zenhei.nix { }; |     wqy-zenhei = pkgs.callPackage ./fonts/wqy-zenhei.nix { }; | ||||||
|  | |||||||
| @ -1,20 +0,0 @@ | |||||||
| { |  | ||||||
|   lib, |  | ||||||
|   config, |  | ||||||
|   pkgs, |  | ||||||
|   ... |  | ||||||
| }: |  | ||||||
| 
 |  | ||||||
| pkgs.rustPlatform.buildRustPackage rec { |  | ||||||
|   pname = "owm"; |  | ||||||
|   version = "0.1.0"; |  | ||||||
| 
 |  | ||||||
|   src = pkgs.fetchFromGitHub { |  | ||||||
|     owner = "justinlovinger"; |  | ||||||
|     repo = pname; |  | ||||||
|     rev = "master"; |  | ||||||
|     sha256 = "sha256-l9usg0XGtghCX8elvjExYJgMuMGeujOoS2n1hCQkN78="; |  | ||||||
|   }; |  | ||||||
| 
 |  | ||||||
|   cargoSha256 = ""; |  | ||||||
| } |  | ||||||
| @ -7,9 +7,6 @@ | |||||||
|     # State version |     # State version | ||||||
|     home.stateVersion = "24.05"; |     home.stateVersion = "24.05"; | ||||||
| 
 | 
 | ||||||
|     # TODO: Move into modules |  | ||||||
|     home.packages = with pkgs; [ libreoffice-fresh ]; |  | ||||||
| 
 |  | ||||||
|     # Enabled modules |     # Enabled modules | ||||||
|     modules = { |     modules = { | ||||||
|       # Window manager |       # Window manager | ||||||
| @ -29,7 +26,6 @@ | |||||||
|       vscode.enable = true; |       vscode.enable = true; | ||||||
|       zathura.enable = true; |       zathura.enable = true; | ||||||
|       fish.enable = true; |       fish.enable = true; | ||||||
|       whatsapp.enable = true; |  | ||||||
|       winbox.enable = true; |       winbox.enable = true; | ||||||
|       discord.enable = true; |       discord.enable = true; | ||||||
|       qutebrowser = { |       qutebrowser = { | ||||||
| @ -38,11 +34,8 @@ | |||||||
|       }; |       }; | ||||||
|       neovim.enable = true; |       neovim.enable = true; | ||||||
|       rofi-rbw.enable = true; |       rofi-rbw.enable = true; | ||||||
|       obsidian.enable = true; |  | ||||||
|       bluetuith.enable = true; |  | ||||||
| 
 | 
 | ||||||
|       # Programming languages |       # Programming languages | ||||||
|       haskell.enable = true; |  | ||||||
|       nix.enable = true; |       nix.enable = true; | ||||||
|       rust.enable = true; |       rust.enable = true; | ||||||
| 
 | 
 | ||||||
| @ -64,25 +57,11 @@ | |||||||
|         fonts.extraFonts = [ ]; |         fonts.extraFonts = [ ]; | ||||||
| 
 | 
 | ||||||
|         # Color scheme |         # Color scheme | ||||||
|         themes.oxocarbon = { |  | ||||||
|           enable = false; |  | ||||||
|           darkMode = false; |  | ||||||
|         }; |  | ||||||
|         themes.catppuccin = { |         themes.catppuccin = { | ||||||
|           enable = true; |           enable = false; | ||||||
|           flavor = "mocha"; |           flavor = "latte"; | ||||||
|         }; |         }; | ||||||
|         themes.sakura.enable = false; |         themes.sakura.enable = true; | ||||||
| 
 |  | ||||||
|         # TODO: Remove |  | ||||||
|         # Nice themes: |  | ||||||
|         # - rose-pine-dawn: Decent, bit too yellow though. |  | ||||||
|         # - sagelight: Barely readable |  | ||||||
|         # - danqing-light: Too minty |  | ||||||
|         # - fruit-soda: Colors too bright, background too dark. |  | ||||||
|         # - solarflare-light: Nice |  | ||||||
|         # darkMode = false; |  | ||||||
|         # colorScheme = "${pkgs.base16-schemes}/share/themes/solarflare-light.yaml"; |  | ||||||
|       }; |       }; | ||||||
| 
 | 
 | ||||||
|     # TODO: Remove everything below, it is here out of convenience and should be elsewhere |     # TODO: Remove everything below, it is here out of convenience and should be elsewhere | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user