From 044e96eda4bb4f986ea8730ad205eb0b38399017 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thea=20Sch=C3=B6bl?= Date: Sat, 23 Dec 2023 00:34:40 +0100 Subject: [PATCH] feat: integrate system config --- flake.nix | 94 +++++--- home.nix | 36 --- home/default.nix | 2 + .../desktops}/hyprland/ags/.idea/.gitignore | 0 .../desktops}/hyprland/ags/.idea/ags.iml | 0 .../desktops}/hyprland/ags/.idea/misc.xml | 0 .../desktops}/hyprland/ags/.idea/modules.xml | 0 .../desktops}/hyprland/ags/config.js | 0 .../desktops}/hyprland/ags/data/keybinds.js | 0 .../hyprland/ags/data/keyboardlayouts.js | 0 .../desktops}/hyprland/ags/data/quotes.js | 0 .../desktops}/hyprland/ags/imports.js | 0 .../hyprland/ags/modules/calendar.js | 0 .../hyprland/ags/modules/keybinds.js | 0 .../hyprland/ags/modules/leftspace.js | 0 .../hyprland/ags/modules/lib/actioncenter.js | 0 .../modules/lib/animatedcircularprogress.js | 0 .../ags/modules/lib/contextmenuitem.js | 0 .../hyprland/ags/modules/lib/cursorhover.js | 0 .../hyprland/ags/modules/lib/materialicon.js | 0 .../ags/modules/lib/navigationindicator.js | 0 .../hyprland/ags/modules/lib/notification.js | 0 .../hyprland/ags/modules/lib/roundedcorner.js | 0 .../hyprland/ags/modules/lib/searchitem.js | 0 .../hyprland/ags/modules/lib/separator.js | 0 .../hyprland/ags/modules/misctoggles.js | 0 .../desktops}/hyprland/ags/modules/music.js | 0 .../hyprland/ags/modules/musiccontrols.js | 0 .../hyprland/ags/modules/notificationlist.js | 0 .../hyprland/ags/modules/onscreendisplay.js | 0 .../hyprland/ags/modules/onscreenkeyboard.js | 0 .../hyprland/ags/modules/overview.js | 0 .../hyprland/ags/modules/quicktoggles.js | 0 .../hyprland/ags/modules/rightspace.js | 0 .../hyprland/ags/modules/sessionscreen.js | 0 .../hyprland/ags/modules/sideleft.js | 0 .../hyprland/ags/modules/sideright.js | 0 .../hyprland/ags/modules/statusicons.js | 0 .../desktops}/hyprland/ags/modules/sysinfo.js | 0 .../desktops}/hyprland/ags/modules/system.js | 0 .../desktops}/hyprland/ags/modules/tray.js | 0 .../hyprland/ags/modules/workspaces.js | 0 .../desktops}/hyprland/ags/scripts/README.md | 0 .../hyprland/ags/scripts/brightness.js | 0 .../hyprland/ags/scripts/calendarlayout.js | 0 .../scripts/color_generation/applycolor.sh | 0 .../ags/scripts/color_generation/colorgen.sh | 0 .../generate_colors_material.py | 0 .../color_generation/pywal_to_material.scss | 0 .../scripts/color_generation/switchwall.sh | 0 .../desktops}/hyprland/ags/scripts/dumptows | Bin .../hyprland/ags/scripts/dumptows.cpp | 0 .../hyprland/ags/scripts/indicator.js | 0 .../hyprland/ags/scripts/record-script.sh | 0 .../desktops}/hyprland/ags/scripts/scripts.js | 0 .../desktops}/hyprland/ags/scripts/swapws | Bin .../desktops}/hyprland/ags/scripts/swapws.cpp | 0 .../ags/scripts/templates/foot/foot.ini | 0 .../ags/scripts/templates/fuzzel/fuzzel.ini | 0 .../scripts/templates/gradience/preset.json | 0 .../templates/gradience/preset_template.json | 0 .../ags/scripts/templates/gtklock/main.scss | 0 .../ags/scripts/templates/gtklock/style.css | 0 .../ags/scripts/templates/hypr/colors.conf | 0 .../desktops}/hyprland/ags/scripts/todo.js | 0 .../ags/scripts/utils/find_firefox_profile.sh | 0 .../desktops}/hyprland/ags/scss/_bar.scss | 0 .../hyprland/ags/scss/_cheatsheet.scss | 0 .../desktops}/hyprland/ags/scss/_colors.scss | 0 .../desktops}/hyprland/ags/scss/_common.scss | 0 .../desktops}/hyprland/ags/scss/_lib.scss | 0 .../hyprland/ags/scss/_material.scss | 0 .../hyprland/ags/scss/_notifications.scss | 0 .../desktops}/hyprland/ags/scss/_osd.scss | 0 .../desktops}/hyprland/ags/scss/_osk.scss | 0 .../hyprland/ags/scss/_overview.scss | 0 .../desktops}/hyprland/ags/scss/_session.scss | 0 .../hyprland/ags/scss/_sidebars.scss | 0 .../desktops}/hyprland/ags/scss/main.scss | 0 .../desktops}/hyprland/ags/scss/scss.js | 0 .../desktops}/hyprland/ags/style.css | 0 .../desktops}/hyprland/ags/windows/bar.js | 0 .../hyprland/ags/windows/cheatsheet.js | 0 .../desktops}/hyprland/ags/windows/corners.js | 0 .../hyprland/ags/windows/lib/popupwindow.js | 0 .../desktops}/hyprland/ags/windows/osd.js | 0 .../desktops}/hyprland/ags/windows/osk.js | 0 .../hyprland/ags/windows/overview.js | 0 .../desktops}/hyprland/ags/windows/session.js | 0 .../hyprland/ags/windows/sideleft.js | 0 .../hyprland/ags/windows/sideright.js | 0 .../desktops/hyprland/darkman.nix | 12 +- .../desktops/hyprland/default.nix | 5 + .../desktops}/hyprland/dunst.nix | 0 .../hyprland/fonts/Torus-Bold.c233ce17.otf | Bin .../hyprland/fonts/Torus-Regular.734ed3ae.otf | Bin .../fonts/Torus-SemiBold.d263d500.otf | Bin .../hyprland/hypr/shaders/bluefilter.frag | 0 .../desktops}/hyprland/hypr/shaders/blur.frag | 0 .../hypr/shaders/chromatic_abberation.frag | 0 .../desktops}/hyprland/hypr/shaders/crt.frag | 0 .../hyprland/hypr/shaders/drugs.frag | 0 .../hyprland/hypr/shaders/extradark.frag | 0 .../hyprland/hypr/shaders/gaussian.frag | 0 .../hyprland/hypr/shaders/motion-blur.frag | 0 .../hyprland/hypr/shaders/nothing.frag | 0 .../hyprland/hypr/shaders/solarized.frag | 0 .../hyprland/hypr/shaders/vibrance.frag | 0 .../desktops}/hyprland/keybinds.nix | 0 .../desktops}/hyprland/kitty.nix | 0 .../desktops}/hyprland/monitors.nix | 0 .../desktops}/hyprland/mousebinds.nix | 0 .../desktops}/hyprland/waybar.nix | 0 home/packages/default.nix | 82 +++++++ .../firefox-gnome-theme-installer.nix | 0 .../packages}/hid-fanatecff-tools.nix | 0 {packages => home/packages}/intellij.nix | 0 .../packages}/node-packages/default.nix | 0 .../packages}/node-packages/node-env.nix | 0 .../node-packages/node-packages.json | 0 .../packages}/node-packages/node-packages.nix | 0 .../packages}/threema-desktop.nix | 0 .../programs}/affinity-photo.nix | 0 {programs => home/programs}/bitwarden.nix | 0 home/programs/default.nix | 20 ++ {programs => home/programs}/git.nix | 0 {programs => home/programs}/nixvim.nix | 9 + home/services/default.nix | 16 ++ hosts/MONSTER/default.nix | 226 ++++++++++++++++++ hosts/MONSTER/hardware-configuration.nix | 43 ++++ hosts/MONSTER/nvidia.nix | 44 ++++ cc1-thea => modules/cc1-thea | 0 modules/nixos/hid-fanatecff/default.nix | 29 +++ .../nixos/hid-fanatecff/hid-fanatec-fix.patch | 26 ++ .../hid-fanatecff/hid-fanatec-makefile.patch | 38 +++ .../hid-fanatecff/hid-fanatecff-module.nix | 37 +++ nohup.out | 29 --- nushell/config.nu | 20 -- packages.nix | 81 ------- programs.nix | 18 -- 140 files changed, 638 insertions(+), 229 deletions(-) delete mode 100644 home.nix create mode 100644 home/default.nix rename {desktops => home/desktops}/hyprland/ags/.idea/.gitignore (100%) rename {desktops => home/desktops}/hyprland/ags/.idea/ags.iml (100%) rename {desktops => home/desktops}/hyprland/ags/.idea/misc.xml (100%) rename {desktops => home/desktops}/hyprland/ags/.idea/modules.xml (100%) rename {desktops => home/desktops}/hyprland/ags/config.js (100%) rename {desktops => home/desktops}/hyprland/ags/data/keybinds.js (100%) rename {desktops => home/desktops}/hyprland/ags/data/keyboardlayouts.js (100%) rename {desktops => home/desktops}/hyprland/ags/data/quotes.js (100%) rename {desktops => home/desktops}/hyprland/ags/imports.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/calendar.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/keybinds.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/leftspace.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/lib/actioncenter.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/lib/animatedcircularprogress.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/lib/contextmenuitem.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/lib/cursorhover.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/lib/materialicon.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/lib/navigationindicator.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/lib/notification.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/lib/roundedcorner.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/lib/searchitem.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/lib/separator.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/misctoggles.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/music.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/musiccontrols.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/notificationlist.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/onscreendisplay.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/onscreenkeyboard.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/overview.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/quicktoggles.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/rightspace.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/sessionscreen.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/sideleft.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/sideright.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/statusicons.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/sysinfo.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/system.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/tray.js (100%) rename {desktops => home/desktops}/hyprland/ags/modules/workspaces.js (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/README.md (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/brightness.js (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/calendarlayout.js (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/color_generation/applycolor.sh (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/color_generation/colorgen.sh (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/color_generation/generate_colors_material.py (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/color_generation/pywal_to_material.scss (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/color_generation/switchwall.sh (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/dumptows (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/dumptows.cpp (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/indicator.js (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/record-script.sh (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/scripts.js (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/swapws (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/swapws.cpp (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/templates/foot/foot.ini (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/templates/fuzzel/fuzzel.ini (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/templates/gradience/preset.json (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/templates/gradience/preset_template.json (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/templates/gtklock/main.scss (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/templates/gtklock/style.css (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/templates/hypr/colors.conf (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/todo.js (100%) rename {desktops => home/desktops}/hyprland/ags/scripts/utils/find_firefox_profile.sh (100%) rename {desktops => home/desktops}/hyprland/ags/scss/_bar.scss (100%) rename {desktops => home/desktops}/hyprland/ags/scss/_cheatsheet.scss (100%) rename {desktops => home/desktops}/hyprland/ags/scss/_colors.scss (100%) rename {desktops => home/desktops}/hyprland/ags/scss/_common.scss (100%) rename {desktops => home/desktops}/hyprland/ags/scss/_lib.scss (100%) rename {desktops => home/desktops}/hyprland/ags/scss/_material.scss (100%) rename {desktops => home/desktops}/hyprland/ags/scss/_notifications.scss (100%) rename {desktops => home/desktops}/hyprland/ags/scss/_osd.scss (100%) rename {desktops => home/desktops}/hyprland/ags/scss/_osk.scss (100%) rename {desktops => home/desktops}/hyprland/ags/scss/_overview.scss (100%) rename {desktops => home/desktops}/hyprland/ags/scss/_session.scss (100%) rename {desktops => home/desktops}/hyprland/ags/scss/_sidebars.scss (100%) rename {desktops => home/desktops}/hyprland/ags/scss/main.scss (100%) rename {desktops => home/desktops}/hyprland/ags/scss/scss.js (100%) rename {desktops => home/desktops}/hyprland/ags/style.css (100%) rename {desktops => home/desktops}/hyprland/ags/windows/bar.js (100%) rename {desktops => home/desktops}/hyprland/ags/windows/cheatsheet.js (100%) rename {desktops => home/desktops}/hyprland/ags/windows/corners.js (100%) rename {desktops => home/desktops}/hyprland/ags/windows/lib/popupwindow.js (100%) rename {desktops => home/desktops}/hyprland/ags/windows/osd.js (100%) rename {desktops => home/desktops}/hyprland/ags/windows/osk.js (100%) rename {desktops => home/desktops}/hyprland/ags/windows/overview.js (100%) rename {desktops => home/desktops}/hyprland/ags/windows/session.js (100%) rename {desktops => home/desktops}/hyprland/ags/windows/sideleft.js (100%) rename {desktops => home/desktops}/hyprland/ags/windows/sideright.js (100%) rename services.nix => home/desktops/hyprland/darkman.nix (91%) rename desktops/hyprland/hyprland.nix => home/desktops/hyprland/default.nix (98%) rename {desktops => home/desktops}/hyprland/dunst.nix (100%) rename {desktops => home/desktops}/hyprland/fonts/Torus-Bold.c233ce17.otf (100%) rename {desktops => home/desktops}/hyprland/fonts/Torus-Regular.734ed3ae.otf (100%) rename {desktops => home/desktops}/hyprland/fonts/Torus-SemiBold.d263d500.otf (100%) rename {desktops => home/desktops}/hyprland/hypr/shaders/bluefilter.frag (100%) rename {desktops => home/desktops}/hyprland/hypr/shaders/blur.frag (100%) rename {desktops => home/desktops}/hyprland/hypr/shaders/chromatic_abberation.frag (100%) rename {desktops => home/desktops}/hyprland/hypr/shaders/crt.frag (100%) rename {desktops => home/desktops}/hyprland/hypr/shaders/drugs.frag (100%) rename {desktops => home/desktops}/hyprland/hypr/shaders/extradark.frag (100%) rename {desktops => home/desktops}/hyprland/hypr/shaders/gaussian.frag (100%) rename {desktops => home/desktops}/hyprland/hypr/shaders/motion-blur.frag (100%) rename {desktops => home/desktops}/hyprland/hypr/shaders/nothing.frag (100%) rename {desktops => home/desktops}/hyprland/hypr/shaders/solarized.frag (100%) rename {desktops => home/desktops}/hyprland/hypr/shaders/vibrance.frag (100%) rename {desktops => home/desktops}/hyprland/keybinds.nix (100%) rename {desktops => home/desktops}/hyprland/kitty.nix (100%) rename {desktops => home/desktops}/hyprland/monitors.nix (100%) rename {desktops => home/desktops}/hyprland/mousebinds.nix (100%) rename {desktops => home/desktops}/hyprland/waybar.nix (100%) create mode 100644 home/packages/default.nix rename {packages => home/packages}/firefox-gnome-theme-installer.nix (100%) rename {packages => home/packages}/hid-fanatecff-tools.nix (100%) rename {packages => home/packages}/intellij.nix (100%) rename {packages => home/packages}/node-packages/default.nix (100%) rename {packages => home/packages}/node-packages/node-env.nix (100%) rename {packages => home/packages}/node-packages/node-packages.json (100%) rename {packages => home/packages}/node-packages/node-packages.nix (100%) rename {packages => home/packages}/threema-desktop.nix (100%) rename {programs => home/programs}/affinity-photo.nix (100%) rename {programs => home/programs}/bitwarden.nix (100%) create mode 100644 home/programs/default.nix rename {programs => home/programs}/git.nix (100%) rename {programs => home/programs}/nixvim.nix (98%) create mode 100644 home/services/default.nix create mode 100644 hosts/MONSTER/default.nix create mode 100644 hosts/MONSTER/hardware-configuration.nix create mode 100644 hosts/MONSTER/nvidia.nix rename cc1-thea => modules/cc1-thea (100%) create mode 100644 modules/nixos/hid-fanatecff/default.nix create mode 100644 modules/nixos/hid-fanatecff/hid-fanatec-fix.patch create mode 100644 modules/nixos/hid-fanatecff/hid-fanatec-makefile.patch create mode 100644 modules/nixos/hid-fanatecff/hid-fanatecff-module.nix delete mode 100644 nohup.out delete mode 100644 nushell/config.nu delete mode 100644 packages.nix delete mode 100644 programs.nix diff --git a/flake.nix b/flake.nix index eea03de..1a9b706 100644 --- a/flake.nix +++ b/flake.nix @@ -1,21 +1,15 @@ { inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; - home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; - - ags = { - url = "github:Aylur/ags"; - }; - + ags.url = "github:Aylur/ags"; nixvim = { url = "github:nix-community/nixvim"; inputs.nixpkgs.follows = "nixpkgs"; }; - anyrun = { url = "github:Kirottu/anyrun"; inputs.nixpkgs.follows = "nixpkgs"; @@ -29,38 +23,68 @@ nixvim, anyrun, ... - }: let - username = "theaninova"; - system = "x86_64-linux"; - stateVersion = "23.11"; + } @ inputs: let + inherit (nixpkgs.lib) genAttrs listToAttrs; + eachSystem = genAttrs ["x86_64-linux"]; + legacyPackages = eachSystem (system: + import nixpkgs { + inherit system; + config = { + allowUnfree = true; + allowUnsupportedSystem = true; + experimental-features = "nix-command flakes"; + }; + overlays = [ + (final: prev: {anyrunPlugins = anyrun.packages.${prev.system};}) + ]; + }); - pkgs = import nixpkgs { - inherit system; - config.allowUnfree = true; - overlays = [ - (final: prev: {anyrunPlugins = anyrun.packages.${prev.system};}) - ]; - }; + mkHome = { + username, + desktop, + system, + }: + home-manager.lib.homeManagerConfiguration rec { + homeDirectory = "/home/${username}"; + modules = [ + ags.homeManagerModules.default + nixvim.homeManagerModules.nixvim + anyrun.homeManagerModules.default + ./home/packages + ./home/programs + ./home/services + ./home/desktops/${desktop} + ]; + pkgs = legacyPackages.${system}; + }; - homeDirPrefix = - if pkgs.stdenv.hostPlatform.isDarwin - then "/Users" - else "/home"; - homeDirectory = "${homeDirPrefix}/${username}"; - - home = import ./home.nix { - inherit homeDirectory pkgs stateVersion system username; - }; + mkHost = { + hostname, + system, + stateVersion, + }: + nixpkgs.lib.nixosSystem { + pkgs = legacyPackages.${system}; + modules = [ + ./modules/nixos/hid-fanatecff + ./hosts/${hostname} + { + networking.hostName = hostname; + system.stateVersion = stateVersion; + } + ]; + specialArgs = inputs; + }; in { - homeConfigurations.theaninova = home-manager.lib.homeManagerConfiguration { - inherit pkgs; + homeConfigurations.theaninova = mkHome { + username = "theaninova"; + desktop = "hyprland"; + }; - modules = [ - ags.homeManagerModules.default - nixvim.homeManagerModules.nixvim - anyrun.homeManagerModules.default - home - ]; + nixosConfigurations.MONSTER = mkHost { + hostname = "MONSTER"; + system = "x86_64-linux"; + stateVersion = "23.05"; }; }; } diff --git a/home.nix b/home.nix deleted file mode 100644 index c8f702d..0000000 --- a/home.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ - homeDirectory, - pkgs, - stateVersion, - system, - username, -}: let - packages = import ./packages.nix {inherit pkgs;}; -in { - imports = [./desktops/hyprland/hyprland.nix]; - - home = { - inherit homeDirectory packages stateVersion username; - - shellAliases = { - reload-home-manager-config = "home-manager switch --flake ${homeDirectory}/.config/home-manager"; - }; - - keyboard = { - layout = "us"; - variant = "altgr-intl"; - }; - }; - - nixpkgs = { - config = { - inherit system; - allowUnfree = true; - allowUnsupportedSystem = true; - experimental-features = "nix-command flakes"; - }; - }; - - programs = import ./programs.nix {inherit pkgs;}; - services = import ./services.nix {inherit pkgs homeDirectory;}; -} diff --git a/home/default.nix b/home/default.nix new file mode 100644 index 0000000..ea8f50d --- /dev/null +++ b/home/default.nix @@ -0,0 +1,2 @@ +{...}: { +} diff --git a/desktops/hyprland/ags/.idea/.gitignore b/home/desktops/hyprland/ags/.idea/.gitignore similarity index 100% rename from desktops/hyprland/ags/.idea/.gitignore rename to home/desktops/hyprland/ags/.idea/.gitignore diff --git a/desktops/hyprland/ags/.idea/ags.iml b/home/desktops/hyprland/ags/.idea/ags.iml similarity index 100% rename from desktops/hyprland/ags/.idea/ags.iml rename to home/desktops/hyprland/ags/.idea/ags.iml diff --git a/desktops/hyprland/ags/.idea/misc.xml b/home/desktops/hyprland/ags/.idea/misc.xml similarity index 100% rename from desktops/hyprland/ags/.idea/misc.xml rename to home/desktops/hyprland/ags/.idea/misc.xml diff --git a/desktops/hyprland/ags/.idea/modules.xml b/home/desktops/hyprland/ags/.idea/modules.xml similarity index 100% rename from desktops/hyprland/ags/.idea/modules.xml rename to home/desktops/hyprland/ags/.idea/modules.xml diff --git a/desktops/hyprland/ags/config.js b/home/desktops/hyprland/ags/config.js similarity index 100% rename from desktops/hyprland/ags/config.js rename to home/desktops/hyprland/ags/config.js diff --git a/desktops/hyprland/ags/data/keybinds.js b/home/desktops/hyprland/ags/data/keybinds.js similarity index 100% rename from desktops/hyprland/ags/data/keybinds.js rename to home/desktops/hyprland/ags/data/keybinds.js diff --git a/desktops/hyprland/ags/data/keyboardlayouts.js b/home/desktops/hyprland/ags/data/keyboardlayouts.js similarity index 100% rename from desktops/hyprland/ags/data/keyboardlayouts.js rename to home/desktops/hyprland/ags/data/keyboardlayouts.js diff --git a/desktops/hyprland/ags/data/quotes.js b/home/desktops/hyprland/ags/data/quotes.js similarity index 100% rename from desktops/hyprland/ags/data/quotes.js rename to home/desktops/hyprland/ags/data/quotes.js diff --git a/desktops/hyprland/ags/imports.js b/home/desktops/hyprland/ags/imports.js similarity index 100% rename from desktops/hyprland/ags/imports.js rename to home/desktops/hyprland/ags/imports.js diff --git a/desktops/hyprland/ags/modules/calendar.js b/home/desktops/hyprland/ags/modules/calendar.js similarity index 100% rename from desktops/hyprland/ags/modules/calendar.js rename to home/desktops/hyprland/ags/modules/calendar.js diff --git a/desktops/hyprland/ags/modules/keybinds.js b/home/desktops/hyprland/ags/modules/keybinds.js similarity index 100% rename from desktops/hyprland/ags/modules/keybinds.js rename to home/desktops/hyprland/ags/modules/keybinds.js diff --git a/desktops/hyprland/ags/modules/leftspace.js b/home/desktops/hyprland/ags/modules/leftspace.js similarity index 100% rename from desktops/hyprland/ags/modules/leftspace.js rename to home/desktops/hyprland/ags/modules/leftspace.js diff --git a/desktops/hyprland/ags/modules/lib/actioncenter.js b/home/desktops/hyprland/ags/modules/lib/actioncenter.js similarity index 100% rename from desktops/hyprland/ags/modules/lib/actioncenter.js rename to home/desktops/hyprland/ags/modules/lib/actioncenter.js diff --git a/desktops/hyprland/ags/modules/lib/animatedcircularprogress.js b/home/desktops/hyprland/ags/modules/lib/animatedcircularprogress.js similarity index 100% rename from desktops/hyprland/ags/modules/lib/animatedcircularprogress.js rename to home/desktops/hyprland/ags/modules/lib/animatedcircularprogress.js diff --git a/desktops/hyprland/ags/modules/lib/contextmenuitem.js b/home/desktops/hyprland/ags/modules/lib/contextmenuitem.js similarity index 100% rename from desktops/hyprland/ags/modules/lib/contextmenuitem.js rename to home/desktops/hyprland/ags/modules/lib/contextmenuitem.js diff --git a/desktops/hyprland/ags/modules/lib/cursorhover.js b/home/desktops/hyprland/ags/modules/lib/cursorhover.js similarity index 100% rename from desktops/hyprland/ags/modules/lib/cursorhover.js rename to home/desktops/hyprland/ags/modules/lib/cursorhover.js diff --git a/desktops/hyprland/ags/modules/lib/materialicon.js b/home/desktops/hyprland/ags/modules/lib/materialicon.js similarity index 100% rename from desktops/hyprland/ags/modules/lib/materialicon.js rename to home/desktops/hyprland/ags/modules/lib/materialicon.js diff --git a/desktops/hyprland/ags/modules/lib/navigationindicator.js b/home/desktops/hyprland/ags/modules/lib/navigationindicator.js similarity index 100% rename from desktops/hyprland/ags/modules/lib/navigationindicator.js rename to home/desktops/hyprland/ags/modules/lib/navigationindicator.js diff --git a/desktops/hyprland/ags/modules/lib/notification.js b/home/desktops/hyprland/ags/modules/lib/notification.js similarity index 100% rename from desktops/hyprland/ags/modules/lib/notification.js rename to home/desktops/hyprland/ags/modules/lib/notification.js diff --git a/desktops/hyprland/ags/modules/lib/roundedcorner.js b/home/desktops/hyprland/ags/modules/lib/roundedcorner.js similarity index 100% rename from desktops/hyprland/ags/modules/lib/roundedcorner.js rename to home/desktops/hyprland/ags/modules/lib/roundedcorner.js diff --git a/desktops/hyprland/ags/modules/lib/searchitem.js b/home/desktops/hyprland/ags/modules/lib/searchitem.js similarity index 100% rename from desktops/hyprland/ags/modules/lib/searchitem.js rename to home/desktops/hyprland/ags/modules/lib/searchitem.js diff --git a/desktops/hyprland/ags/modules/lib/separator.js b/home/desktops/hyprland/ags/modules/lib/separator.js similarity index 100% rename from desktops/hyprland/ags/modules/lib/separator.js rename to home/desktops/hyprland/ags/modules/lib/separator.js diff --git a/desktops/hyprland/ags/modules/misctoggles.js b/home/desktops/hyprland/ags/modules/misctoggles.js similarity index 100% rename from desktops/hyprland/ags/modules/misctoggles.js rename to home/desktops/hyprland/ags/modules/misctoggles.js diff --git a/desktops/hyprland/ags/modules/music.js b/home/desktops/hyprland/ags/modules/music.js similarity index 100% rename from desktops/hyprland/ags/modules/music.js rename to home/desktops/hyprland/ags/modules/music.js diff --git a/desktops/hyprland/ags/modules/musiccontrols.js b/home/desktops/hyprland/ags/modules/musiccontrols.js similarity index 100% rename from desktops/hyprland/ags/modules/musiccontrols.js rename to home/desktops/hyprland/ags/modules/musiccontrols.js diff --git a/desktops/hyprland/ags/modules/notificationlist.js b/home/desktops/hyprland/ags/modules/notificationlist.js similarity index 100% rename from desktops/hyprland/ags/modules/notificationlist.js rename to home/desktops/hyprland/ags/modules/notificationlist.js diff --git a/desktops/hyprland/ags/modules/onscreendisplay.js b/home/desktops/hyprland/ags/modules/onscreendisplay.js similarity index 100% rename from desktops/hyprland/ags/modules/onscreendisplay.js rename to home/desktops/hyprland/ags/modules/onscreendisplay.js diff --git a/desktops/hyprland/ags/modules/onscreenkeyboard.js b/home/desktops/hyprland/ags/modules/onscreenkeyboard.js similarity index 100% rename from desktops/hyprland/ags/modules/onscreenkeyboard.js rename to home/desktops/hyprland/ags/modules/onscreenkeyboard.js diff --git a/desktops/hyprland/ags/modules/overview.js b/home/desktops/hyprland/ags/modules/overview.js similarity index 100% rename from desktops/hyprland/ags/modules/overview.js rename to home/desktops/hyprland/ags/modules/overview.js diff --git a/desktops/hyprland/ags/modules/quicktoggles.js b/home/desktops/hyprland/ags/modules/quicktoggles.js similarity index 100% rename from desktops/hyprland/ags/modules/quicktoggles.js rename to home/desktops/hyprland/ags/modules/quicktoggles.js diff --git a/desktops/hyprland/ags/modules/rightspace.js b/home/desktops/hyprland/ags/modules/rightspace.js similarity index 100% rename from desktops/hyprland/ags/modules/rightspace.js rename to home/desktops/hyprland/ags/modules/rightspace.js diff --git a/desktops/hyprland/ags/modules/sessionscreen.js b/home/desktops/hyprland/ags/modules/sessionscreen.js similarity index 100% rename from desktops/hyprland/ags/modules/sessionscreen.js rename to home/desktops/hyprland/ags/modules/sessionscreen.js diff --git a/desktops/hyprland/ags/modules/sideleft.js b/home/desktops/hyprland/ags/modules/sideleft.js similarity index 100% rename from desktops/hyprland/ags/modules/sideleft.js rename to home/desktops/hyprland/ags/modules/sideleft.js diff --git a/desktops/hyprland/ags/modules/sideright.js b/home/desktops/hyprland/ags/modules/sideright.js similarity index 100% rename from desktops/hyprland/ags/modules/sideright.js rename to home/desktops/hyprland/ags/modules/sideright.js diff --git a/desktops/hyprland/ags/modules/statusicons.js b/home/desktops/hyprland/ags/modules/statusicons.js similarity index 100% rename from desktops/hyprland/ags/modules/statusicons.js rename to home/desktops/hyprland/ags/modules/statusicons.js diff --git a/desktops/hyprland/ags/modules/sysinfo.js b/home/desktops/hyprland/ags/modules/sysinfo.js similarity index 100% rename from desktops/hyprland/ags/modules/sysinfo.js rename to home/desktops/hyprland/ags/modules/sysinfo.js diff --git a/desktops/hyprland/ags/modules/system.js b/home/desktops/hyprland/ags/modules/system.js similarity index 100% rename from desktops/hyprland/ags/modules/system.js rename to home/desktops/hyprland/ags/modules/system.js diff --git a/desktops/hyprland/ags/modules/tray.js b/home/desktops/hyprland/ags/modules/tray.js similarity index 100% rename from desktops/hyprland/ags/modules/tray.js rename to home/desktops/hyprland/ags/modules/tray.js diff --git a/desktops/hyprland/ags/modules/workspaces.js b/home/desktops/hyprland/ags/modules/workspaces.js similarity index 100% rename from desktops/hyprland/ags/modules/workspaces.js rename to home/desktops/hyprland/ags/modules/workspaces.js diff --git a/desktops/hyprland/ags/scripts/README.md b/home/desktops/hyprland/ags/scripts/README.md similarity index 100% rename from desktops/hyprland/ags/scripts/README.md rename to home/desktops/hyprland/ags/scripts/README.md diff --git a/desktops/hyprland/ags/scripts/brightness.js b/home/desktops/hyprland/ags/scripts/brightness.js similarity index 100% rename from desktops/hyprland/ags/scripts/brightness.js rename to home/desktops/hyprland/ags/scripts/brightness.js diff --git a/desktops/hyprland/ags/scripts/calendarlayout.js b/home/desktops/hyprland/ags/scripts/calendarlayout.js similarity index 100% rename from desktops/hyprland/ags/scripts/calendarlayout.js rename to home/desktops/hyprland/ags/scripts/calendarlayout.js diff --git a/desktops/hyprland/ags/scripts/color_generation/applycolor.sh b/home/desktops/hyprland/ags/scripts/color_generation/applycolor.sh similarity index 100% rename from desktops/hyprland/ags/scripts/color_generation/applycolor.sh rename to home/desktops/hyprland/ags/scripts/color_generation/applycolor.sh diff --git a/desktops/hyprland/ags/scripts/color_generation/colorgen.sh b/home/desktops/hyprland/ags/scripts/color_generation/colorgen.sh similarity index 100% rename from desktops/hyprland/ags/scripts/color_generation/colorgen.sh rename to home/desktops/hyprland/ags/scripts/color_generation/colorgen.sh diff --git a/desktops/hyprland/ags/scripts/color_generation/generate_colors_material.py b/home/desktops/hyprland/ags/scripts/color_generation/generate_colors_material.py similarity index 100% rename from desktops/hyprland/ags/scripts/color_generation/generate_colors_material.py rename to home/desktops/hyprland/ags/scripts/color_generation/generate_colors_material.py diff --git a/desktops/hyprland/ags/scripts/color_generation/pywal_to_material.scss b/home/desktops/hyprland/ags/scripts/color_generation/pywal_to_material.scss similarity index 100% rename from desktops/hyprland/ags/scripts/color_generation/pywal_to_material.scss rename to home/desktops/hyprland/ags/scripts/color_generation/pywal_to_material.scss diff --git a/desktops/hyprland/ags/scripts/color_generation/switchwall.sh b/home/desktops/hyprland/ags/scripts/color_generation/switchwall.sh similarity index 100% rename from desktops/hyprland/ags/scripts/color_generation/switchwall.sh rename to home/desktops/hyprland/ags/scripts/color_generation/switchwall.sh diff --git a/desktops/hyprland/ags/scripts/dumptows b/home/desktops/hyprland/ags/scripts/dumptows similarity index 100% rename from desktops/hyprland/ags/scripts/dumptows rename to home/desktops/hyprland/ags/scripts/dumptows diff --git a/desktops/hyprland/ags/scripts/dumptows.cpp b/home/desktops/hyprland/ags/scripts/dumptows.cpp similarity index 100% rename from desktops/hyprland/ags/scripts/dumptows.cpp rename to home/desktops/hyprland/ags/scripts/dumptows.cpp diff --git a/desktops/hyprland/ags/scripts/indicator.js b/home/desktops/hyprland/ags/scripts/indicator.js similarity index 100% rename from desktops/hyprland/ags/scripts/indicator.js rename to home/desktops/hyprland/ags/scripts/indicator.js diff --git a/desktops/hyprland/ags/scripts/record-script.sh b/home/desktops/hyprland/ags/scripts/record-script.sh similarity index 100% rename from desktops/hyprland/ags/scripts/record-script.sh rename to home/desktops/hyprland/ags/scripts/record-script.sh diff --git a/desktops/hyprland/ags/scripts/scripts.js b/home/desktops/hyprland/ags/scripts/scripts.js similarity index 100% rename from desktops/hyprland/ags/scripts/scripts.js rename to home/desktops/hyprland/ags/scripts/scripts.js diff --git a/desktops/hyprland/ags/scripts/swapws b/home/desktops/hyprland/ags/scripts/swapws similarity index 100% rename from desktops/hyprland/ags/scripts/swapws rename to home/desktops/hyprland/ags/scripts/swapws diff --git a/desktops/hyprland/ags/scripts/swapws.cpp b/home/desktops/hyprland/ags/scripts/swapws.cpp similarity index 100% rename from desktops/hyprland/ags/scripts/swapws.cpp rename to home/desktops/hyprland/ags/scripts/swapws.cpp diff --git a/desktops/hyprland/ags/scripts/templates/foot/foot.ini b/home/desktops/hyprland/ags/scripts/templates/foot/foot.ini similarity index 100% rename from desktops/hyprland/ags/scripts/templates/foot/foot.ini rename to home/desktops/hyprland/ags/scripts/templates/foot/foot.ini diff --git a/desktops/hyprland/ags/scripts/templates/fuzzel/fuzzel.ini b/home/desktops/hyprland/ags/scripts/templates/fuzzel/fuzzel.ini similarity index 100% rename from desktops/hyprland/ags/scripts/templates/fuzzel/fuzzel.ini rename to home/desktops/hyprland/ags/scripts/templates/fuzzel/fuzzel.ini diff --git a/desktops/hyprland/ags/scripts/templates/gradience/preset.json b/home/desktops/hyprland/ags/scripts/templates/gradience/preset.json similarity index 100% rename from desktops/hyprland/ags/scripts/templates/gradience/preset.json rename to home/desktops/hyprland/ags/scripts/templates/gradience/preset.json diff --git a/desktops/hyprland/ags/scripts/templates/gradience/preset_template.json b/home/desktops/hyprland/ags/scripts/templates/gradience/preset_template.json similarity index 100% rename from desktops/hyprland/ags/scripts/templates/gradience/preset_template.json rename to home/desktops/hyprland/ags/scripts/templates/gradience/preset_template.json diff --git a/desktops/hyprland/ags/scripts/templates/gtklock/main.scss b/home/desktops/hyprland/ags/scripts/templates/gtklock/main.scss similarity index 100% rename from desktops/hyprland/ags/scripts/templates/gtklock/main.scss rename to home/desktops/hyprland/ags/scripts/templates/gtklock/main.scss diff --git a/desktops/hyprland/ags/scripts/templates/gtklock/style.css b/home/desktops/hyprland/ags/scripts/templates/gtklock/style.css similarity index 100% rename from desktops/hyprland/ags/scripts/templates/gtklock/style.css rename to home/desktops/hyprland/ags/scripts/templates/gtklock/style.css diff --git a/desktops/hyprland/ags/scripts/templates/hypr/colors.conf b/home/desktops/hyprland/ags/scripts/templates/hypr/colors.conf similarity index 100% rename from desktops/hyprland/ags/scripts/templates/hypr/colors.conf rename to home/desktops/hyprland/ags/scripts/templates/hypr/colors.conf diff --git a/desktops/hyprland/ags/scripts/todo.js b/home/desktops/hyprland/ags/scripts/todo.js similarity index 100% rename from desktops/hyprland/ags/scripts/todo.js rename to home/desktops/hyprland/ags/scripts/todo.js diff --git a/desktops/hyprland/ags/scripts/utils/find_firefox_profile.sh b/home/desktops/hyprland/ags/scripts/utils/find_firefox_profile.sh similarity index 100% rename from desktops/hyprland/ags/scripts/utils/find_firefox_profile.sh rename to home/desktops/hyprland/ags/scripts/utils/find_firefox_profile.sh diff --git a/desktops/hyprland/ags/scss/_bar.scss b/home/desktops/hyprland/ags/scss/_bar.scss similarity index 100% rename from desktops/hyprland/ags/scss/_bar.scss rename to home/desktops/hyprland/ags/scss/_bar.scss diff --git a/desktops/hyprland/ags/scss/_cheatsheet.scss b/home/desktops/hyprland/ags/scss/_cheatsheet.scss similarity index 100% rename from desktops/hyprland/ags/scss/_cheatsheet.scss rename to home/desktops/hyprland/ags/scss/_cheatsheet.scss diff --git a/desktops/hyprland/ags/scss/_colors.scss b/home/desktops/hyprland/ags/scss/_colors.scss similarity index 100% rename from desktops/hyprland/ags/scss/_colors.scss rename to home/desktops/hyprland/ags/scss/_colors.scss diff --git a/desktops/hyprland/ags/scss/_common.scss b/home/desktops/hyprland/ags/scss/_common.scss similarity index 100% rename from desktops/hyprland/ags/scss/_common.scss rename to home/desktops/hyprland/ags/scss/_common.scss diff --git a/desktops/hyprland/ags/scss/_lib.scss b/home/desktops/hyprland/ags/scss/_lib.scss similarity index 100% rename from desktops/hyprland/ags/scss/_lib.scss rename to home/desktops/hyprland/ags/scss/_lib.scss diff --git a/desktops/hyprland/ags/scss/_material.scss b/home/desktops/hyprland/ags/scss/_material.scss similarity index 100% rename from desktops/hyprland/ags/scss/_material.scss rename to home/desktops/hyprland/ags/scss/_material.scss diff --git a/desktops/hyprland/ags/scss/_notifications.scss b/home/desktops/hyprland/ags/scss/_notifications.scss similarity index 100% rename from desktops/hyprland/ags/scss/_notifications.scss rename to home/desktops/hyprland/ags/scss/_notifications.scss diff --git a/desktops/hyprland/ags/scss/_osd.scss b/home/desktops/hyprland/ags/scss/_osd.scss similarity index 100% rename from desktops/hyprland/ags/scss/_osd.scss rename to home/desktops/hyprland/ags/scss/_osd.scss diff --git a/desktops/hyprland/ags/scss/_osk.scss b/home/desktops/hyprland/ags/scss/_osk.scss similarity index 100% rename from desktops/hyprland/ags/scss/_osk.scss rename to home/desktops/hyprland/ags/scss/_osk.scss diff --git a/desktops/hyprland/ags/scss/_overview.scss b/home/desktops/hyprland/ags/scss/_overview.scss similarity index 100% rename from desktops/hyprland/ags/scss/_overview.scss rename to home/desktops/hyprland/ags/scss/_overview.scss diff --git a/desktops/hyprland/ags/scss/_session.scss b/home/desktops/hyprland/ags/scss/_session.scss similarity index 100% rename from desktops/hyprland/ags/scss/_session.scss rename to home/desktops/hyprland/ags/scss/_session.scss diff --git a/desktops/hyprland/ags/scss/_sidebars.scss b/home/desktops/hyprland/ags/scss/_sidebars.scss similarity index 100% rename from desktops/hyprland/ags/scss/_sidebars.scss rename to home/desktops/hyprland/ags/scss/_sidebars.scss diff --git a/desktops/hyprland/ags/scss/main.scss b/home/desktops/hyprland/ags/scss/main.scss similarity index 100% rename from desktops/hyprland/ags/scss/main.scss rename to home/desktops/hyprland/ags/scss/main.scss diff --git a/desktops/hyprland/ags/scss/scss.js b/home/desktops/hyprland/ags/scss/scss.js similarity index 100% rename from desktops/hyprland/ags/scss/scss.js rename to home/desktops/hyprland/ags/scss/scss.js diff --git a/desktops/hyprland/ags/style.css b/home/desktops/hyprland/ags/style.css similarity index 100% rename from desktops/hyprland/ags/style.css rename to home/desktops/hyprland/ags/style.css diff --git a/desktops/hyprland/ags/windows/bar.js b/home/desktops/hyprland/ags/windows/bar.js similarity index 100% rename from desktops/hyprland/ags/windows/bar.js rename to home/desktops/hyprland/ags/windows/bar.js diff --git a/desktops/hyprland/ags/windows/cheatsheet.js b/home/desktops/hyprland/ags/windows/cheatsheet.js similarity index 100% rename from desktops/hyprland/ags/windows/cheatsheet.js rename to home/desktops/hyprland/ags/windows/cheatsheet.js diff --git a/desktops/hyprland/ags/windows/corners.js b/home/desktops/hyprland/ags/windows/corners.js similarity index 100% rename from desktops/hyprland/ags/windows/corners.js rename to home/desktops/hyprland/ags/windows/corners.js diff --git a/desktops/hyprland/ags/windows/lib/popupwindow.js b/home/desktops/hyprland/ags/windows/lib/popupwindow.js similarity index 100% rename from desktops/hyprland/ags/windows/lib/popupwindow.js rename to home/desktops/hyprland/ags/windows/lib/popupwindow.js diff --git a/desktops/hyprland/ags/windows/osd.js b/home/desktops/hyprland/ags/windows/osd.js similarity index 100% rename from desktops/hyprland/ags/windows/osd.js rename to home/desktops/hyprland/ags/windows/osd.js diff --git a/desktops/hyprland/ags/windows/osk.js b/home/desktops/hyprland/ags/windows/osk.js similarity index 100% rename from desktops/hyprland/ags/windows/osk.js rename to home/desktops/hyprland/ags/windows/osk.js diff --git a/desktops/hyprland/ags/windows/overview.js b/home/desktops/hyprland/ags/windows/overview.js similarity index 100% rename from desktops/hyprland/ags/windows/overview.js rename to home/desktops/hyprland/ags/windows/overview.js diff --git a/desktops/hyprland/ags/windows/session.js b/home/desktops/hyprland/ags/windows/session.js similarity index 100% rename from desktops/hyprland/ags/windows/session.js rename to home/desktops/hyprland/ags/windows/session.js diff --git a/desktops/hyprland/ags/windows/sideleft.js b/home/desktops/hyprland/ags/windows/sideleft.js similarity index 100% rename from desktops/hyprland/ags/windows/sideleft.js rename to home/desktops/hyprland/ags/windows/sideleft.js diff --git a/desktops/hyprland/ags/windows/sideright.js b/home/desktops/hyprland/ags/windows/sideright.js similarity index 100% rename from desktops/hyprland/ags/windows/sideright.js rename to home/desktops/hyprland/ags/windows/sideright.js diff --git a/services.nix b/home/desktops/hyprland/darkman.nix similarity index 91% rename from services.nix rename to home/desktops/hyprland/darkman.nix index 0ed16fb..37c5e01 100644 --- a/services.nix +++ b/home/desktops/hyprland/darkman.nix @@ -1,17 +1,9 @@ { pkgs, homeDirectory, + ... }: { - gpg-agent = { - enable = true; - enableSshSupport = true; - pinentryFlavor = "gnome3"; - }; - # fix pinentry on non-gnome with this in - # the system config: services.dbus.packages = with pkgs; [ gcr ]; - gnome-keyring.enable = true; - - darkman = { + services.darkman = { enable = true; package = pkgs.buildGoModule rec { pname = "darkman"; diff --git a/desktops/hyprland/hyprland.nix b/home/desktops/hyprland/default.nix similarity index 98% rename from desktops/hyprland/hyprland.nix rename to home/desktops/hyprland/default.nix index 13cddcd..1eb238f 100644 --- a/desktops/hyprland/hyprland.nix +++ b/home/desktops/hyprland/default.nix @@ -3,6 +3,10 @@ pkgs, ... }: { + imports = [ + ./darkman.nix + ]; + wayland.windowManager.hyprland = { enable = true; enableNvidiaPatches = true; @@ -46,6 +50,7 @@ input = { accel_profile = "flat"; kb_layout = "cc1-thea"; + # kb_options = "grp:alt_shift_toggle"; numlock_by_default = true; }; bind = import ./keybinds.nix; diff --git a/desktops/hyprland/dunst.nix b/home/desktops/hyprland/dunst.nix similarity index 100% rename from desktops/hyprland/dunst.nix rename to home/desktops/hyprland/dunst.nix diff --git a/desktops/hyprland/fonts/Torus-Bold.c233ce17.otf b/home/desktops/hyprland/fonts/Torus-Bold.c233ce17.otf similarity index 100% rename from desktops/hyprland/fonts/Torus-Bold.c233ce17.otf rename to home/desktops/hyprland/fonts/Torus-Bold.c233ce17.otf diff --git a/desktops/hyprland/fonts/Torus-Regular.734ed3ae.otf b/home/desktops/hyprland/fonts/Torus-Regular.734ed3ae.otf similarity index 100% rename from desktops/hyprland/fonts/Torus-Regular.734ed3ae.otf rename to home/desktops/hyprland/fonts/Torus-Regular.734ed3ae.otf diff --git a/desktops/hyprland/fonts/Torus-SemiBold.d263d500.otf b/home/desktops/hyprland/fonts/Torus-SemiBold.d263d500.otf similarity index 100% rename from desktops/hyprland/fonts/Torus-SemiBold.d263d500.otf rename to home/desktops/hyprland/fonts/Torus-SemiBold.d263d500.otf diff --git a/desktops/hyprland/hypr/shaders/bluefilter.frag b/home/desktops/hyprland/hypr/shaders/bluefilter.frag similarity index 100% rename from desktops/hyprland/hypr/shaders/bluefilter.frag rename to home/desktops/hyprland/hypr/shaders/bluefilter.frag diff --git a/desktops/hyprland/hypr/shaders/blur.frag b/home/desktops/hyprland/hypr/shaders/blur.frag similarity index 100% rename from desktops/hyprland/hypr/shaders/blur.frag rename to home/desktops/hyprland/hypr/shaders/blur.frag diff --git a/desktops/hyprland/hypr/shaders/chromatic_abberation.frag b/home/desktops/hyprland/hypr/shaders/chromatic_abberation.frag similarity index 100% rename from desktops/hyprland/hypr/shaders/chromatic_abberation.frag rename to home/desktops/hyprland/hypr/shaders/chromatic_abberation.frag diff --git a/desktops/hyprland/hypr/shaders/crt.frag b/home/desktops/hyprland/hypr/shaders/crt.frag similarity index 100% rename from desktops/hyprland/hypr/shaders/crt.frag rename to home/desktops/hyprland/hypr/shaders/crt.frag diff --git a/desktops/hyprland/hypr/shaders/drugs.frag b/home/desktops/hyprland/hypr/shaders/drugs.frag similarity index 100% rename from desktops/hyprland/hypr/shaders/drugs.frag rename to home/desktops/hyprland/hypr/shaders/drugs.frag diff --git a/desktops/hyprland/hypr/shaders/extradark.frag b/home/desktops/hyprland/hypr/shaders/extradark.frag similarity index 100% rename from desktops/hyprland/hypr/shaders/extradark.frag rename to home/desktops/hyprland/hypr/shaders/extradark.frag diff --git a/desktops/hyprland/hypr/shaders/gaussian.frag b/home/desktops/hyprland/hypr/shaders/gaussian.frag similarity index 100% rename from desktops/hyprland/hypr/shaders/gaussian.frag rename to home/desktops/hyprland/hypr/shaders/gaussian.frag diff --git a/desktops/hyprland/hypr/shaders/motion-blur.frag b/home/desktops/hyprland/hypr/shaders/motion-blur.frag similarity index 100% rename from desktops/hyprland/hypr/shaders/motion-blur.frag rename to home/desktops/hyprland/hypr/shaders/motion-blur.frag diff --git a/desktops/hyprland/hypr/shaders/nothing.frag b/home/desktops/hyprland/hypr/shaders/nothing.frag similarity index 100% rename from desktops/hyprland/hypr/shaders/nothing.frag rename to home/desktops/hyprland/hypr/shaders/nothing.frag diff --git a/desktops/hyprland/hypr/shaders/solarized.frag b/home/desktops/hyprland/hypr/shaders/solarized.frag similarity index 100% rename from desktops/hyprland/hypr/shaders/solarized.frag rename to home/desktops/hyprland/hypr/shaders/solarized.frag diff --git a/desktops/hyprland/hypr/shaders/vibrance.frag b/home/desktops/hyprland/hypr/shaders/vibrance.frag similarity index 100% rename from desktops/hyprland/hypr/shaders/vibrance.frag rename to home/desktops/hyprland/hypr/shaders/vibrance.frag diff --git a/desktops/hyprland/keybinds.nix b/home/desktops/hyprland/keybinds.nix similarity index 100% rename from desktops/hyprland/keybinds.nix rename to home/desktops/hyprland/keybinds.nix diff --git a/desktops/hyprland/kitty.nix b/home/desktops/hyprland/kitty.nix similarity index 100% rename from desktops/hyprland/kitty.nix rename to home/desktops/hyprland/kitty.nix diff --git a/desktops/hyprland/monitors.nix b/home/desktops/hyprland/monitors.nix similarity index 100% rename from desktops/hyprland/monitors.nix rename to home/desktops/hyprland/monitors.nix diff --git a/desktops/hyprland/mousebinds.nix b/home/desktops/hyprland/mousebinds.nix similarity index 100% rename from desktops/hyprland/mousebinds.nix rename to home/desktops/hyprland/mousebinds.nix diff --git a/desktops/hyprland/waybar.nix b/home/desktops/hyprland/waybar.nix similarity index 100% rename from desktops/hyprland/waybar.nix rename to home/desktops/hyprland/waybar.nix diff --git a/home/packages/default.nix b/home/packages/default.nix new file mode 100644 index 0000000..46c1096 --- /dev/null +++ b/home/packages/default.nix @@ -0,0 +1,82 @@ +{pkgs, ...}: { + home.packages = with pkgs; [ + # nix + cachix + lorri + + # fix for proton games not launching without any error message + libxcrypt + + # browsers + firefox-wayland + chromium + brave + + # media + jellyfin-media-player + # youtube-music.override {electron = pkgs.electron_28;}) + vlc + makemkv + handbrake + metadata-cleaner + bitwarden + # BluRay support + # Also downlaod the latest version of the decryption keys + # http://fvonline-db.bplaced.net/ + # and put them into ~/.config/aacs/KEYDB.cfg + (libbluray.override { + withAACS = true; + withJava = true; + withBDplus = true; + }) + + # chat apps + (import ./threema-desktop.nix {inherit pkgs;}) + (discord.override { + withOpenASAR = true; + withVencord = false; + }) + (vesktop.override {electron = pkgs.electron_28;}) + (element-desktop.override {electron = pkgs.electron_28;}) + slack + + # office + libreoffice + apostrophe # markdown editor + + # creative + gimp-with-plugins + inkscape-with-extensions + scribus + audacity + # friture TODO: broken + blender + + # development + (import ./intellij.nix {inherit pkgs;}) + jetbrains.rust-rover + insomnia + avalonia-ilspy + + # gaming + steam + oversteer + obs-studio + cartridges + bottles + protontricks + mangohud + + # utils + gh + git-filter-repo + neofetch + pinentry-gnome + ranger + lazydocker + libqalculate + ripgrep + jq + httpie + ]; +} diff --git a/packages/firefox-gnome-theme-installer.nix b/home/packages/firefox-gnome-theme-installer.nix similarity index 100% rename from packages/firefox-gnome-theme-installer.nix rename to home/packages/firefox-gnome-theme-installer.nix diff --git a/packages/hid-fanatecff-tools.nix b/home/packages/hid-fanatecff-tools.nix similarity index 100% rename from packages/hid-fanatecff-tools.nix rename to home/packages/hid-fanatecff-tools.nix diff --git a/packages/intellij.nix b/home/packages/intellij.nix similarity index 100% rename from packages/intellij.nix rename to home/packages/intellij.nix diff --git a/packages/node-packages/default.nix b/home/packages/node-packages/default.nix similarity index 100% rename from packages/node-packages/default.nix rename to home/packages/node-packages/default.nix diff --git a/packages/node-packages/node-env.nix b/home/packages/node-packages/node-env.nix similarity index 100% rename from packages/node-packages/node-env.nix rename to home/packages/node-packages/node-env.nix diff --git a/packages/node-packages/node-packages.json b/home/packages/node-packages/node-packages.json similarity index 100% rename from packages/node-packages/node-packages.json rename to home/packages/node-packages/node-packages.json diff --git a/packages/node-packages/node-packages.nix b/home/packages/node-packages/node-packages.nix similarity index 100% rename from packages/node-packages/node-packages.nix rename to home/packages/node-packages/node-packages.nix diff --git a/packages/threema-desktop.nix b/home/packages/threema-desktop.nix similarity index 100% rename from packages/threema-desktop.nix rename to home/packages/threema-desktop.nix diff --git a/programs/affinity-photo.nix b/home/programs/affinity-photo.nix similarity index 100% rename from programs/affinity-photo.nix rename to home/programs/affinity-photo.nix diff --git a/programs/bitwarden.nix b/home/programs/bitwarden.nix similarity index 100% rename from programs/bitwarden.nix rename to home/programs/bitwarden.nix diff --git a/home/programs/default.nix b/home/programs/default.nix new file mode 100644 index 0000000..b9af25c --- /dev/null +++ b/home/programs/default.nix @@ -0,0 +1,20 @@ +{pkgs, ...}: { + programs = { + home-manager.enable = true; + rbw = import ./bitwarden.nix; + git = import ./git.nix; + lazygit.enable = true; + nixvim = import ./nixvim.nix {inherit pkgs;}; + fish = { + enable = true; + interactiveShellInit = '' + set fish_greeting + ''; + }; + oh-my-posh = { + enable = true; + useTheme = "pararussel"; + enableFishIntegration = true; + }; + }; +} diff --git a/programs/git.nix b/home/programs/git.nix similarity index 100% rename from programs/git.nix rename to home/programs/git.nix diff --git a/programs/nixvim.nix b/home/programs/nixvim.nix similarity index 98% rename from programs/nixvim.nix rename to home/programs/nixvim.nix index c173d49..b18e2c3 100644 --- a/programs/nixvim.nix +++ b/home/programs/nixvim.nix @@ -136,6 +136,13 @@ in { mode = "n"; action = '':Telescope harpoon marks''; } + { + key = "sa"; + mode = "n"; + options.silent = true; + lua = true; + action = "require('actions-preview').code_actions"; + } ]; globals = { @@ -167,6 +174,7 @@ in { require("darkman").setup() require("cmp-npm").setup({}) require("rest-nvim").setup({}) + require("actions-preview").setup({}) local signs = { { name = "DiagnosticSignError", text = "" }, @@ -577,5 +585,6 @@ in { darkman rest-nvim plenary-nvim + actions-preview-nvim ]; } diff --git a/home/services/default.nix b/home/services/default.nix new file mode 100644 index 0000000..0875525 --- /dev/null +++ b/home/services/default.nix @@ -0,0 +1,16 @@ +{ + pkgs, + homeDirectory, + ... +}: { + services = { + gpg-agent = { + enable = true; + enableSshSupport = true; + pinentryFlavor = "gnome3"; + }; + # fix pinentry on non-gnome with this in + # the system config: services.dbus.packages = with pkgs; [ gcr ]; + gnome-keyring.enable = true; + }; +} diff --git a/hosts/MONSTER/default.nix b/hosts/MONSTER/default.nix new file mode 100644 index 0000000..6a1c0e5 --- /dev/null +++ b/hosts/MONSTER/default.nix @@ -0,0 +1,226 @@ +# Edit this configuration file to define what should be installed on +# your system. Help is available in the configuration.nix(5) man page +# and in the NixOS manual (accessible by running ‘nixos-help’). +{ + config, + pkgs, + ... +}: { + imports = [ + ./nvidia.nix + ./hardware-configuration.nix + ]; + + nix = { + settings.experimental-features = ["nix-command" "flakes"]; + gc = { + automatic = true; + randomizedDelaySec = "14m"; + options = "--deleteOlderThan 10d"; + }; + }; + + # Bootloader. + boot = { + kernelPackages = pkgs.linuxPackages_latest; + + loader = { + timeout = 0; + systemd-boot = { + enable = true; + editor = false; + configurationLimit = 10; + consoleMode = "auto"; + }; + efi.canTouchEfiVariables = true; + }; + supportedFilesystems = ["ntfs"]; + + # Silent Boot + kernelParams = [ + "splash" + "quiet" + "rd.udev.log_level=3" + "rd.systemd.show_status=false" + "udev.log_priority=3" + "boot.shell_on_fail" + "vt.global_cursor_default=0" # no cursor blinking + "fbdev=1" # NVIDIA + "video=DP-1:1920x1080@240" + "video=DP-3:2560x1440@75" + "video=HDMI-A-1:1920x1080@75" + ]; + consoleLogLevel = 0; + initrd.verbose = false; + + # Virtual Camera/Mic + kernelModules = ["v4l2loopback" "snd-aloop" "sg"]; + extraModulePackages = with config.boot.kernelPackages; [v4l2loopback.out]; + extraModprobeConfig = '' + options v4l2loopback exclusive_caps=1 card_label="Virtual Camera" + blacklist i2c_nvidia_gpu + blacklist hid-logitech + blacklist simpledrm + blacklist nouveau + ''; # NVIDIA + }; + + # Audio + hardware.pulseaudio.enable = false; + security.rtkit.enable = true; + services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + jack.enable = true; + }; + + hardware.hid-fanatecff.enable = true; + + hardware.sane = { + enable = true; + extraBackends = [pkgs.sane-airscan]; + }; + services.printing.enable = true; + services.avahi = { + enable = true; + nssmdns4 = true; + openFirewall = true; + }; + + services.dbus.enable = true; + xdg.portal = { + enable = true; + extraPortals = [pkgs.xdg-desktop-portal-gtk]; + }; + + time.timeZone = "Europe/Berlin"; + i18n = { + inputMethod = { + enabled = "ibus"; + ibus.engines = with pkgs.ibus-engines; [anthy]; + }; + defaultLocale = "en_GB.UTF-8"; + extraLocaleSettings = { + LC_ADDRESS = "de_DE.UTF-8"; + LC_IDENTIFICATION = "de_DE.UTF-8"; + LC_MEASUREMENT = "de_DE.UTF-8"; + LC_MONETARY = "de_DE.UTF-8"; + LC_NAME = "de_DE.UTF-8"; + LC_NUMERIC = "de_DE.UTF-8"; + LC_PAPER = "de_DE.UTF-8"; + LC_TELEPHONE = "de_DE.UTF-8"; + LC_TIME = "de_DE.UTF-8"; + }; + }; + + # Configure keymap in X11 + console.useXkbConfig = true; + services.xserver = { + layout = "us"; + xkbVariant = "altgr-intl"; + extraLayouts.cc1-thea = { + description = "A CC1 optimized layout"; + languages = ["eng" "ger"]; + symbolsFile = ../../modules/cc1-thea; + }; + }; + + services.pcscd.enable = true; + + # nautilus on non-gnome + services.gvfs.enable = true; + # fix pinentry on non-gnome + services.dbus.packages = with pkgs; [gcr]; + + services.udev.packages = with pkgs; [ + oversteer + android-udev-rules + ]; + + virtualisation.docker.rootless = { + enable = true; + setSocketVariable = true; + }; + + # Define a user account. Don't forget to set a password with ‘passwd’. + services.getty.autologinUser = "theaninova"; + services.getty.extraArgs = ["--noclear" "--noissue" "--nonewline"]; + services.getty.loginOptions = "-p -f -- \\u"; # preserve environment + programs.hyprland.enable = true; + programs.hyprland.enableNvidiaPatches = true; + users.users.theaninova = { + isNormalUser = true; + description = "Thea Schöbl"; + extraGroups = ["networkmanager" "wheel" "audio" "video" "dialout" "plugdev" "scanner" "lp" "input" "adbusers" "cdrom"]; + }; + + # List packages installed in system profile. To search, run: + environment.sessionVariables.NIXOS_OZONE_WL = "1"; + environment.systemPackages = with pkgs; [ + gamemode + # Essential utils + usbutils + uhubctl + pciutils + htop + unar + gnupg + libdrm + alsa-utils + graphicsmagick + ffmpeg + nfs-utils + # Essential command line apps + neovim + mc + git + p7zip + fzf + eza + # system-wide wine + lutris + wine-staging + # docker + docker-compose + ]; + + fonts.packages = with pkgs; [ + noto-fonts + noto-fonts-cjk + noto-fonts-emoji + (nerdfonts.override {fonts = ["JetBrainsMono" "Noto" "NerdFontsSymbolsOnly"];}) + ]; + + programs.fish.enable = true; + users.users.theaninova.shell = pkgs.fish; + + networking = { + firewall = { + allowedTCPPorts = [8100 5037]; + allowedUDPPorts = [50765]; + }; + + networkmanager.enable = true; + hosts = { + "192.168.0.184" = ["kookaborrow"]; + }; + }; + + fileSystems."/mnt/media" = { + device = "kookaborrow:/media"; + fsType = "nfs"; + options = ["x-systemd-automount" "noauto"]; + }; + + fileSystems."/run/media/theaninova/heart-drive" = { + device = "/dev/sdb2"; + fsType = "ntfs"; + }; + + fileSystems."/run/media/theaninova/windows" = { + device = "/dev/sda2"; + fsType = "ntfs"; + }; +} diff --git a/hosts/MONSTER/hardware-configuration.nix b/hosts/MONSTER/hardware-configuration.nix new file mode 100644 index 0000000..0447445 --- /dev/null +++ b/hosts/MONSTER/hardware-configuration.nix @@ -0,0 +1,43 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ + config, + lib, + pkgs, + modulesPath, + ... +}: { + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod"]; + boot.initrd.kernelModules = []; + boot.kernelModules = ["kvm-amd"]; + boot.extraModulePackages = []; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/637f852b-e5bc-4bdb-a75e-886680bd52d2"; + fsType = "ext4"; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/6EC6-F0EF"; + fsType = "vfat"; + }; + + swapDevices = [ + {device = "/dev/disk/by-uuid/b09fbba2-c97a-41bc-a3cd-8204e30204f8";} + ]; + + # 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 + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.eno1.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +} diff --git a/hosts/MONSTER/nvidia.nix b/hosts/MONSTER/nvidia.nix new file mode 100644 index 0000000..b62fcd5 --- /dev/null +++ b/hosts/MONSTER/nvidia.nix @@ -0,0 +1,44 @@ +{ + config, + lib, + pkgs, + ... +}: { + hardware.opengl = { + enable = true; + driSupport = true; + driSupport32Bit = true; + extraPackages = with pkgs; [ + libvdpau-va-gl + nvidia-vaapi-driver + ]; + }; + + services.xserver.videoDrivers = ["nvidia"]; + + boot.kernelModules = ["nvidia" "nvidia_modeset" "nvidia_uvm" "nvidia_drm"]; + boot.initrd.kernelModules = ["nvidia" "nvidia_modeset" "nvidia_uvm" "nvidia_drm"]; + boot.extraModulePackages = [config.boot.kernelPackages.nvidia_x11]; + + hardware.nvidia = { + modesetting.enable = true; + # seems to cause crashes on sleep + powerManagement.enable = false; + open = false; + nvidiaSettings = false; + # no idea if this actually does anything... + nvidiaPersistenced = false; + package = config.boot.kernelPackages.nvidiaPackages.stable; + }; + + environment = { + variables = { + VDPAU_DRIVER = "va_gl"; + LIBVA_DRIVER_NAME = "nvidia"; + }; + systemPackages = with pkgs; [ + nvtop-nvidia + libva-utils + ]; + }; +} diff --git a/cc1-thea b/modules/cc1-thea similarity index 100% rename from cc1-thea rename to modules/cc1-thea diff --git a/modules/nixos/hid-fanatecff/default.nix b/modules/nixos/hid-fanatecff/default.nix new file mode 100644 index 0000000..be01912 --- /dev/null +++ b/modules/nixos/hid-fanatecff/default.nix @@ -0,0 +1,29 @@ +{ + pkgs, + lib, + config, + ... +}: +with lib; let + cfg = config.hardware.hid-fanatecff; + kernel = config.boot.kernelPackages.kernel; + fanatecKernelModule = pkgs.callPackage (import ./hid-fanatecff-module.nix) {kernel = kernel;}; +in { + options.hardware.hid-fanatecff = { + enable = mkOption { + type = types.bool; + default = false; + description = lib.mkDoc '' + Enables the Linux module drivers for Fanatec wheel bases. + Works with the CSL Elite, and has experimental support + for the ClubSport V2/V2.5, Podium DD1/DD2, CSR Elite and the CSL DD. + ''; + }; + }; + config = lib.mkIf cfg.enable { + boot = { + extraModulePackages = [fanatecKernelModule]; + kernelModules = ["hid-fanatecff"]; + }; + }; +} diff --git a/modules/nixos/hid-fanatecff/hid-fanatec-fix.patch b/modules/nixos/hid-fanatecff/hid-fanatec-fix.patch new file mode 100644 index 0000000..e4368cd --- /dev/null +++ b/modules/nixos/hid-fanatecff/hid-fanatec-fix.patch @@ -0,0 +1,26 @@ +From 83e8196515ed420bbbb619e015a49a504c56d6bf Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Thea=20Sch=C3=B6bl?= +Date: Mon, 18 Sep 2023 17:18:35 +0200 +Subject: [PATCH 1/1] workaround: led compile error + +--- + hid-ftec.h | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/hid-ftec.h b/hid-ftec.h +index afce2c3..3ddd514 100644 +--- a/hid-ftec.h ++++ b/hid-ftec.h +@@ -1,6 +1,9 @@ + #ifndef __HID_FTEC_H + #define __HID_FTEC_H + ++// TODO: remove ++#define CONFIG_LEDS_CLASS ++ + #define FANATEC_VENDOR_ID 0x0eb7 + + #define CLUBSPORT_V2_WHEELBASE_DEVICE_ID 0x0001 +-- +2.41.0 + diff --git a/modules/nixos/hid-fanatecff/hid-fanatec-makefile.patch b/modules/nixos/hid-fanatecff/hid-fanatec-makefile.patch new file mode 100644 index 0000000..32a0f39 --- /dev/null +++ b/modules/nixos/hid-fanatecff/hid-fanatec-makefile.patch @@ -0,0 +1,38 @@ +From 4a1395857cc00fd287926bc281ecd36fde9f45fc Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Thea=20Sch=C3=B6bl?= +Date: Mon, 18 Sep 2023 17:30:11 +0200 +Subject: [PATCH 1/1] fix: nix makefile adjustments + +--- + Makefile | 7 ++----- + 1 file changed, 2 insertions(+), 5 deletions(-) + +diff --git a/Makefile b/Makefile +index 0165e72..74b113c 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,6 +1,5 @@ + KVERSION ?= `uname -r` + KDIR ?= /lib/modules/${KVERSION}/build +-MODULEDIR ?= /lib/modules/${KVERSION}/kernel/drivers/hid + + default: + @echo -e "\n::\033[32m Compiling Fanatec kernel module\033[0m" +@@ -12,12 +11,10 @@ clean: + @echo "========================================" + $(MAKE) -C $(KDIR) M=$$PWD clean + +-install: ++install: default + @echo -e "\n::\033[34m Installing Fanatec kernel module/udev rule\033[0m" + @echo "=====================================================" +- @cp -v hid-fanatec.ko ${MODULEDIR} +- @cp -v fanatec.rules /etc/udev/rules.d/99-fanatec.rules +- depmod ++ $(MAKE) -C $(KDIR) M=$$PWD INSTALL_MOD_PATH=$$out modules_install + + uninstall: + @echo -e "\n::\033[34m Uninstalling Fanatec kernel module/udev rule\033[0m" +-- +2.41.0 + diff --git a/modules/nixos/hid-fanatecff/hid-fanatecff-module.nix b/modules/nixos/hid-fanatecff/hid-fanatecff-module.nix new file mode 100644 index 0000000..0a5bd2b --- /dev/null +++ b/modules/nixos/hid-fanatecff/hid-fanatecff-module.nix @@ -0,0 +1,37 @@ +{ + lib, + stdenv, + kernel, + fetchFromGitHub, +}: +stdenv.mkDerivation rec { + pname = "hid-fanatecff"; + version = "0.1.0"; + + src = fetchFromGitHub { + owner = "gotzl"; + repo = "hid-fanatecff"; + rev = "9c186b51ab7c6da9abef15c73b1d9eababc302a5"; + sha256 = "14rsj4qx8vim0hx8b7a823gqbmzfginq6kpkxjfay0n1693p2895"; + }; + + nativeBuildInputs = kernel.moduleBuildDependencies; + + makeFlags = [ + "KVERSION=${kernel.modDirVersion}" + "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" + ]; + + patches = [ + ./hid-fanatec-fix.patch + ./hid-fanatec-makefile.patch + ]; + + meta = with lib; { + description = "Linux kernel driver that aims to add support for FANATEC devices"; + homepage = "https://github.com/gotzl/hid-fanatecff"; + license = licenses.gpl2Only; + platforms = platforms.linux; + broken = stdenv.isAarch64; + }; +} diff --git a/nohup.out b/nohup.out deleted file mode 100644 index 5481f07..0000000 --- a/nohup.out +++ /dev/null @@ -1,29 +0,0 @@ -cancelled -Exception ignored in: -Traceback (most recent call last): - File "/nix/store/qp5zys77biz7imbk6yy85q5pdv7qk84j-python3-3.11.6/lib/python3.11/asyncio/streams.py", line 395, in __del__ - self.close() - File "/nix/store/qp5zys77biz7imbk6yy85q5pdv7qk84j-python3-3.11.6/lib/python3.11/asyncio/streams.py", line 343, in close - return self._transport.close() - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/nix/store/qp5zys77biz7imbk6yy85q5pdv7qk84j-python3-3.11.6/lib/python3.11/asyncio/selector_events.py", line 860, in close - self._loop.call_soon(self._call_connection_lost, None) - File "/nix/store/qp5zys77biz7imbk6yy85q5pdv7qk84j-python3-3.11.6/lib/python3.11/asyncio/base_events.py", line 761, in call_soon - self._check_closed() - File "/nix/store/qp5zys77biz7imbk6yy85q5pdv7qk84j-python3-3.11.6/lib/python3.11/asyncio/base_events.py", line 519, in _check_closed - raise RuntimeError('Event loop is closed') -RuntimeError: Event loop is closed -Exception ignored in: -Traceback (most recent call last): - File "/nix/store/qp5zys77biz7imbk6yy85q5pdv7qk84j-python3-3.11.6/lib/python3.11/asyncio/streams.py", line 395, in __del__ - self.close() - File "/nix/store/qp5zys77biz7imbk6yy85q5pdv7qk84j-python3-3.11.6/lib/python3.11/asyncio/streams.py", line 343, in close - return self._transport.close() - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/nix/store/qp5zys77biz7imbk6yy85q5pdv7qk84j-python3-3.11.6/lib/python3.11/asyncio/selector_events.py", line 860, in close - self._loop.call_soon(self._call_connection_lost, None) - File "/nix/store/qp5zys77biz7imbk6yy85q5pdv7qk84j-python3-3.11.6/lib/python3.11/asyncio/base_events.py", line 761, in call_soon - self._check_closed() - File "/nix/store/qp5zys77biz7imbk6yy85q5pdv7qk84j-python3-3.11.6/lib/python3.11/asyncio/base_events.py", line 519, in _check_closed - raise RuntimeError('Event loop is closed') -RuntimeError: Event loop is closed diff --git a/nushell/config.nu b/nushell/config.nu deleted file mode 100644 index 27e56e8..0000000 --- a/nushell/config.nu +++ /dev/null @@ -1,20 +0,0 @@ -let carapace_completer = { |spans| - carapace $spans.0 nushell $spans | from json -} - -$env.config = { - show_banner: false, - completions: { - case_sensitive: false - quick: true - partial: true - algorithm: "fuzzy" - external: { - enable: true - max_results: 100 - completer: $carapace_completer - } - } -} - -$env.PATH = ($env.PATH | split row (char esep) | append /usr/bin/env) diff --git a/packages.nix b/packages.nix deleted file mode 100644 index e022caf..0000000 --- a/packages.nix +++ /dev/null @@ -1,81 +0,0 @@ -{pkgs}: -with pkgs; [ - # nix - cachix - lorri - - # fix for proton games not launching without any error message - libxcrypt - - # browsers - firefox-wayland - chromium - brave - - # media - jellyfin-media-player - # youtube-music.override {electron = pkgs.electron_28;}) - vlc - makemkv - handbrake - metadata-cleaner - bitwarden - # BluRay support - # Also downlaod the latest version of the decryption keys - # http://fvonline-db.bplaced.net/ - # and put them into ~/.config/aacs/KEYDB.cfg - (libbluray.override { - withAACS = true; - withJava = true; - withBDplus = true; - }) - - # chat apps - (import ./packages/threema-desktop.nix {inherit pkgs;}) - (discord.override { - withOpenASAR = true; - withVencord = false; - }) - (vesktop.override {electron = pkgs.electron_28;}) - (element-desktop.override {electron = pkgs.electron_28;}) - slack - - # office - libreoffice - apostrophe # markdown editor - - # creative - gimp-with-plugins - inkscape-with-extensions - scribus - audacity - # friture TODO: broken - blender - - # development - (import ./packages/intellij.nix {inherit pkgs;}) - jetbrains.rust-rover - insomnia - avalonia-ilspy - - # gaming - steam - oversteer - obs-studio - cartridges - bottles - protontricks - mangohud - - # utils - gh - git-filter-repo - neofetch - pinentry-gnome - ranger - lazydocker - libqalculate - ripgrep - jq - httpie -] diff --git a/programs.nix b/programs.nix deleted file mode 100644 index 9c4289e..0000000 --- a/programs.nix +++ /dev/null @@ -1,18 +0,0 @@ -{pkgs}: { - home-manager.enable = true; - rbw = import ./programs/bitwarden.nix; - git = import ./programs/git.nix; - lazygit.enable = true; - nixvim = import ./programs/nixvim.nix {inherit pkgs;}; - fish = { - enable = true; - interactiveShellInit = '' - set fish_greeting - ''; - }; - oh-my-posh = { - enable = true; - useTheme = "pararussel"; - enableFishIntegration = true; - }; -}