mirror of
https://git.lgmrszd.xyz/Lgmrszd/nix-cfg.git
synced 2025-12-16 16:38:19 +01:00
Compare commits
8 commits
409b87742d
...
d941148964
| Author | SHA1 | Date | |
|---|---|---|---|
| d941148964 | |||
| f1f696f77e | |||
| c6c9298556 | |||
| 4385e05e82 | |||
| 012afecf57 | |||
| e24934ae66 | |||
| 645741dee6 | |||
| 6925b4e010 |
5 changed files with 124 additions and 51 deletions
84
flake.lock
generated
84
flake.lock
generated
|
|
@ -16,11 +16,11 @@
|
||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733851514,
|
"lastModified": 1736445563,
|
||||||
"narHash": "sha256-fQt/HzF+OBC8xLRYeHiYLSEzjrgOLNWhyd102aY2oLU=",
|
"narHash": "sha256-+f1MWPtja+LRlTHJP/i/3yxmnzo2LGtZmxtJJTdAp8o=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "authentik-nix",
|
"repo": "authentik-nix",
|
||||||
"rev": "b059e1d6e7a94bbeabb4e87d47b5f5097fd61823",
|
"rev": "bf5a5bf42189ff5f468f0ff26c9296233a97eb6c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -32,16 +32,16 @@
|
||||||
"authentik-src": {
|
"authentik-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733849292,
|
"lastModified": 1736440980,
|
||||||
"narHash": "sha256-gJYgrRxytoGHkjeEsiKY/tl06D8XOnZZ9SDpK1WSyUw=",
|
"narHash": "sha256-Z3rFFrXrOKaF9NpY/fInsEbzdOWnWqLfEYl7YX9hFEU=",
|
||||||
"owner": "goauthentik",
|
"owner": "goauthentik",
|
||||||
"repo": "authentik",
|
"repo": "authentik",
|
||||||
"rev": "0edd7531a152910e6bdd4f7d3d0cde3ed5fdd956",
|
"rev": "9d81f0598c7735e2b4616ee865ab896056a67408",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "goauthentik",
|
"owner": "goauthentik",
|
||||||
"ref": "version/2024.10.5",
|
"ref": "version/2024.12.2",
|
||||||
"repo": "authentik",
|
"repo": "authentik",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
|
@ -98,11 +98,11 @@
|
||||||
"nixpkgs-lib": "nixpkgs-lib"
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733312601,
|
"lastModified": 1736143030,
|
||||||
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
|
"narHash": "sha256-+hu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
|
"rev": "b905f6fc23a9051a6e1b741e1438dbfc0634c6de",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -159,11 +159,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1735381016,
|
"lastModified": 1737221749,
|
||||||
"narHash": "sha256-CyCZFhMUkuYbSD6bxB/r43EdmDE7hYeZZPTCv0GudO4=",
|
"narHash": "sha256-igllW0yG+UbetvhT11jnt9RppSHXYgMykYhZJeqfHs0=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "10e99c43cdf4a0713b4e81d90691d22c6a58bdf2",
|
"rev": "97d7946b5e107dd03cc82f21165251d4e0159655",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -264,11 +264,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1735291276,
|
"lastModified": 1737062831,
|
||||||
"narHash": "sha256-NYVcA06+blsLG6wpAbSPTCyLvxD/92Hy4vlY9WxFI1M=",
|
"narHash": "sha256-Tbk1MZbtV2s5aG+iM99U8FqwxU/YNArMcWAv6clcsBc=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "634fd46801442d760e09493a794c4f15db2d0cbb",
|
"rev": "5df43628fdf08d642be8ba5b3625a6c70731c19c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -295,23 +295,23 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-lib": {
|
"nixpkgs-lib": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733096140,
|
"lastModified": 1735774519,
|
||||||
"narHash": "sha256-1qRH7uAUsyQI7R1Uwl4T+XvdNv778H0Nb5njNrqvylY=",
|
"narHash": "sha256-CewEm1o2eVAnoqb6Ml+Qi9Gg/EfNAxbRx1lANGVyoLI=",
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz"
|
"url": "https://github.com/NixOS/nixpkgs/archive/e9b51731911566bbf7e4895475a87fe06961de0b.tar.gz"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz"
|
"url": "https://github.com/NixOS/nixpkgs/archive/e9b51731911566bbf7e4895475a87fe06961de0b.tar.gz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1735286948,
|
"lastModified": 1735563628,
|
||||||
"narHash": "sha256-JMRV2RI58nV1UqLXqm+lcea1/dr92fYjWU5S+Rz3fmE=",
|
"narHash": "sha256-OnSAY7XDSx7CtDoqNh8jwVwh4xNL/2HaJxGjryLWzX8=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "31ac92f9628682b294026f0860e14587a09ffb4b",
|
"rev": "b134951a4c9f3c995fd7be05f3243f8ecd65d798",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -339,11 +339,11 @@
|
||||||
"treefmt-nix": "treefmt-nix"
|
"treefmt-nix": "treefmt-nix"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1730284601,
|
"lastModified": 1735164664,
|
||||||
"narHash": "sha256-eHYcKVLIRRv3J1vjmxurS6HVdGphB53qxUeAkylYrZY=",
|
"narHash": "sha256-DaWy+vo3c4TQ93tfLjUgcpPaSoDw4qV4t76Y3Mhu84I=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "poetry2nix",
|
"repo": "poetry2nix",
|
||||||
"rev": "43a898b4d76f7f3f70df77a2cc2d40096bc9d75e",
|
"rev": "1fb01e90771f762655be7e0e805516cd7fa4d58e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -364,7 +364,8 @@
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
"nixpkgs-stable": "nixpkgs-stable",
|
"nixpkgs-stable": "nixpkgs-stable",
|
||||||
"sops-nix": "sops-nix",
|
"sops-nix": "sops-nix",
|
||||||
"systems": "systems_2"
|
"systems": "systems_2",
|
||||||
|
"vscode-server": "vscode-server"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"sops-nix": {
|
"sops-nix": {
|
||||||
|
|
@ -374,11 +375,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1735468296,
|
"lastModified": 1737107480,
|
||||||
"narHash": "sha256-ZjUjbvS06jf4fElOF4ve8EHjbpbRVHHypStoY8HGzk8=",
|
"narHash": "sha256-GXUE9+FgxoZU8v0p6ilBJ8NH7k8nKmZjp/7dmMrCv3o=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "bcb8b65aa596866eb7e5c3e1a6cccbf5d1560b27",
|
"rev": "4c4fb93f18b9072c6fa1986221f9a3d7bf1fe4b6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -438,6 +439,29 @@
|
||||||
"repo": "treefmt-nix",
|
"repo": "treefmt-nix",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"vscode-server": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": [
|
||||||
|
"flake-utils"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1729422940,
|
||||||
|
"narHash": "sha256-DlvJv33ml5UTKgu4b0HauOfFIoDx6QXtbqUF3vWeRCY=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixos-vscode-server",
|
||||||
|
"rev": "8b6db451de46ecf9b4ab3d01ef76e59957ff549f",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixos-vscode-server",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": "root",
|
"root": "root",
|
||||||
|
|
|
||||||
32
flake.nix
32
flake.nix
|
|
@ -20,7 +20,6 @@
|
||||||
sops-nix = {
|
sops-nix = {
|
||||||
url = "github:Mic92/sops-nix";
|
url = "github:Mic92/sops-nix";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
inputs.nixpkgs-stable.follows = "nixpkgs-stable";
|
|
||||||
};
|
};
|
||||||
mailserver = {
|
mailserver = {
|
||||||
url = "gitlab:simple-nixos-mailserver/nixos-mailserver/master";
|
url = "gitlab:simple-nixos-mailserver/nixos-mailserver/master";
|
||||||
|
|
@ -32,6 +31,11 @@
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
inputs.flake-parts.follows = "flake-parts";
|
inputs.flake-parts.follows = "flake-parts";
|
||||||
};
|
};
|
||||||
|
vscode-server = {
|
||||||
|
url = "github:nix-community/nixos-vscode-server";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
inputs.flake-utils.follows = "flake-utils";
|
||||||
|
};
|
||||||
|
|
||||||
nix-cfg-extra.url = "git+https://git.lgmrszd.xyz/lgmrszd/nix-cfg-extra-public.git";
|
nix-cfg-extra.url = "git+https://git.lgmrszd.xyz/lgmrszd/nix-cfg-extra-public.git";
|
||||||
};
|
};
|
||||||
|
|
@ -43,21 +47,23 @@
|
||||||
sops-nix,
|
sops-nix,
|
||||||
mailserver,
|
mailserver,
|
||||||
authentik-nix,
|
authentik-nix,
|
||||||
|
vscode-server,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
# overlay-stable = final: prev: {
|
mylib = import ./lib;
|
||||||
# stable = import nixpkgs-stable {
|
overlay-stable = final: prev: {
|
||||||
# inherit system;
|
stable = import nixpkgs-stable {
|
||||||
# config.allowUnfree = true;
|
inherit system;
|
||||||
# };
|
config.allowUnfree = true;
|
||||||
# };
|
};
|
||||||
|
};
|
||||||
overlay-vaapiIntel = final: prev: {
|
overlay-vaapiIntel = final: prev: {
|
||||||
vaapiIntel = prev.vaapiIntel.override { enableHybridCodec = true; };
|
vaapiIntel = prev.vaapiIntel.override { enableHybridCodec = true; };
|
||||||
};
|
};
|
||||||
my-overlays = [
|
my-overlays = [
|
||||||
# overlay-stable
|
overlay-stable
|
||||||
overlay-vaapiIntel
|
overlay-vaapiIntel
|
||||||
];
|
];
|
||||||
inherit (inputs.nix-cfg-extra.lib) extra-data;
|
inherit (inputs.nix-cfg-extra.lib) extra-data;
|
||||||
|
|
@ -73,7 +79,7 @@
|
||||||
in
|
in
|
||||||
nixpkgs.lib.nixosSystem {
|
nixpkgs.lib.nixosSystem {
|
||||||
inherit system;
|
inherit system;
|
||||||
specialArgs = { inherit data; };
|
specialArgs = { inherit data; inherit mylib; };
|
||||||
modules = [
|
modules = [
|
||||||
{ nixpkgs.overlays = my-overlays; }
|
{ nixpkgs.overlays = my-overlays; }
|
||||||
./hosts/${host}/configuration.nix
|
./hosts/${host}/configuration.nix
|
||||||
|
|
@ -92,6 +98,7 @@
|
||||||
./hosts/${host}/home
|
./hosts/${host}/home
|
||||||
] ++ extra-home-modules;
|
] ++ extra-home-modules;
|
||||||
};
|
};
|
||||||
|
home-manager.extraSpecialArgs = { inherit mylib; };
|
||||||
}
|
}
|
||||||
])
|
])
|
||||||
;
|
;
|
||||||
|
|
@ -101,6 +108,13 @@
|
||||||
nixosConfigurations.lgm-nixos = mkHostConfig {
|
nixosConfigurations.lgm-nixos = mkHostConfig {
|
||||||
host = "laptop";
|
host = "laptop";
|
||||||
useHome = true;
|
useHome = true;
|
||||||
|
extraModules = [
|
||||||
|
vscode-server.nixosModules.default
|
||||||
|
({ config, pkgs, ... }: {
|
||||||
|
services.vscode-server.enable = true;
|
||||||
|
services.vscode-server.installPath = "$HOME/.vscodium-server";
|
||||||
|
})
|
||||||
|
];
|
||||||
};
|
};
|
||||||
nixosConfigurations.lgm-vps1 = mkHostConfig {
|
nixosConfigurations.lgm-vps1 = mkHostConfig {
|
||||||
host = "vps1";
|
host = "vps1";
|
||||||
|
|
|
||||||
|
|
@ -278,7 +278,7 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
services.postgresql = {
|
services.postgresql = {
|
||||||
enable = true;
|
enable = false;
|
||||||
ensureDatabases = [ "testdb" ];
|
ensureDatabases = [ "testdb" ];
|
||||||
ensureUsers = [ { name = "lgm"; } ];
|
ensureUsers = [ { name = "lgm"; } ];
|
||||||
authentication = pkgs.lib.mkOverride 10 ''
|
authentication = pkgs.lib.mkOverride 10 ''
|
||||||
|
|
@ -364,7 +364,7 @@ in
|
||||||
curl
|
curl
|
||||||
# more stuff
|
# more stuff
|
||||||
gnome-network-displays
|
gnome-network-displays
|
||||||
miraclecast
|
#miraclecast
|
||||||
parted
|
parted
|
||||||
exfatprogs
|
exfatprogs
|
||||||
gparted
|
gparted
|
||||||
|
|
@ -373,7 +373,7 @@ in
|
||||||
distrobox
|
distrobox
|
||||||
|
|
||||||
(let base = pkgs.appimageTools.defaultFhsEnvArgs; in
|
(let base = pkgs.appimageTools.defaultFhsEnvArgs; in
|
||||||
pkgs.buildFHSUserEnv (base // {
|
pkgs.buildFHSEnv (base // {
|
||||||
name = "fhs";
|
name = "fhs";
|
||||||
targetPkgs = pkgs: (
|
targetPkgs = pkgs: (
|
||||||
(base.targetPkgs pkgs) ++ [
|
(base.targetPkgs pkgs) ++ [
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
{ config, osConfig, pkgs, ... }:
|
{ config, osConfig, pkgs, mylib, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
home.username = "lgm";
|
home.username = "lgm";
|
||||||
|
|
@ -93,14 +93,20 @@
|
||||||
minetest
|
minetest
|
||||||
# dev
|
# dev
|
||||||
# Wrap idea-community to add libraries required for Minecraft Moddev
|
# Wrap idea-community to add libraries required for Minecraft Moddev
|
||||||
(symlinkJoin {
|
jetbrains.idea-community
|
||||||
name = "idea-community";
|
(mylib.appwrapper {
|
||||||
paths = [ jetbrains.idea-community ];
|
inherit pkgs;
|
||||||
buildInputs = [ makeWrapper ];
|
inputpkg = jetbrains.idea-community;
|
||||||
postBuild = ''
|
pkgsuffix = "mcdev-jbr17";
|
||||||
wrapProgram $out/bin/idea-community \
|
libraries = with pkgs; [libpulseaudio libGL glfw openal stdenv.cc.cc.lib];
|
||||||
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [libpulseaudio libGL glfw openal stdenv.cc.cc.lib]}"
|
extrapathpkgs = with pkgs; [jetbrains.jdk-no-jcef-17];
|
||||||
'';
|
})
|
||||||
|
(mylib.appwrapper {
|
||||||
|
inherit pkgs;
|
||||||
|
inputpkg = jetbrains.idea-community;
|
||||||
|
pkgsuffix = "mcdev-jbr21";
|
||||||
|
libraries = with pkgs; [libpulseaudio libGL glfw openal stdenv.cc.cc.lib];
|
||||||
|
extrapathpkgs = with pkgs; [jetbrains.jdk-no-jcef];
|
||||||
})
|
})
|
||||||
packwiz
|
packwiz
|
||||||
# vscodium # see programs.vscode
|
# vscodium # see programs.vscode
|
||||||
|
|
|
||||||
29
lib/default.nix
Normal file
29
lib/default.nix
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
{
|
||||||
|
appwrapper =
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
inputpkg,
|
||||||
|
pkgsuffix,
|
||||||
|
libraries,
|
||||||
|
extrapathpkgs
|
||||||
|
}: with pkgs; let
|
||||||
|
name = "${inputpkg.pname}-${pkgsuffix}";
|
||||||
|
in stdenv.mkDerivation {
|
||||||
|
inherit name;
|
||||||
|
inherit (inputpkg) version;
|
||||||
|
nativeBuildInputs = [ makeWrapper gnused ];
|
||||||
|
buildCommand = ''
|
||||||
|
mkdir -p $out/bin
|
||||||
|
mkdir -p $out/share/applications
|
||||||
|
cp ${inputpkg}/share/applications/${inputpkg.pname}.desktop $out/share/applications/${name}.desktop
|
||||||
|
makeWrapper ${inputpkg}/bin/${inputpkg.pname} $out/bin/${name} \
|
||||||
|
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath libraries}" \
|
||||||
|
--prefix PATH : "${lib.makeBinPath extrapathpkgs}"
|
||||||
|
substituteInPlace $out/share/applications/${name}.desktop \
|
||||||
|
--replace-fail "=${inputpkg.pname}" "=${name}"
|
||||||
|
sed -i -E "s/^Name=(.*)/Name=\1 (${pkgsuffix})/g" "$out/share/applications/${name}.desktop"
|
||||||
|
echo $out/bin/${name}
|
||||||
|
'';
|
||||||
|
dontBuild = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue