diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..8ce4779 --- /dev/null +++ b/flake.lock @@ -0,0 +1,64 @@ +{ + "nodes": { + "home-manager": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1738448366, + "narHash": "sha256-4ATtQqBlgsGqkHTemta0ydY6f7JBRXz4Hf574NHQpkg=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "18fa9f323d8adbb0b7b8b98a8488db308210ed93", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "type": "github" + } + }, + "nixos-hardware": { + "locked": { + "lastModified": 1738471961, + "narHash": "sha256-cgXDFrplNGs7bCVzXhRofjD8oJYqqXGcmUzXjHmip6Y=", + "owner": "NixOS", + "repo": "nixos-hardware", + "rev": "537286c3c59b40311e5418a180b38034661d2536", + "type": "github" + }, + "original": { + "owner": "NixOS", + "repo": "nixos-hardware", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1738410390, + "narHash": "sha256-xvTo0Aw0+veek7hvEVLzErmJyQkEcRk6PSR4zsRQFEc=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "3a228057f5b619feb3186e986dbe76278d707b6e", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "home-manager": "home-manager", + "nixos-hardware": "nixos-hardware", + "nixpkgs": "nixpkgs" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/home-manager/hyprland.nix b/home-manager/hyprland.nix index 30028f9..1afee27 100644 --- a/home-manager/hyprland.nix +++ b/home-manager/hyprland.nix @@ -181,7 +181,6 @@ ); }; plugins = [ - # pkgs.hyprlandPlugins. ]; }; home.sessionVariables = { diff --git a/hosts/arcadia/home-manager.nix b/hosts/arcadia/home-manager.nix index 0a0a650..2f414d2 100644 --- a/hosts/arcadia/home-manager.nix +++ b/hosts/arcadia/home-manager.nix @@ -9,13 +9,21 @@ vscode vivaldi discord - discord-canary helvum obs-studio superfile plemoljp plemoljp-nf prismlauncher + scrcpy + tetrio-desktop + kicad + blender-hip + gimp + inkscape + obsidian + zed-editor + easyeffects ]; programs.git = { enable = true; diff --git a/hosts/arcadia/nixos.nix b/hosts/arcadia/nixos.nix index 82f02b1..29d4280 100644 --- a/hosts/arcadia/nixos.nix +++ b/hosts/arcadia/nixos.nix @@ -24,12 +24,13 @@ deno nodejs pnpm - scrcpy - tetrio-desktop - # kicad - # blender-hip - gimp - inkscape + + qemu + (pkgs.writeShellScriptBin "qemu-system-x86_64-uefi" '' + qemu-system-x86_64 \ + -bios ${pkgs.OVMF.fd}/FV/OVMF.fd \ + "$@" + '') ]; boot.loader.systemd-boot.enable = true; diff --git a/hosts/default.nix b/hosts/default.nix index e22ab58..37586ae 100644 --- a/hosts/default.nix +++ b/hosts/default.nix @@ -38,7 +38,7 @@ let extraSpecialArgs = { inherit inputs hostname username; }; - modules = homeModule ++ [ + modules = [ { home = { inherit username; @@ -47,7 +47,8 @@ let }; programs.home-manager.enable = true; } - ]; + (import ../system/home-manager) + ] ++ homeModule; }; }; in diff --git a/programs/utility.nix b/programs/utility.nix index c8de501..3f2467e 100644 --- a/programs/utility.nix +++ b/programs/utility.nix @@ -4,7 +4,7 @@ zip unzip ripgrep - btop + btop-rocm bat wezterm diff --git a/system/home-manager/default.nix b/system/home-manager/default.nix new file mode 100644 index 0000000..24e8df8 --- /dev/null +++ b/system/home-manager/default.nix @@ -0,0 +1,11 @@ +{ + imports = [ + ./theme-switcher.nix + ]; + + home.activation = { + makedir = '' + mkdir -p ~/.config/cornflake + ''; + }; +} diff --git a/system/home-manager/theme-switcher.nix b/system/home-manager/theme-switcher.nix new file mode 100644 index 0000000..d6027bb --- /dev/null +++ b/system/home-manager/theme-switcher.nix @@ -0,0 +1,29 @@ +{ pkgs, ... }: +let + apply-theme-script = pkgs.writeScript "apply-theme" '' + curr=$(cat ~/.config/cornflake/current-theme) + if [ "$curr" = "prefer-light" ]; then + dconf write /org/gnome/desktop/interface/color-scheme "'prefer-light'" + else + dconf write /org/gnome/desktop/interface/color-scheme "'prefer-dark'" + fi + ''; + + desktopEntry = { + name = "Toggle theme"; + exec = ''${pkgs.writeScript "theme" '' + curr=$(cat ~/.config/cornflake/current-theme) + if [ "$curr" = "prefer-light" ]; then + echo 'prefer-dark' > ~/.config/cornflake/current-theme + else + echo 'prefer-light' > ~/.config/cornflake/current-theme + fi + ${apply-theme-script} + ''}''; + }; +in +{ + xdg.desktopEntries = { + theme-switcher = desktopEntry; + }; +}