diff --git a/flake.lock b/flake.lock index 1dcc345..923b1fc 100644 --- a/flake.lock +++ b/flake.lock @@ -75,6 +75,24 @@ "type": "github" } }, + "flake-parts": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib" + }, + "locked": { + "lastModified": 1712014858, + "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, "flake-utils": { "inputs": { "systems": "systems" @@ -266,6 +284,24 @@ "type": "github" } }, + "nixpkgs-lib": { + "locked": { + "dir": "lib", + "lastModified": 1711703276, + "narHash": "sha256-iMUFArF0WCatKK6RzfUJknjem0H9m4KgorO/p3Dopkk=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "d8fe5e6c92d0d190646fb9f1056741a229980089", + "type": "github" + }, + "original": { + "dir": "lib", + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs-stable": { "locked": { "lastModified": 1719663039, @@ -314,6 +350,22 @@ "type": "github" } }, + "nixpkgs_4": { + "locked": { + "lastModified": 1713537308, + "narHash": "sha256-XtTSSIB2DA6tOv+l0FhvfDMiyCmhoRbNB+0SeInZkbk=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "5c24cf2f0a12ad855f444c30b2421d044120c66f", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nur": { "locked": { "lastModified": 1719988422, @@ -424,7 +476,8 @@ "nixos-hardware": "nixos-hardware", "nixpkgs": "nixpkgs_3", "nur": "nur", - "sops-nix": "sops-nix" + "sops-nix": "sops-nix", + "talhelper": "talhelper" } }, "rust-overlay": { @@ -503,6 +556,25 @@ "type": "github" } }, + "talhelper": { + "inputs": { + "flake-parts": "flake-parts", + "nixpkgs": "nixpkgs_4" + }, + "locked": { + "lastModified": 1719976594, + "narHash": "sha256-OMgIrBMLTTnD5SrLjRvhF1Yf4D9A5BbSDpPl4Mgm1s8=", + "owner": "budimanjojo", + "repo": "talhelper", + "rev": "366f765b4bb29db67085bd5a5a44e3afaa45a0e1", + "type": "github" + }, + "original": { + "owner": "budimanjojo", + "repo": "talhelper", + "type": "github" + } + }, "treefmt": { "inputs": { "nixpkgs": [ diff --git a/flake.nix b/flake.nix index 8e33579..35734e0 100644 --- a/flake.nix +++ b/flake.nix @@ -16,6 +16,9 @@ # https://github.com/nix-community nixos-hardware.url = "github:NixOS/nixos-hardware/master"; + # disko - Declarative disk partitioning and formatting using nix + disko.url = "github:nix-community/disko"; + # home-manager - unstable # https://github.com/nix-community/home-manager home-manager = { @@ -50,12 +53,14 @@ url = "github:bluskript/nix-inspect"; }; - # disko - Declarative disk partitioning and formatting using nix - disko.url = "github:nix-community/disko"; + # talhelper - A tool to help creating Talos kubernetes cluster + talhelper = { + url = "github:budimanjojo/talhelper"; + }; }; outputs = - { self, nixpkgs, sops-nix, home-manager, nix-vscode-extensions, impermanence, disko, ... } @ inputs: + { self, nixpkgs, sops-nix, home-manager, nix-vscode-extensions, impermanence, disko, talhelper, ... } @ inputs: let forAllSystems = nixpkgs.lib.genAttrs [ "aarch64-linux" diff --git a/nixos/profiles/role-dev.nix b/nixos/profiles/role-dev.nix index 83fd0e0..fc604b8 100644 --- a/nixos/profiles/role-dev.nix +++ b/nixos/profiles/role-dev.nix @@ -21,6 +21,7 @@ with config; # bind # for dns utils like named-checkconf inputs.nix-inspect.packages.${pkgs.system}.default + inputs.talhelper.packages.${pkgs.system}.default ]; programs.direnv = { diff --git a/nixos/profiles/role-gaming.nix b/nixos/profiles/role-gaming.nix index a2bac36..b8667cf 100644 --- a/nixos/profiles/role-gaming.nix +++ b/nixos/profiles/role-gaming.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ lib, pkgs, ... }: { # Enable module for NVIDIA graphics mySystem = { @@ -21,6 +21,19 @@ winetricks ]; - # sound.enable = lib.mkDefault true; - # hardware.pulseaudio.enable = lib.mkForce false; + # Disable Alsa + sound.enable = lib.mkDefault false; + hardware.pulseaudio.enable = lib.mkForce false; + + # Realtime Kit + security.rtkit.enable = true; + # Enable pipewire + services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + jack.enable = true; + }; + }