From bd25b73ab103b03d08111d1be8ef322c0f511b93 Mon Sep 17 00:00:00 2001 From: blaknull Date: Fri, 18 Oct 2024 12:47:25 -0500 Subject: [PATCH] added wayvnc config --- flake.lock | 64 ++++++------ home/flake.nix | 2 + home/programs/flake.nix | 1 + home/programs/pywal/flake.nix | 20 ++-- home/programs/wayvnc/default.nix | 22 ++++ system/configuration/default.nix | 42 ++++++++ system/configuration/laptop/default.nix | 127 +++--------------------- 7 files changed, 122 insertions(+), 156 deletions(-) create mode 100644 home/programs/wayvnc/default.nix diff --git a/flake.lock b/flake.lock index 3863813..ee04002 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-16SMbNTMTa+acgZVO0MihmuQonvLo4Oy24fSzNvBKLw=", - "path": "/nix/store/2byyf4br6i1v2lx9gvgv9gsg6jv2wfyn-source/ags", + "path": "/nix/store/g1fw4rpkw67mww668mxj05zmbd0ks8mv-source/ags", "type": "path" }, "original": { - "path": "/nix/store/2byyf4br6i1v2lx9gvgv9gsg6jv2wfyn-source/ags", + "path": "/nix/store/g1fw4rpkw67mww668mxj05zmbd0ks8mv-source/ags", "type": "path" } }, @@ -215,11 +215,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-SakyZnAhoToQmui5hozmLqkoLw6N/AHCgKF4tCP/sTQ=", - "path": "/nix/store/nb4nq461dir7sa4g5jc1s61k5qfflamx-source/disko", + "path": "/nix/store/6s00j648bcxmibrx5b63jinlszwz2c3p-source/disko", "type": "path" }, "original": { - "path": "/nix/store/nb4nq461dir7sa4g5jc1s61k5qfflamx-source/disko", + "path": "/nix/store/6s00j648bcxmibrx5b63jinlszwz2c3p-source/disko", "type": "path" } }, @@ -664,11 +664,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-FbSB/VPF1F8BjjGejCs9hzRK4uo5RNMoIdMdl58mEFM=", - "path": "/nix/store/2byyf4br6i1v2lx9gvgv9gsg6jv2wfyn-source/hyprland", + "path": "/nix/store/g1fw4rpkw67mww668mxj05zmbd0ks8mv-source/hyprland", "type": "path" }, "original": { - "path": "/nix/store/2byyf4br6i1v2lx9gvgv9gsg6jv2wfyn-source/hyprland", + "path": "/nix/store/g1fw4rpkw67mww668mxj05zmbd0ks8mv-source/hyprland", "type": "path" } }, @@ -1029,11 +1029,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-7ipphehm+qDglyyFxGz2ZYf9uNbXCohPCFAGSI2QMb8=", - "path": "/nix/store/nb4nq461dir7sa4g5jc1s61k5qfflamx-source/impermanence", + "path": "/nix/store/6s00j648bcxmibrx5b63jinlszwz2c3p-source/impermanence", "type": "path" }, "original": { - "path": "/nix/store/nb4nq461dir7sa4g5jc1s61k5qfflamx-source/impermanence", + "path": "/nix/store/6s00j648bcxmibrx5b63jinlszwz2c3p-source/impermanence", "type": "path" } }, @@ -1058,12 +1058,12 @@ }, "locked": { "lastModified": 1, - "narHash": "sha256-jR1BIfyY+rRVIZkzMOT5PK5PLvH5hoWwviq0GE6pY4w=", - "path": "/nix/store/h9gv682ppvibhvnvjgxx58acg6342lin-source/home", + "narHash": "sha256-ZyBMoOzPcntdRnVs747cLUB8yJylCdecHAtE/tWh5W8=", + "path": "/nix/store/j1jldl7nr35ghyvd0wpxr5bdnkdmd05s-source/home", "type": "path" }, "original": { - "path": "/nix/store/h9gv682ppvibhvnvjgxx58acg6342lin-source/home", + "path": "/nix/store/j1jldl7nr35ghyvd0wpxr5bdnkdmd05s-source/home", "type": "path" } }, @@ -1434,11 +1434,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-B01IL6PFTcOaiaVsj3GnvmKb1Mc+PsajyoBSU7UE9zU=", - "path": "/nix/store/pq1ql9bpk85l01kmr4k074mh1q0rsqcf-source/packages", + "path": "/nix/store/i085fcv2ckidpfzaif16vxj1xqify10l-source/packages", "type": "path" }, "original": { - "path": "/nix/store/pq1ql9bpk85l01kmr4k074mh1q0rsqcf-source/packages", + "path": "/nix/store/i085fcv2ckidpfzaif16vxj1xqify10l-source/packages", "type": "path" } }, @@ -1449,11 +1449,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-6oCDKhDSqJMWeODXDHD5XorN7/+KXBBIPZ2z+obwUNY=", - "path": "/nix/store/nb4nq461dir7sa4g5jc1s61k5qfflamx-source/packages", + "path": "/nix/store/6s00j648bcxmibrx5b63jinlszwz2c3p-source/packages", "type": "path" }, "original": { - "path": "/nix/store/nb4nq461dir7sa4g5jc1s61k5qfflamx-source/packages", + "path": "/nix/store/6s00j648bcxmibrx5b63jinlszwz2c3p-source/packages", "type": "path" } }, @@ -1522,12 +1522,12 @@ }, "locked": { "lastModified": 1, - "narHash": "sha256-9L+1TDE6MNQVXd8Z869oLwjS3khchgAhhG+KCjPo4jc=", - "path": "/nix/store/pq1ql9bpk85l01kmr4k074mh1q0rsqcf-source/programs", + "narHash": "sha256-+axyKmwg35iHQFbYCj0tW6XQ9ncPM3FfqO2maASdI0A=", + "path": "/nix/store/i085fcv2ckidpfzaif16vxj1xqify10l-source/programs", "type": "path" }, "original": { - "path": "/nix/store/pq1ql9bpk85l01kmr4k074mh1q0rsqcf-source/programs", + "path": "/nix/store/i085fcv2ckidpfzaif16vxj1xqify10l-source/programs", "type": "path" } }, @@ -1539,11 +1539,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-hg0wqQn6BxQXLmfBINzZoaWpdSIlwwZxKbYz+4df83o=", - "path": "/nix/store/nb4nq461dir7sa4g5jc1s61k5qfflamx-source/programs", + "path": "/nix/store/6s00j648bcxmibrx5b63jinlszwz2c3p-source/programs", "type": "path" }, "original": { - "path": "/nix/store/nb4nq461dir7sa4g5jc1s61k5qfflamx-source/programs", + "path": "/nix/store/6s00j648bcxmibrx5b63jinlszwz2c3p-source/programs", "type": "path" } }, @@ -1556,12 +1556,12 @@ }, "locked": { "lastModified": 1, - "narHash": "sha256-pqaq1rt9VZUm7XhlyQn7IH/+9vpAK/KUq2J7FlGs+dE=", - "path": "/nix/store/2byyf4br6i1v2lx9gvgv9gsg6jv2wfyn-source/pywal", + "narHash": "sha256-4mwfSmoMooqMRTneT8F0xdoHx1iVhja0VVJFmecj1+s=", + "path": "/nix/store/g1fw4rpkw67mww668mxj05zmbd0ks8mv-source/pywal", "type": "path" }, "original": { - "path": "/nix/store/2byyf4br6i1v2lx9gvgv9gsg6jv2wfyn-source/pywal", + "path": "/nix/store/g1fw4rpkw67mww668mxj05zmbd0ks8mv-source/pywal", "type": "path" } }, @@ -1585,11 +1585,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-TsMqdRC5Rsop/6ASLtAFJc0Spt9NI8iQBk6dXxJ8mYA=", - "path": "/nix/store/2byyf4br6i1v2lx9gvgv9gsg6jv2wfyn-source/rofi", + "path": "/nix/store/g1fw4rpkw67mww668mxj05zmbd0ks8mv-source/rofi", "type": "path" }, "original": { - "path": "/nix/store/2byyf4br6i1v2lx9gvgv9gsg6jv2wfyn-source/rofi", + "path": "/nix/store/g1fw4rpkw67mww668mxj05zmbd0ks8mv-source/rofi", "type": "path" } }, @@ -1670,11 +1670,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-Iek5h97Tc3MjuiLMbHC+K1bOk8QO5UCC5ZXG46erGzc=", - "path": "/nix/store/nb4nq461dir7sa4g5jc1s61k5qfflamx-source/services", + "path": "/nix/store/6s00j648bcxmibrx5b63jinlszwz2c3p-source/services", "type": "path" }, "original": { - "path": "/nix/store/nb4nq461dir7sa4g5jc1s61k5qfflamx-source/services", + "path": "/nix/store/6s00j648bcxmibrx5b63jinlszwz2c3p-source/services", "type": "path" } }, @@ -1688,12 +1688,12 @@ }, "locked": { "lastModified": 1, - "narHash": "sha256-MHLXxQGzz62LRi8jmBQESoeCfH3BKGBOWplfb3UFFTU=", - "path": "/nix/store/h9gv682ppvibhvnvjgxx58acg6342lin-source/system", + "narHash": "sha256-FtmMe4X6qOHE4q8v4bwsHIvhA3Ll1T96UhkYuWF+dlQ=", + "path": "/nix/store/j1jldl7nr35ghyvd0wpxr5bdnkdmd05s-source/system", "type": "path" }, "original": { - "path": "/nix/store/h9gv682ppvibhvnvjgxx58acg6342lin-source/system", + "path": "/nix/store/j1jldl7nr35ghyvd0wpxr5bdnkdmd05s-source/system", "type": "path" } }, @@ -1770,11 +1770,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-2h0M0hXa3L6rQJ2hmDadiZBYJcoxRqFdlXD7tK0LFrM=", - "path": "/nix/store/2byyf4br6i1v2lx9gvgv9gsg6jv2wfyn-source/terminal", + "path": "/nix/store/g1fw4rpkw67mww668mxj05zmbd0ks8mv-source/terminal", "type": "path" }, "original": { - "path": "/nix/store/2byyf4br6i1v2lx9gvgv9gsg6jv2wfyn-source/terminal", + "path": "/nix/store/g1fw4rpkw67mww668mxj05zmbd0ks8mv-source/terminal", "type": "path" } }, diff --git a/home/flake.nix b/home/flake.nix index f95bea4..bcef6db 100644 --- a/home/flake.nix +++ b/home/flake.nix @@ -34,8 +34,10 @@ homeconfig = { calcurse.enable = true; + wayvnc.enable = false; rofi.enable = true; mpd.enable = true; + wal.enable = true; ags.enable = true; hyprland.enable = true; }; diff --git a/home/programs/flake.nix b/home/programs/flake.nix index 1647bc2..ff59754 100644 --- a/home/programs/flake.nix +++ b/home/programs/flake.nix @@ -28,6 +28,7 @@ inputs.pywal.hmModule ./swaylock ./calcurse + ./wayvnc ]; home.packages = [ diff --git a/home/programs/pywal/flake.nix b/home/programs/pywal/flake.nix index 54cf4d8..63cd753 100644 --- a/home/programs/pywal/flake.nix +++ b/home/programs/pywal/flake.nix @@ -31,11 +31,7 @@ in { - hmModule = { config, lib, pkgs, ... }: let - pywalfox-wrapper = pkgs.writeShellScriptBin "pywalfox-wrapper" '' - ${pkgs.pywalfox-native}/bin/pywalfox start - ''; - in { + hmModule = { config, lib, pkgs, ... }:{ imports = [ inputs.spicetify-nix.homeManagerModules.default @@ -46,7 +42,11 @@ default = false; }; - config = lib.mkIf config.homeconfig.wal.enable { + config = let + pywalfox-wrapper = pkgs.writeShellScriptBin "pywalfox-wrapper" '' + ${pkgs.pywalfox-native}/bin/pywalfox start + ''; + in lib.mkIf config.homeconfig.wal.enable { programs.spicetify = let spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.system}; @@ -56,10 +56,10 @@ theme = spicePkgs.themes.default; enabledExtensions = with spicePkgs.extensions; [ ({ - src = "${inputs.spicetify-ext}/adblock"; - name = "adblock.js"; - }) - copyToClipboard + src = "${inputs.spicetify-ext}/adblock"; + name = "adblock.js"; + }) + copyToClipboard oneko #randomBadToTheBoneRiff #this could be hilarious ]; diff --git a/home/programs/wayvnc/default.nix b/home/programs/wayvnc/default.nix new file mode 100644 index 0000000..3ea733e --- /dev/null +++ b/home/programs/wayvnc/default.nix @@ -0,0 +1,22 @@ +{ config, lib, pkgs, ... }: { + + options.homeconfig.wayvnc.enable = lib.options.mkOption { + type = lib.types.bool; + default = false; + }; + + config = lib.mkIf config.homeconfig.wayvnc.enable { + home.packages = with pkgs; [ + wayvnc + ]; + + home.file.".config/wayvnc/config".txt = '' + use_relative_paths=true + address=0.0.0.0 + enable_auth=true + username=nathan + password=//falconAdjacent42 + rsa_private_key_file=rsa_key.pem + ''; + }; +} diff --git a/system/configuration/default.nix b/system/configuration/default.nix index d69fab8..5b3d36d 100644 --- a/system/configuration/default.nix +++ b/system/configuration/default.nix @@ -9,12 +9,54 @@ sysconfig.laptop.enable = lib.mkDefault false; sysconfig.homebox.enable = lib.mkDefault false; sysconfig.generic.enable = lib.mkDefault true; + + # Set your time zone. + time.timeZone = "America/Chicago"; + + # Select internationalisation properties. + i18n.defaultLocale = "en_US.UTF-8"; + + i18n.extraLocaleSettings = { + LC_ADDRESS = "en_US.UTF-8"; + LC_IDENTIFICATION = "en_US.UTF-8"; + LC_MEASUREMENT = "en_US.UTF-8"; + LC_MONETARY = "en_US.UTF-8"; + LC_NAME = "en_US.UTF-8"; + LC_NUMERIC = "en_US.UTF-8"; + LC_PAPER = "en_US.UTF-8"; + LC_TELEPHONE = "en_US.UTF-8"; + LC_TIME = "en_US.UTF-8"; + }; + +# Define a user account. Don't forget to set a password with ‘passwd’. + users.users.${config.sysconfig.opts.username} = { + isNormalUser = true; + description = "Nathan"; + extraGroups = [ + "networkmanager" + "wheel" + "adbusers" +#school? + "plugdev" + ]; + }; + + + networking = { + hostName = config.sysconfig.opts.host; nameservers = [ "1.1.1.1#one.one.one.one" "1.0.0.1#one.one.one.one" ]; networkmanager.enable = true; }; + + nix.settings = { + experimental-features = [ "nix-command" "flakes" ]; + substituters = ["https://hyprland.cachix.org"]; + trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="]; + }; + xdg.portal = { enable = true; config.common.default = "*"; diff --git a/system/configuration/laptop/default.nix b/system/configuration/laptop/default.nix index 9a7e9f2..446fe2a 100644 --- a/system/configuration/laptop/default.nix +++ b/system/configuration/laptop/default.nix @@ -6,22 +6,29 @@ { - #imports = [ ./hardware-configuration.nix ]; - options.sysconfig.laptop.enable = lib.options.mkOption { type = lib.types.bool; }; config = lib.mkIf config.sysconfig.laptop.enable { + assertions = [ + { + assertion = !config.sysconfig.homebox.enable; + message = "sysconfig.laptop conflicts with homebox!"; + } + ]; nixpkgs.config.allowUnfree = true; # Bootloader. - boot.loader.systemd-boot.enable = true; - boot.loader.efi.canTouchEfiVariables = true; - - boot.kernelParams = [ "snd-intel-dspcfg.dsp_driver=1" ]; + boot = { + loader = { + systemd-boot.enable = true; + efi.canTouchEfiVariables = true; + }; + kernelParams = [ "snd-intel-dspcfg.dsp_driver=1" ]; + }; hardware = { #graphics.enable = true; @@ -78,132 +85,24 @@ }; -#networking - - networking = { - hostName = "laptop"; - - nameservers = [ "1.1.1.1#one.one.one.one" "1.0.0.1#one.one.one.one" ]; - - networkmanager = { - enable = true; - }; - }; - -# nix experimental features - nix.settings = { - experimental-features = [ "nix-command" "flakes" ]; - substituters = ["https://hyprland.cachix.org"]; - trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="]; - }; - # Configure network proxy if necessary # networking.proxy.default = "http://user:password@proxy:port/"; # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; -# Set your time zone. - time.timeZone = "America/Chicago"; - -# Select internationalisation properties. - i18n.defaultLocale = "en_US.UTF-8"; - - i18n.extraLocaleSettings = { - LC_ADDRESS = "en_US.UTF-8"; - LC_IDENTIFICATION = "en_US.UTF-8"; - LC_MEASUREMENT = "en_US.UTF-8"; - LC_MONETARY = "en_US.UTF-8"; - LC_NAME = "en_US.UTF-8"; - LC_NUMERIC = "en_US.UTF-8"; - LC_PAPER = "en_US.UTF-8"; - LC_TELEPHONE = "en_US.UTF-8"; - LC_TIME = "en_US.UTF-8"; - }; - - - programs.steam = { - enable = true; - }; - - environment.sessionVariables = { - - NIXOS_OZONE_WL = "1"; - }; environment.shells = with pkgs; [ zsh ]; - xdg.portal = { - enable = true; - config.common.default = "*"; - extraPortals = with pkgs; [ xdg-desktop-portal-gtk ]; - }; - - # Enable CUPS to print documents. services.printing.enable = true; - services.mpd = { - enable = true; - startWhenNeeded = true; - network.port = 6600; - network.listenAddress = "127.0.0.1"; - user = "nathan"; - musicDirectory = "/home/nathan/Music"; - extraConfig = '' - audio_output { - type "pipewire" - name "Audio1" - } - audio_output { - type "fifo" - name "visualizer" - path "/tmp/mpd.fifo" - format "44100:16:1" - } - ''; - }; - - systemd.services.mpd.environment = { - XDG_RUNTIME_DIR = "/run/user/1000"; - }; - # Enable touchpad support (enabled default in most desktopManager). # services.xserver.libinput.enable = true; programs.adb.enable = true; -# Define a user account. Don't forget to set a password with ‘passwd’. - users.users.nathan = { - isNormalUser = true; - description = "Nathan"; - extraGroups = [ - "networkmanager" - "wheel" - "adbusers" -#school? - "plugdev" - ]; -# packages supplied by home-manager - }; - users.defaultUserShell = pkgs.zsh; programs.zsh.enable = true; -# List packages installed in system profile. To search, run: -# $ nix search wget - environment.systemPackages = with pkgs; [ - # gstreamer - gst_all_1.gstreamer - gst_all_1.gst-plugins-base - gst_all_1.gst-plugins-good - gst_all_1.gst-plugins-bad - gst_all_1.gst-plugins-ugly - - ]; - - - fonts.packages = with pkgs; [ - nerdfonts - ]; # This value determines the NixOS release from which the default # settings for stateful data, like file locations and database versions # on your system were taken. It‘s perfectly fine and recommended to leave