diff --git a/flake.lock b/flake.lock index d03b3e8..1b0e3c3 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ ] }, "locked": { - "lastModified": 1754459970, - "narHash": "sha256-M9Us2LAGtf25hmYCk+n0nbBUlcrs9kuG9tVF8QuFktg=", + "lastModified": 1756237290, + "narHash": "sha256-lpS2jbnG4025lmEFhcdSmMPncHpEMOsCNBA+Pyv+BNE=", "owner": "asus-linux-drivers", "repo": "asus-numberpad-driver", - "rev": "130a1b4048fbee0b29996147d26965193580f055", + "rev": "e34546fca9b31e9c660d41b3aa37cf24009706ed", "type": "github" }, "original": { @@ -20,6 +20,43 @@ "type": "github" } }, + "chaotic": { + "inputs": { + "flake-schemas": "flake-schemas", + "home-manager": "home-manager", + "jovian": "jovian", + "nixpkgs": "nixpkgs", + "rust-overlay": "rust-overlay" + }, + "locked": { + "lastModified": 1757011047, + "narHash": "sha256-y4cFEDZ7Mmz4vLPSc2pDF7OXJ9ylW3cOU2Tztx/ApI0=", + "owner": "chaotic-cx", + "repo": "nyx", + "rev": "7b9fd94dccd3a22f32dff8560f248991300f8c16", + "type": "github" + }, + "original": { + "owner": "chaotic-cx", + "ref": "nyxpkgs-unstable", + "repo": "nyx", + "type": "github" + } + }, + "flake-schemas": { + "locked": { + "lastModified": 1721999734, + "narHash": "sha256-G5CxYeJVm4lcEtaO87LKzOsVnWeTcHGKbKxNamNWgOw=", + "rev": "0a5c42297d870156d9c57d8f99e476b738dcd982", + "revCount": 75, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.1.5/0190ef2f-61e0-794b-ba14-e82f225e55e6/source.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://flakehub.com/f/DeterminateSystems/flake-schemas/%3D0.1.5.tar.gz" + } + }, "flake-utils": { "inputs": { "systems": "systems" @@ -32,11 +69,44 @@ "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", "type": "github" }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_2": { + "inputs": { + "systems": "systems_2" + }, + "locked": { + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", + "type": "github" + }, "original": { "id": "flake-utils", "type": "indirect" } }, + "flakey-profile": { + "locked": { + "lastModified": 1712898590, + "narHash": "sha256-FhGIEU93VHAChKEXx905TSiPZKga69bWl1VB37FK//I=", + "owner": "lf-", + "repo": "flakey-profile", + "rev": "243c903fd8eadc0f63d205665a92d4df91d42d9d", + "type": "github" + }, + "original": { + "owner": "lf-", + "repo": "flakey-profile", + "type": "github" + } + }, "hm-stable": { "inputs": { "nixpkgs": [ @@ -44,11 +114,11 @@ ] }, "locked": { - "lastModified": 1753592768, - "narHash": "sha256-oV695RvbAE4+R9pcsT9shmp6zE/+IZe6evHWX63f2Qg=", + "lastModified": 1756679287, + "narHash": "sha256-Xd1vOeY9ccDf5VtVK12yM0FS6qqvfUop8UQlxEB+gTQ=", "owner": "nix-community", "repo": "home-manager", - "rev": "fc3add429f21450359369af74c2375cb34a2d204", + "rev": "07fc025fe10487dd80f2ec694f1cd790e752d0e8", "type": "github" }, "original": { @@ -59,17 +129,38 @@ } }, "home-manager": { + "inputs": { + "nixpkgs": [ + "chaotic", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1756954499, + "narHash": "sha256-Pg4xBHzvzNY8l9x/rLWoJMnIR8ebG+xeU+IyqThIkqU=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "ed1a98c375450dfccf427adacd2bfd1a7b22eb25", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "type": "github" + } + }, + "home-manager_2": { "inputs": { "nixpkgs": [ "nixpkgs-unstable" ] }, "locked": { - "lastModified": 1754527677, - "narHash": "sha256-qAzCtmKkMz40xFgP9KN+TCKjVieK4u04EWwl2KvVk0E=", + "lastModified": 1757075491, + "narHash": "sha256-a+NMGl5tcvm+hyfSG2DlVPa8nZLpsumuRj1FfcKb2mQ=", "owner": "nix-community", "repo": "home-manager", - "rev": "475d35797d9537354d825260cf583114537affc2", + "rev": "f56bf065f9abedc7bc15e1f2454aa5c8edabaacf", "type": "github" }, "original": { @@ -94,7 +185,137 @@ "type": "github" } }, + "jovian": { + "inputs": { + "nix-github-actions": "nix-github-actions", + "nixpkgs": [ + "chaotic", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1756638688, + "narHash": "sha256-ddxbPTnIchM6tgxb6fRrCvytlPE2KLifckTnde/irVQ=", + "owner": "Jovian-Experiments", + "repo": "Jovian-NixOS", + "rev": "e7b8679cba79f4167199f018b05c82169249f654", + "type": "github" + }, + "original": { + "owner": "Jovian-Experiments", + "repo": "Jovian-NixOS", + "type": "github" + } + }, + "lix": { + "flake": false, + "locked": { + "lastModified": 1755787066, + "narHash": "sha256-X2UwkUEban08GRSPXRr+kz8fckHqebr3P77qSvjoeOw=", + "rev": "ac9721a92e8138d29707824dbedb484c76948493", + "type": "tarball", + "url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/ac9721a92e8138d29707824dbedb484c76948493.tar.gz?rev=ac9721a92e8138d29707824dbedb484c76948493" + }, + "original": { + "type": "tarball", + "url": "https://git.lix.systems/lix-project/lix/archive/main.tar.gz" + } + }, + "lix-module": { + "inputs": { + "flake-utils": "flake-utils", + "flakey-profile": "flakey-profile", + "lix": "lix", + "nixpkgs": [ + "nixpkgs-unstable" + ] + }, + "locked": { + "lastModified": 1756511062, + "narHash": "sha256-IgD1JR7scSEwlK/YAbmrcTWpAYT30LPldCUHdzXkaMs=", + "ref": "refs/heads/main", + "rev": "3f09a5eb772e02d98bb8878ab687d5b721f00d16", + "revCount": 162, + "type": "git", + "url": "https://git.lix.systems/lix-project/nixos-module" + }, + "original": { + "type": "git", + "url": "https://git.lix.systems/lix-project/nixos-module" + } + }, + "nix-github-actions": { + "inputs": { + "nixpkgs": [ + "chaotic", + "jovian", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1729697500, + "narHash": "sha256-VFTWrbzDlZyFHHb1AlKRiD/qqCJIripXKiCSFS8fAOY=", + "owner": "zhaofengli", + "repo": "nix-github-actions", + "rev": "e418aeb728b6aa5ca8c5c71974e7159c2df1d8cf", + "type": "github" + }, + "original": { + "owner": "zhaofengli", + "ref": "matrix-name", + "repo": "nix-github-actions", + "type": "github" + } + }, "nixpkgs": { + "locked": { + "lastModified": 1756989294, + "narHash": "sha256-vh3F0p7pGvj9tItYjlqiZ3zTJCuw9+d74RhYCYLuaBQ=", + "owner": "PedroHLC", + "repo": "nixpkgs", + "rev": "f04ea9d87566cfe950cf45d7311a9964dcf3bf38", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-stable": { + "locked": { + "lastModified": 1757020766, + "narHash": "sha256-PLoSjHRa2bUbi1x9HoXgTx2AiuzNXs54c8omhadyvp0=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "fe83bbdde2ccdc2cb9573aa846abe8363f79a97a", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-25.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-unstable": { + "locked": { + "lastModified": 1756787288, + "narHash": "sha256-rw/PHa1cqiePdBxhF66V7R+WAP8WekQ0mCDG4CFqT8Y=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "d0fc30899600b9b3466ddb260fd83deb486c32f1", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { "locked": { "lastModified": 1741379970, "narHash": "sha256-Wh7esNh7G24qYleLvgOSY/7HlDUzWaL/n4qzlBePpiw=", @@ -110,39 +331,7 @@ "type": "github" } }, - "nixpkgs-stable": { - "locked": { - "lastModified": 1754292888, - "narHash": "sha256-1ziydHSiDuSnaiPzCQh1mRFBsM2d2yRX9I+5OPGEmIE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "ce01daebf8489ba97bd1609d185ea276efdeb121", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-25.05", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-unstable": { - "locked": { - "lastModified": 1754214453, - "narHash": "sha256-Q/I2xJn/j1wpkGhWkQnm20nShYnG7TI99foDBpXm1SY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "5b09dc45f24cf32316283e62aec81ffee3c3e376", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_2": { + "nixpkgs_3": { "locked": { "lastModified": 1716044191, "narHash": "sha256-V/JRCf9iOKGMmmMCs/K1n+vOP01Y7ZPJntHXxDEvzWM=", @@ -161,15 +350,38 @@ "root": { "inputs": { "asus-numberpad-driver": "asus-numberpad-driver", + "chaotic": "chaotic", "hm-stable": "hm-stable", - "home-manager": "home-manager", + "home-manager": "home-manager_2", "impermanence": "impermanence", + "lix-module": "lix-module", "nixpkgs-stable": "nixpkgs-stable", "nixpkgs-unstable": "nixpkgs-unstable", "yandex-music": "yandex-music", "zapret": "zapret" } }, + "rust-overlay": { + "inputs": { + "nixpkgs": [ + "chaotic", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1756953131, + "narHash": "sha256-alhjsmCdJDNZCP824NB21ZfqepVsGwpIiRBmSHUvp7U=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "c2e69d21d6a1c83de3326c975d484c4c79893896", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, "systems": { "locked": { "lastModified": 1681028828, @@ -185,18 +397,33 @@ "type": "github" } }, + "systems_2": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "yandex-music": { "inputs": { - "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs", + "flake-utils": "flake-utils_2", + "nixpkgs": "nixpkgs_2", "ymExe": "ymExe" }, "locked": { - "lastModified": 1754096045, - "narHash": "sha256-A50x6z0okGFqlS7kN32zH8IyZXKcdGRMVW4gXlFTak4=", + "lastModified": 1756476780, + "narHash": "sha256-gxI12iYljdskHTT+YC8/uCjCgUYJDpK1dZEK0g1KHVE=", "owner": "cucumber-sp", "repo": "yandex-music-linux", - "rev": "8f69605f84ade24e21f728aee14110b48690f390", + "rev": "a2d9c7a0e52fe46582f1225ddb33eaf47f06fec2", "type": "github" }, "original": { @@ -208,18 +435,18 @@ "ymExe": { "flake": false, "locked": { - "narHash": "sha256-jkj4DiFUd4gULozNIjGkng3Wceuwle63bwnGhBMaDxw=", + "narHash": "sha256-XYvri3YNpnKtsZUWegLJqWPrRPXDsst1Jbl7P+iGFn4=", "type": "file", - "url": "https://music-desktop-application.s3.yandex.net/stable/Yandex_Music_x64_5.62.0.exe" + "url": "https://music-desktop-application.s3.yandex.net/stable/Yandex_Music_x64_5.66.1.exe" }, "original": { "type": "file", - "url": "https://music-desktop-application.s3.yandex.net/stable/Yandex_Music_x64_5.62.0.exe" + "url": "https://music-desktop-application.s3.yandex.net/stable/Yandex_Music_x64_5.66.1.exe" } }, "zapret": { "inputs": { - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs_3", "zapret-src": "zapret-src" }, "locked": { diff --git a/flake.nix b/flake.nix index d5f05ef..b9be5f9 100644 --- a/flake.nix +++ b/flake.nix @@ -22,10 +22,15 @@ url = "github:asus-linux-drivers/asus-numberpad-driver"; inputs.nixpkgs.follows = "nixpkgs-unstable"; }; + lix-module = { + url = "git+https://git.lix.systems/lix-project/nixos-module"; + inputs.nixpkgs.follows = "nixpkgs-unstable"; + }; zapret.url = "github:n0vvvonder/zapret-flake.nix"; + chaotic.url = "github:chaotic-cx/nyx/nyxpkgs-unstable"; }; - outputs = { self, nixpkgs-unstable, impermanence, home-manager, zapret, nixpkgs-stable, hm-stable, asus-numberpad-driver, ...}@inputs: { + outputs = { self, nixpkgs-unstable, impermanence, home-manager, zapret, nixpkgs-stable, hm-stable, lix-module, asus-numberpad-driver, chaotic, ...}@inputs: { nixosConfigurations = { Ratchet = nixpkgs-unstable.lib.nixosSystem { system = "x86_64-linux"; @@ -61,6 +66,8 @@ system = "x86_64-linux"; specialArgs = { inherit inputs; }; modules = [ + lix-module.nixosModules.default + chaotic.nixosModules.default impermanence.nixosModules.impermanence ./hosts/generic/persistence.nix ./hosts/generic/configuration_generic.nix diff --git a/home/yaroslav/Aphelion/Aphelion.nix b/home/yaroslav/Aphelion/Aphelion.nix index 745aa22..30ac9eb 100644 --- a/home/yaroslav/Aphelion/Aphelion.nix +++ b/home/yaroslav/Aphelion/Aphelion.nix @@ -1,7 +1,15 @@ -{ ... }: +{ pkgs, ... }: { imports = [ ../home.nix ./mpd.nix ]; + home.packages = with pkgs; [ + hyprpolkitagent + swaynotificationcenter + hyprpaper + grim + slurp + wl-clipboard + ]; } diff --git a/home/yaroslav/home.nix b/home/yaroslav/home.nix index 18671bf..18c4f0a 100644 --- a/home/yaroslav/home.nix +++ b/home/yaroslav/home.nix @@ -51,6 +51,11 @@ in "vscode" "unrar" "teamspeak3" + "ida-free" + "zoom" + ]; + nixpkgs.config.permittedInsecurePackages = [ + "qtwebengine-5.15.19" ]; home.packages = with pkgs; [ mc diff --git a/home/yaroslav/home_gui.nix b/home/yaroslav/home_gui.nix index 9eeef4f..49ec582 100644 --- a/home/yaroslav/home_gui.nix +++ b/home/yaroslav/home_gui.nix @@ -32,5 +32,6 @@ wl-kbptr brave heroic + zoom-us ]; } diff --git a/home/yaroslav/kitty.nix b/home/yaroslav/kitty.nix index a5cf227..e174b58 100644 --- a/home/yaroslav/kitty.nix +++ b/home/yaroslav/kitty.nix @@ -10,6 +10,9 @@ font_size = 10; }; }; + home.sessionVariables = { + TERMINAL = "kitty"; + }; } diff --git a/home/yaroslav/nvim.nix b/home/yaroslav/nvim.nix index e1089e3..422eecf 100644 --- a/home/yaroslav/nvim.nix +++ b/home/yaroslav/nvim.nix @@ -28,9 +28,11 @@ programs.neovim = { vimtex coq_nvim coq-artifacts - ]; + transparent-nvim + zenbones-nvim + ]; extraLuaConfig = '' - local function my_on_attach(bufnr) + local function my_on_attach(bufnr) local api = require "nvim-tree.api" local function opts(desc) @@ -70,8 +72,13 @@ programs.neovim = { -- vim.fn["vsnip#anonymous"](args.body) -- end, -- }, --- }) + --}) + + set termguicolors = true + set background = dark + colorscheme zenbones ''; + }; } diff --git a/hosts/Aphelion/Aphelion_misc.nix b/hosts/Aphelion/Aphelion_misc.nix index 72e3d9a..c8d50c1 100644 --- a/hosts/Aphelion/Aphelion_misc.nix +++ b/hosts/Aphelion/Aphelion_misc.nix @@ -1,7 +1,23 @@ -{ ... }: +{ config, lib, ... }: { virtualisation.waydroid.enable = true; services.flatpak.enable = true; programs.nekoray.enable = true; programs.nekoray.tunMode.enable = true; + programs.obs-studio.enable = true; + programs.obs-studio.enableVirtualCamera = true; + boot.extraModulePackages = with config.boot.kernelPackages; [ + v4l2loopback + ]; + boot.kernelModules = [ "v4l2loopback" ]; + boot.extraModprobeConfig = '' + options v4l2loopback devices=1 video_nr=1 card_label="OBS Cam" exclusive_caps=1 + ''; + security.polkit.enable = true; + nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ + "ida-free" + ]; + programs.hyprland.enable = true; + programs.waybar.enable = true; + } diff --git a/hosts/Aphelion/hardware-Aphelion.nix b/hosts/Aphelion/hardware-Aphelion.nix index f4e9486..6b7ead8 100644 --- a/hosts/Aphelion/hardware-Aphelion.nix +++ b/hosts/Aphelion/hardware-Aphelion.nix @@ -14,7 +14,7 @@ boot.extraModulePackages = [ ]; boot.supportedFilesystems = [ "zfs" ]; boot.kernelParams = [ - "video=DP-1:1920x1080@60" + "video=DP-1:1920x1080@60" ]; fileSystems."/" = @@ -58,11 +58,19 @@ "L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}" ]; + chaotic.mesa-git.enable = true; + # 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.firewall.allowedTCPPorts = [ 42420 25565 ]; + networking.firewall.allowedUDPPorts = [ 5900 ]; + + networking.firewall.trustedInterfaces = [ "enp12s0" "wlp11s0" "wg0"]; + #networking.firewall.enable = false; + # networking.interfaces.enp12s0.useDHCP = lib.mkDefault true; # networking.interfaces.wlp11s0.useDHCP = lib.mkDefault true; hardware.bluetooth.enable = true; # enables support for Bluetooth diff --git a/hosts/generic/configuration_generic.nix b/hosts/generic/configuration_generic.nix index 949dbce..368f921 100644 --- a/hosts/generic/configuration_generic.nix +++ b/hosts/generic/configuration_generic.nix @@ -40,5 +40,10 @@ # locales i18n.extraLocales = [ "en_US.UTF-8/UTF-8" "C.UTF-8/UTF-8" "ru_RU.UTF-8/UTF-8" ]; + + # keyboard + services.udev.extraRules = '' + KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{serial}=="*vial:f64c2b3c*", MODE="0660", GROUP="users", TAG+="uaccess", TAG+="udev-acl" + ''; } diff --git a/hosts/generic/persistence.nix b/hosts/generic/persistence.nix index 59054c0..9a7b22f 100644 --- a/hosts/generic/persistence.nix +++ b/hosts/generic/persistence.nix @@ -10,6 +10,7 @@ "/var/lib/systemd/timers" "/var/lib/fprint" "/var/lib/libvirt" + "/var/lib/waydroid" "/var/lib/teamspeak3-server" "/etc/NetworkManager" "/var/lib/sddm"