mirror of
https://codeberg.org/muon/home.git
synced 2025-12-06 08:07:45 +00:00
Merge branch 'main' of codeberg.org:muon/home
This commit is contained in:
commit
7597c9eb6c
18 changed files with 658 additions and 69 deletions
227
_sources/generated.json
Normal file
227
_sources/generated.json
Normal file
|
|
@ -0,0 +1,227 @@
|
|||
{
|
||||
"valheim.aaacrafting": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "valheim.aaacrafting",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"sha256": "sha256-cObo71X0wOzW3pZwAy7/dh7IRghu7EMPw7vWuoPWPlk=",
|
||||
"type": "tarball",
|
||||
"url": "https://thunderstore.io/package/download/Azumatt/AAA_Crafting/1.6.6/"
|
||||
},
|
||||
"version": "1.6.6"
|
||||
},
|
||||
"valheim.autostore": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "valheim.autostore",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"sha256": "sha256-ooghhDinwLTwEpTTQFj/brdb9Yj5aLGr+zYsjrsq9A0=",
|
||||
"type": "tarball",
|
||||
"url": "https://thunderstore.io/package/download/Azumatt/AzuAutoStore/3.0.8/"
|
||||
},
|
||||
"version": "3.0.8"
|
||||
},
|
||||
"valheim.betternetworking": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "valheim.betternetworking",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"sha256": "sha256-krgZ4B+MbIG/3CQUMkVIB/xrvvW1TbxB0cp1KwCTBN4=",
|
||||
"type": "tarball",
|
||||
"url": "https://thunderstore.io/package/download/CW_Jesse/BetterNetworking_Valheim/2.3.2/"
|
||||
},
|
||||
"version": "2.3.2"
|
||||
},
|
||||
"valheim.campsite": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "valheim.campsite",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"sha256": "sha256-r3HTjfNy7ehr6bsjddr6mTA7T8VVXRhDfulIodjc0jc=",
|
||||
"type": "tarball",
|
||||
"url": "https://thunderstore.io/package/download/OdinPlus/OdinCampsite/1.5.8/"
|
||||
},
|
||||
"version": "1.5.8"
|
||||
},
|
||||
"valheim.cartography": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "valheim.cartography",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"sha256": "sha256-u20BTiyF4e6QJ6OUK5migjdEpyzIGRDxLPJ3NdZNhvA=",
|
||||
"type": "tarball",
|
||||
"url": "https://thunderstore.io/package/download/Advize/CartographySkill/3.0.1/"
|
||||
},
|
||||
"version": "3.0.1"
|
||||
},
|
||||
"valheim.craftyboxes": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "valheim.craftyboxes",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"sha256": "sha256-8bvHmONHuc9K0cgT42+W4oxQ6MusAv8v0IIVMerdYSA=",
|
||||
"type": "tarball",
|
||||
"url": "https://thunderstore.io/package/download/Azumatt/AzuCraftyBoxes/1.8.4/"
|
||||
},
|
||||
"version": "1.8.4"
|
||||
},
|
||||
"valheim.extendedinv": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "valheim.extendedinv",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"sha256": "sha256-Xd7KdUm3c14iQBST31DAqs+bQF9hwYhUxE66o3lusrA=",
|
||||
"type": "tarball",
|
||||
"url": "https://thunderstore.io/package/download/Azumatt/AzuExtendedPlayerInventory/1.4.9/"
|
||||
},
|
||||
"version": "1.4.9"
|
||||
},
|
||||
"valheim.jotunn": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "valheim.jotunn",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"sha256": "sha256-Tso4/Sf4Evt5kpBrVqZrjE9Qs2MSZV04WB1w+uX+TX8=",
|
||||
"type": "tarball",
|
||||
"url": "https://thunderstore.io/package/download/ValheimModding/Jotunn/2.25.0/"
|
||||
},
|
||||
"version": "2.25.0"
|
||||
},
|
||||
"valheim.multiuserchest": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "valheim.multiuserchest",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"sha256": "sha256-PhXW6vBtEMnhE93RAALEucPU9q3VpdMrooFawWYXl2A=",
|
||||
"type": "tarball",
|
||||
"url": "https://thunderstore.io/package/download/MSchmoecker/MultiUserChest/0.6.1/"
|
||||
},
|
||||
"version": "0.6.1"
|
||||
},
|
||||
"valheim.quickteleport": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "valheim.quickteleport",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"sha256": "sha256-YSAVthV994do/atQA+wGfillXeSYFlLJK6VyMcQNVKE=",
|
||||
"type": "tarball",
|
||||
"url": "https://thunderstore.io/package/download/OdinPlus/QuickTeleport/1.1.0/"
|
||||
},
|
||||
"version": "1.1.0"
|
||||
},
|
||||
"valheim.reclaim": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "valheim.reclaim",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"sha256": "sha256-2cWdmspwid2h1ekfDFAngN25402pQnxZQhm4rX6BNhw=",
|
||||
"type": "tarball",
|
||||
"url": "https://thunderstore.io/package/download/Azumatt/Recycle_N_Reclaim/1.3.6/"
|
||||
},
|
||||
"version": "1.3.6"
|
||||
},
|
||||
"valheim.seedbed": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "valheim.seedbed",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"sha256": "sha256-wm2gGSyMQ6r3lLpbpXtZYG7s+fFYvw5nZGmSW54Ayt4=",
|
||||
"type": "tarball",
|
||||
"url": "https://thunderstore.io/package/download/blacks7ar/SeedBed/1.2.7/"
|
||||
},
|
||||
"version": "1.2.7"
|
||||
},
|
||||
"valheim.servercharacters": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "valheim.servercharacters",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"sha256": "sha256-aSB+G4nK3gf0yvMYWbICMFe3A0aCSr7nBH45G9ZdE9g=",
|
||||
"type": "tarball",
|
||||
"url": "https://thunderstore.io/package/download/Smoothbrain/ServerCharacters/1.4.16/"
|
||||
},
|
||||
"version": "1.4.16"
|
||||
},
|
||||
"valheim.smoothsave": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "valheim.smoothsave",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"sha256": "sha256-v5Zn+0O0au8VDzO+302oCE7Z9s87I3nq+eK2WbVVyFo=",
|
||||
"type": "tarball",
|
||||
"url": "https://thunderstore.io/package/download/Smoothbrain/SmoothSave/1.0.5/"
|
||||
},
|
||||
"version": "1.0.5"
|
||||
},
|
||||
"valheim.swim": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "valheim.swim",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"sha256": "sha256-QCEYnx0I6onWEAJy851wS0WdC35L18DyJL1wAAwHFaU=",
|
||||
"type": "tarball",
|
||||
"url": "https://thunderstore.io/package/download/blacks7ar/VikingsDoSwim/1.3.8/"
|
||||
},
|
||||
"version": "1.3.8"
|
||||
},
|
||||
"vesktop.micfix": {
|
||||
"cargoLocks": null,
|
||||
"date": null,
|
||||
"extract": null,
|
||||
"name": "vesktop.micfix",
|
||||
"passthru": null,
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"name": null,
|
||||
"sha256": "sha256-eNOKW43LQdJp2GFHqe3RxAhMwkNulrotIOMByosen84=",
|
||||
"type": "url",
|
||||
"url": "https://codeberg.org/muon/gists/raw/branch/main/micfix.patch"
|
||||
},
|
||||
"version": "1.0.1"
|
||||
}
|
||||
}
|
||||
132
_sources/generated.nix
Normal file
132
_sources/generated.nix
Normal file
|
|
@ -0,0 +1,132 @@
|
|||
# This file was generated by nvfetcher, please do not modify it manually.
|
||||
{ fetchgit, fetchurl, fetchFromGitHub, dockerTools }:
|
||||
{
|
||||
"valheim.aaacrafting" = {
|
||||
pname = "valheim.aaacrafting";
|
||||
version = "1.6.6";
|
||||
src = fetchTarball {
|
||||
url = "https://thunderstore.io/package/download/Azumatt/AAA_Crafting/1.6.6/";
|
||||
sha256 = "sha256-cObo71X0wOzW3pZwAy7/dh7IRghu7EMPw7vWuoPWPlk=";
|
||||
};
|
||||
};
|
||||
"valheim.autostore" = {
|
||||
pname = "valheim.autostore";
|
||||
version = "3.0.8";
|
||||
src = fetchTarball {
|
||||
url = "https://thunderstore.io/package/download/Azumatt/AzuAutoStore/3.0.8/";
|
||||
sha256 = "sha256-ooghhDinwLTwEpTTQFj/brdb9Yj5aLGr+zYsjrsq9A0=";
|
||||
};
|
||||
};
|
||||
"valheim.betternetworking" = {
|
||||
pname = "valheim.betternetworking";
|
||||
version = "2.3.2";
|
||||
src = fetchTarball {
|
||||
url = "https://thunderstore.io/package/download/CW_Jesse/BetterNetworking_Valheim/2.3.2/";
|
||||
sha256 = "sha256-krgZ4B+MbIG/3CQUMkVIB/xrvvW1TbxB0cp1KwCTBN4=";
|
||||
};
|
||||
};
|
||||
"valheim.campsite" = {
|
||||
pname = "valheim.campsite";
|
||||
version = "1.5.8";
|
||||
src = fetchTarball {
|
||||
url = "https://thunderstore.io/package/download/OdinPlus/OdinCampsite/1.5.8/";
|
||||
sha256 = "sha256-r3HTjfNy7ehr6bsjddr6mTA7T8VVXRhDfulIodjc0jc=";
|
||||
};
|
||||
};
|
||||
"valheim.cartography" = {
|
||||
pname = "valheim.cartography";
|
||||
version = "3.0.1";
|
||||
src = fetchTarball {
|
||||
url = "https://thunderstore.io/package/download/Advize/CartographySkill/3.0.1/";
|
||||
sha256 = "sha256-u20BTiyF4e6QJ6OUK5migjdEpyzIGRDxLPJ3NdZNhvA=";
|
||||
};
|
||||
};
|
||||
"valheim.craftyboxes" = {
|
||||
pname = "valheim.craftyboxes";
|
||||
version = "1.8.4";
|
||||
src = fetchTarball {
|
||||
url = "https://thunderstore.io/package/download/Azumatt/AzuCraftyBoxes/1.8.4/";
|
||||
sha256 = "sha256-8bvHmONHuc9K0cgT42+W4oxQ6MusAv8v0IIVMerdYSA=";
|
||||
};
|
||||
};
|
||||
"valheim.extendedinv" = {
|
||||
pname = "valheim.extendedinv";
|
||||
version = "1.4.9";
|
||||
src = fetchTarball {
|
||||
url = "https://thunderstore.io/package/download/Azumatt/AzuExtendedPlayerInventory/1.4.9/";
|
||||
sha256 = "sha256-Xd7KdUm3c14iQBST31DAqs+bQF9hwYhUxE66o3lusrA=";
|
||||
};
|
||||
};
|
||||
"valheim.jotunn" = {
|
||||
pname = "valheim.jotunn";
|
||||
version = "2.25.0";
|
||||
src = fetchTarball {
|
||||
url = "https://thunderstore.io/package/download/ValheimModding/Jotunn/2.25.0/";
|
||||
sha256 = "sha256-Tso4/Sf4Evt5kpBrVqZrjE9Qs2MSZV04WB1w+uX+TX8=";
|
||||
};
|
||||
};
|
||||
"valheim.multiuserchest" = {
|
||||
pname = "valheim.multiuserchest";
|
||||
version = "0.6.1";
|
||||
src = fetchTarball {
|
||||
url = "https://thunderstore.io/package/download/MSchmoecker/MultiUserChest/0.6.1/";
|
||||
sha256 = "sha256-PhXW6vBtEMnhE93RAALEucPU9q3VpdMrooFawWYXl2A=";
|
||||
};
|
||||
};
|
||||
"valheim.quickteleport" = {
|
||||
pname = "valheim.quickteleport";
|
||||
version = "1.1.0";
|
||||
src = fetchTarball {
|
||||
url = "https://thunderstore.io/package/download/OdinPlus/QuickTeleport/1.1.0/";
|
||||
sha256 = "sha256-YSAVthV994do/atQA+wGfillXeSYFlLJK6VyMcQNVKE=";
|
||||
};
|
||||
};
|
||||
"valheim.reclaim" = {
|
||||
pname = "valheim.reclaim";
|
||||
version = "1.3.6";
|
||||
src = fetchTarball {
|
||||
url = "https://thunderstore.io/package/download/Azumatt/Recycle_N_Reclaim/1.3.6/";
|
||||
sha256 = "sha256-2cWdmspwid2h1ekfDFAngN25402pQnxZQhm4rX6BNhw=";
|
||||
};
|
||||
};
|
||||
"valheim.seedbed" = {
|
||||
pname = "valheim.seedbed";
|
||||
version = "1.2.7";
|
||||
src = fetchTarball {
|
||||
url = "https://thunderstore.io/package/download/blacks7ar/SeedBed/1.2.7/";
|
||||
sha256 = "sha256-wm2gGSyMQ6r3lLpbpXtZYG7s+fFYvw5nZGmSW54Ayt4=";
|
||||
};
|
||||
};
|
||||
"valheim.servercharacters" = {
|
||||
pname = "valheim.servercharacters";
|
||||
version = "1.4.16";
|
||||
src = fetchTarball {
|
||||
url = "https://thunderstore.io/package/download/Smoothbrain/ServerCharacters/1.4.16/";
|
||||
sha256 = "sha256-aSB+G4nK3gf0yvMYWbICMFe3A0aCSr7nBH45G9ZdE9g=";
|
||||
};
|
||||
};
|
||||
"valheim.smoothsave" = {
|
||||
pname = "valheim.smoothsave";
|
||||
version = "1.0.5";
|
||||
src = fetchTarball {
|
||||
url = "https://thunderstore.io/package/download/Smoothbrain/SmoothSave/1.0.5/";
|
||||
sha256 = "sha256-v5Zn+0O0au8VDzO+302oCE7Z9s87I3nq+eK2WbVVyFo=";
|
||||
};
|
||||
};
|
||||
"valheim.swim" = {
|
||||
pname = "valheim.swim";
|
||||
version = "1.3.8";
|
||||
src = fetchTarball {
|
||||
url = "https://thunderstore.io/package/download/blacks7ar/VikingsDoSwim/1.3.8/";
|
||||
sha256 = "sha256-QCEYnx0I6onWEAJy851wS0WdC35L18DyJL1wAAwHFaU=";
|
||||
};
|
||||
};
|
||||
"vesktop.micfix" = {
|
||||
pname = "vesktop.micfix";
|
||||
version = "1.0.1";
|
||||
src = fetchurl {
|
||||
url = "https://codeberg.org/muon/gists/raw/branch/main/micfix.patch";
|
||||
sha256 = "sha256-eNOKW43LQdJp2GFHqe3RxAhMwkNulrotIOMByosen84=";
|
||||
};
|
||||
};
|
||||
}
|
||||
45
flake.lock
generated
45
flake.lock
generated
|
|
@ -448,7 +448,8 @@
|
|||
"nix-minecraft": "nix-minecraft",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"sops-nix": "sops-nix",
|
||||
"stylix": "stylix"
|
||||
"stylix": "stylix",
|
||||
"valheim-server": "valheim-server"
|
||||
}
|
||||
},
|
||||
"sops-nix": {
|
||||
|
|
@ -471,6 +472,27 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"steam-fetcher": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"valheim-server",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1714795926,
|
||||
"narHash": "sha256-PkgC9jqoN6cJ8XYzTA2PlrWs7aPJkM3BGiTxNqax0cA=",
|
||||
"owner": "nix-community",
|
||||
"repo": "steam-fetcher",
|
||||
"rev": "12f66eafb7862d91b3e30c14035f96a21941bd9c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "steam-fetcher",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"stylix": {
|
||||
"inputs": {
|
||||
"base16": "base16",
|
||||
|
|
@ -638,6 +660,27 @@
|
|||
"repo": "treefmt-nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"valheim-server": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"steam-fetcher": "steam-fetcher"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1744964760,
|
||||
"narHash": "sha256-VSy6SZqDDMqrFlf6gw3xA/u3WEu3thjGOh3akIJEWW4=",
|
||||
"owner": "kmjayadeep",
|
||||
"repo": "valheim-server-flake",
|
||||
"rev": "5b95198dca8af8287108b610432d88aef5fa29fc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "kmjayadeep",
|
||||
"repo": "valheim-server-flake",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
|
|
|||
|
|
@ -11,6 +11,9 @@
|
|||
stylix.url = "github:danth/stylix";
|
||||
nix-minecraft.url = "git+https://codeberg.org/nix-astral/nix-minecraft.git";
|
||||
nix-alien.url = "github:thiagokokada/nix-alien";
|
||||
|
||||
valheim-server.url = "github:kmjayadeep/valheim-server-flake";
|
||||
valheim-server.inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
outputs = inputs@{ nixpkgs, home-manager, stylix, ... }:
|
||||
|
|
@ -19,7 +22,11 @@
|
|||
|
||||
pkgs = import inputs.nixpkgs { inherit system; };
|
||||
|
||||
utils = import ./utils.nix { inherit inputs system; };
|
||||
sources = import ./_sources/generated.nix {
|
||||
inherit (pkgs) fetchurl fetchgit fetchFromGitHub dockerTools;
|
||||
};
|
||||
|
||||
utils = import ./utils.nix { inherit inputs system sources; };
|
||||
in {
|
||||
nixosConfigurations = {
|
||||
# desktop
|
||||
|
|
|
|||
|
|
@ -36,18 +36,17 @@ in {
|
|||
|
||||
mods.server.grav.enable = true;
|
||||
mods.server.homebox.enable = true;
|
||||
mods.server.share.enable = true;
|
||||
mods.server.share.enable = false;
|
||||
mods.server.vault.enable = true;
|
||||
mods.server.git.enable = true;
|
||||
mods.server.cal.enable = true;
|
||||
mods.server.chat.enable = true;
|
||||
mods.server.ntfy.enable = true;
|
||||
mods.server.lemmy.enable = true;
|
||||
|
||||
mods.server.dash.enable = true;
|
||||
mods.server.dash.enable = false;
|
||||
mods.server.nginx.ports.dash = 3009;
|
||||
|
||||
mods.server.vrising.enable = true;
|
||||
|
||||
mods.tailscale.enable = true;
|
||||
mods.wireguard.id = 3;
|
||||
|
||||
|
|
@ -60,6 +59,9 @@ in {
|
|||
mods.unfree.steam.enable = false;
|
||||
mods.unfree.nvidia.enable = false;
|
||||
mods.unfree.minecraft.enable = false;
|
||||
mods.unfree.valheim.enable = true;
|
||||
|
||||
mods.server.vrising.enable = false;
|
||||
|
||||
# Hardware preferences
|
||||
|
||||
|
|
@ -124,5 +126,5 @@ in {
|
|||
# hardware.nvidia.powerManagement.enable = false;
|
||||
|
||||
# Version of first install
|
||||
system.stateVersion = "23.05";
|
||||
system.stateVersion = "23.11";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,18 +1,32 @@
|
|||
{ pkgs, lib, config, ... }: {
|
||||
mods.server.nginx.ports = {
|
||||
photos = 3001;
|
||||
homebox = 3002;
|
||||
# immich-machine-learning = 3003;
|
||||
share = 3004;
|
||||
vault = 3005;
|
||||
git = 3006;
|
||||
cal = 3007;
|
||||
chat = 3008;
|
||||
# dash = 3009;
|
||||
ntfy = 3010;
|
||||
options.mods.server = with lib; {
|
||||
local.ports = mkOption {
|
||||
type = types.attrsOf (types.ints.u16);
|
||||
default = { };
|
||||
};
|
||||
};
|
||||
config = {
|
||||
mods.server.nginx.ports = {
|
||||
photos = 3001;
|
||||
homebox = 3002;
|
||||
# immich-machine-learning = 3003;
|
||||
share = 3004;
|
||||
vault = 3005;
|
||||
git = 3006;
|
||||
cal = 3007;
|
||||
chat = 3008;
|
||||
# dash = 3009;
|
||||
ntfy = 3010;
|
||||
|
||||
search = 8081;
|
||||
videos = 8082;
|
||||
reddit = 8083;
|
||||
search = 8081;
|
||||
videos = 8082;
|
||||
reddit = 8083;
|
||||
};
|
||||
mods.server.local.ports = {
|
||||
# grav = 5001
|
||||
lemmy-api = 5002;
|
||||
lemmy-ui = 5003;
|
||||
pict-rs = 5004;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,12 +1,7 @@
|
|||
{ pkgs, lib, config, ... }:
|
||||
{ pkgs, lib, config, sources, ... }:
|
||||
let
|
||||
vesktop-nogain = (pkgs.vesktop.overrideAttrs (previousAttrs: {
|
||||
patches = previousAttrs.patches ++ [
|
||||
(builtins.fetchurl {
|
||||
url = "https://codeberg.org/muon/gists/raw/branch/main/micfix.patch";
|
||||
sha256 = "1klz3s5wl0g340nvm5kf8g14q264s7nsjiv1v1lx4hfbimdqmlvq";
|
||||
})
|
||||
];
|
||||
patches = previousAttrs.patches ++ [ sources."vesktop.micfix".src ];
|
||||
}));
|
||||
in {
|
||||
options.mods.social.enable =
|
||||
|
|
|
|||
|
|
@ -1,29 +1,4 @@
|
|||
{ pkgs, lib, config, ... }:
|
||||
let
|
||||
wgsl_analyzer = with pkgs;
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "wgsl_analyzer";
|
||||
version = "0.8.1";
|
||||
|
||||
src = fetchurl {
|
||||
url =
|
||||
"https://github.com/wgsl-analyzer/wgsl-analyzer/releases/download/v${version}/${pname}-linux-x64";
|
||||
hash = "sha256-WRc9fHUw9/KHD5BzUX3nd+0sRkc7i8axsXhHUZFOUeY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoPatchelfHook ];
|
||||
|
||||
buildInputs = [ openssl zlib ];
|
||||
|
||||
sourceRoot = ".";
|
||||
phases = [ "installPhase" "patchPhase" ];
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp $src $out/bin/${pname}
|
||||
chmod +x $out/bin/${pname}
|
||||
'';
|
||||
};
|
||||
in {
|
||||
{ pkgs, lib, config, ... }: {
|
||||
options.mods.terminal.development.enable =
|
||||
lib.mkEnableOption "enables cli editor";
|
||||
|
||||
|
|
@ -38,7 +13,7 @@ in {
|
|||
|
||||
# Shaders
|
||||
glsl_analyzer
|
||||
# wgsl_analyzer
|
||||
wgsl-analyzer
|
||||
|
||||
# Python
|
||||
black
|
||||
|
|
@ -79,7 +54,7 @@ in {
|
|||
|
||||
languages.language-server = {
|
||||
glsl.command = "${pkgs.glsl_analyzer}/bin/glsl_analyzer";
|
||||
wgsl.command = "${wgsl_analyzer}/bin/wgsl_analyzer";
|
||||
wgsl.command = "${pkgs.wgsl-analyzer}/bin/wgsl_analyzer";
|
||||
};
|
||||
|
||||
languages.language = [
|
||||
|
|
|
|||
|
|
@ -22,5 +22,6 @@
|
|||
./dash.nix
|
||||
./nvr.nix
|
||||
./ntfy.nix
|
||||
./lemmy.nix
|
||||
];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ let
|
|||
generators mapAttrs mkDefault mkEnableOption mkIf mkPackageOption mkOption
|
||||
types;
|
||||
|
||||
cfg = config.services.grav;
|
||||
cfg = config.mods.services.grav;
|
||||
|
||||
# yamlFormat = pkgs.formats.yaml { };
|
||||
|
||||
|
|
|
|||
87
modules/nixos/server/lemmy.nix
Normal file
87
modules/nixos/server/lemmy.nix
Normal file
|
|
@ -0,0 +1,87 @@
|
|||
{ pkgs, lib, config, ... }:
|
||||
let
|
||||
inherit (lib) mkEnableOption;
|
||||
cfg = config.mods.server.lemmy;
|
||||
port = config.mods.server.local.ports.lemmy-api;
|
||||
port-ui = config.mods.server.local.ports.lemmy-ui;
|
||||
port-pict = config.mods.server.local.ports.pict-rs;
|
||||
hostname = "lemmy.muon.host";
|
||||
bind = "0.0.0.0";
|
||||
in {
|
||||
options.mods.server.lemmy = {
|
||||
enable = mkEnableOption {
|
||||
default = false;
|
||||
description = "enables lemmy engine server";
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
services.lemmy = lib.mkIf cfg.enable {
|
||||
enable = true;
|
||||
|
||||
ui.port = port-ui;
|
||||
|
||||
settings = { inherit port hostname bind; };
|
||||
|
||||
database.createLocally = true;
|
||||
};
|
||||
|
||||
systemd.services.lemmy-ui = lib.mkIf cfg.enable {
|
||||
environment = lib.mkForce {
|
||||
LEMMY_UI_HOST = "${bind}:${toString port-ui}";
|
||||
LEMMY_UI_LEMMY_INTERNAL_HOST = "${bind}:${toString port}";
|
||||
LEMMY_UI_LEMMY_EXTERNAL_HOST = hostname;
|
||||
LEMMY_UI_HTTPS = "false";
|
||||
NODE_ENV = "production";
|
||||
};
|
||||
};
|
||||
|
||||
services.pict-rs = lib.mkIf cfg.enable {
|
||||
enable = true;
|
||||
port = port-pict;
|
||||
address = "0.0.0.0";
|
||||
};
|
||||
|
||||
# services.nginx.virtualHosts."${hostname}" = let
|
||||
# ui = "http://10.0.0.3:${toString port-ui}";
|
||||
# backend = "http://10.0.0.3:${toString port}";
|
||||
# in lib.mkIf config.mods.server.nginx.enable {
|
||||
# forceSSL = true;
|
||||
# enableACME = true;
|
||||
# locations = {
|
||||
# "~ ^/(api|pictrs|feeds|nodeinfo|.well-known)" = {
|
||||
# # backend requests
|
||||
# proxyPass = backend;
|
||||
# proxyWebsockets = true;
|
||||
# recommendedProxySettings = true;
|
||||
# };
|
||||
# "/" = {
|
||||
# # mixed frontend and backend requests, based on the request headers
|
||||
# extraConfig = ''
|
||||
# set $proxpass "${ui}";
|
||||
# if ($http_accept = "application/activity+json") {
|
||||
# set $proxpass "${backend}";
|
||||
# }
|
||||
# if ($http_accept = "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\"") {
|
||||
# set $proxpass "${backend}";
|
||||
# }
|
||||
# if ($request_method = POST) {
|
||||
# set $proxpass "${backend}";
|
||||
# }
|
||||
|
||||
# # Cuts off the trailing slash on URLs to make them valid
|
||||
# rewrite ^(.+)/+$ $1 permanent;
|
||||
|
||||
# proxy_pass $proxpass;
|
||||
# # Proxied `Host` header is required to validate ActivityPub HTTP signatures for incoming events.
|
||||
# # The other headers are optional, for the sake of better log data.
|
||||
# proxy_set_header X-Real-IP $remote_addr;
|
||||
# proxy_set_header Host $host;
|
||||
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
# '';
|
||||
# };
|
||||
# };
|
||||
# };
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -14,5 +14,8 @@ in with lib; {
|
|||
owner = "radicale";
|
||||
group = "radicale";
|
||||
};
|
||||
secrets.lemmy-password = mkIf cfg.server.lemmy.enable {
|
||||
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,8 @@
|
|||
muon-password: ENC[AES256_GCM,data:K2ifHvs8hQXK4//FXf3vfDliiklx0dTn8gpirTBT07Q1XIMJR1Vgn/f1uo62bu4a/bknAR5gEBfd/cSRUTdBBxd7Lec2k3fxQg==,iv:j1JTzyfjcKEqh+PK5tyCWBMV7MpwvIG9MJ9eiajksxM=,tag:ZcSEVBW1UOCvE40yIsaBFQ==,type:str]
|
||||
zipline-secret: ENC[AES256_GCM,data:cdqPWBUg6FZkBrUYNkm7imntc2hXUAxDjd1Ymr3j9y763cbXDYEu44wJF0W1Ng==,iv:sdjV4SkRCTO04AvXqtoPOPyASlitrS4nS+M0Z2lZURA=,tag:gNcOdJvg9PtrRlm84CdbsQ==,type:str]
|
||||
htpasswd: ENC[AES256_GCM,data:YbDNElLsvRtC1ezgxIYI6U+ZZES1Lr6BXamNdbxQibj0NfC9oobP7ed8MQpFTlhhJZx5I5Xa6XtFrvjdo13NtdU=,iv:P98P1XxtdCp7+TuAwKybzjcWGF1OQtnAuQs4ObZct7o=,tag:gXrQaBxUvuVSB5yYhWcihA==,type:str]
|
||||
lemmy-password: ENC[AES256_GCM,data:VVPbhW6l+VYSUfmlySPSwITwonKQHaIY,iv:XcwM7Sz2novn3cHt4EK5HAZkYVPfPqwIcGtTWMQPByg=,tag:0b8epk98eTcx7b57yGcjpw==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
azure_kv: []
|
||||
hc_vault: []
|
||||
age:
|
||||
- recipient: age1m97a3eptxwpdd7h5kkqe9gkmhg6rquc64qjmlsfqfhfqv8q72crqrylhgc
|
||||
enc: |
|
||||
|
|
@ -34,8 +31,7 @@ sops:
|
|||
cThxTVpmcEMrcG9Lczd3dkdyQ0paSHMKUfkx9jh7zIqBkUjxaH3dVKvNJG3Mipts
|
||||
OjmJ5aVVIR5U8MhgSgECb22mGlOgW8SU/x4gxcWgafZwbv2vbON6OA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-01-25T15:55:13Z"
|
||||
mac: ENC[AES256_GCM,data:M/IPR1hqkiLHqt/fgmZ+HezGrmAKbu0LJJkMMr0895neP6WB571AQ29+VLRm+7jDp9qjKgelwDOU/t/UdUgKP1hSK0cOcHR1B7KecHVCFKHNdfaD70xzA4PUQpTFIc6bHyLSMeQAwoEDKkW3inuKwD6k1RVQmOOUMT9shs6Oe48=,iv:I6XbpfScaJwZPXyVkvreKL2tDwgt7p8Eub/pSD6Bm8g=,tag:6wdBYdoOgf9iX0cGT63v3Q==,type:str]
|
||||
pgp: []
|
||||
lastmodified: "2025-05-17T09:59:07Z"
|
||||
mac: ENC[AES256_GCM,data:ewURL+W/C0XnEJiXipeSXr5F5hItD3LPMdThjBg1ObY/N7Tb28Tm18vCOpbr37H0gDWnDjNu2rzVN3+XjrbVzXe7n4YUzN2sZa2zZEJhHDTyQWdiPtMpApXeu1Va621EQymDyTm7N2hJz3MvadiWYIv/ft685FPY7qRX7pluUFc=,iv:FIoClE4hX8+PBHY5LOFeSowxSrAHIaDPFblD6Pkakes=,tag:FepKajXRusCbLTlJGPKm6g==,type:str]
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.9.3
|
||||
version: 3.10.2
|
||||
|
|
|
|||
|
|
@ -4,10 +4,10 @@ let
|
|||
mkPackages = mod: if cfg.${mod}.enable then cfg.${mod}.packages else [ ];
|
||||
|
||||
in {
|
||||
imports = [ ./steam.nix ./nvidia.nix ./minecraft.nix ];
|
||||
imports = [ ./steam.nix ./nvidia.nix ./minecraft.nix ./valheim.nix ];
|
||||
|
||||
nixpkgs.config.allowUnfreePredicate = pkg:
|
||||
builtins.elem (lib.getName pkg) ((mkPackages "steam")
|
||||
++ (mkPackages "minecraft") ++ (mkPackages "nvidia")
|
||||
++ [ "stremio-shell" "stremio-server" ]);
|
||||
++ (mkPackages "valheim") ++ [ "stremio-shell" "stremio-server" ]);
|
||||
}
|
||||
|
|
|
|||
27
modules/nixos/unfree/valheim.nix
Normal file
27
modules/nixos/unfree/valheim.nix
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
{ pkgs, lib, config, inputs, sources, ... }: {
|
||||
options.mods.unfree.valheim = {
|
||||
enable = lib.mkEnableOption {
|
||||
default = false;
|
||||
description = "enables valheim server";
|
||||
};
|
||||
packages = lib.mkOption {
|
||||
default = [ "valheim-server" "steamworks-sdk-redist" ];
|
||||
description = "unfree packages";
|
||||
};
|
||||
};
|
||||
|
||||
imports = [ inputs.valheim-server.nixosModules.default ];
|
||||
|
||||
config = lib.mkIf config.mods.unfree.valheim.enable {
|
||||
services.valheim = {
|
||||
enable = true;
|
||||
serverName = "Smorld";
|
||||
worldName = "Smorld";
|
||||
openFirewall = true;
|
||||
password = "notbeempty";
|
||||
bepinexMods = lib.mapAttrsToList (name: value: value.src)
|
||||
(lib.attrsets.filterAttrs (n: v: lib.strings.hasPrefix "valheim." n)
|
||||
sources);
|
||||
};
|
||||
};
|
||||
}
|
||||
79
nvfetcher.toml
Normal file
79
nvfetcher.toml
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
["vesktop.micfix"]
|
||||
src.manual = "1.0.1"
|
||||
fetch.url = "https://codeberg.org/muon/gists/raw/branch/main/micfix.patch"
|
||||
|
||||
["valheim.jotunn"]
|
||||
src.webpage = "https://thunderstore.io/c/valheim/p/ValheimModding/Jotunn/"
|
||||
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
|
||||
fetch.tarball = "https://thunderstore.io/package/download/ValheimModding/Jotunn/$ver/"
|
||||
|
||||
["valheim.craftyboxes"]
|
||||
src.webpage = "https://thunderstore.io/c/valheim/p/Azumatt/AzuCraftyBoxes/"
|
||||
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
|
||||
fetch.tarball = "https://thunderstore.io/package/download/Azumatt/AzuCraftyBoxes/$ver/"
|
||||
|
||||
["valheim.autostore"]
|
||||
src.webpage = "https://thunderstore.io/c/valheim/p/Azumatt/AzuAutoStore/"
|
||||
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
|
||||
fetch.tarball = "https://thunderstore.io/package/download/Azumatt/AzuAutoStore/$ver/"
|
||||
|
||||
["valheim.extendedinv"]
|
||||
src.webpage = "https://thunderstore.io/c/valheim/p/Azumatt/AzuExtendedPlayerInventory/"
|
||||
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
|
||||
fetch.tarball = "https://thunderstore.io/package/download/Azumatt/AzuExtendedPlayerInventory/$ver/"
|
||||
|
||||
["valheim.reclaim"]
|
||||
src.webpage = "https://thunderstore.io/c/valheim/p/Azumatt/Recycle_N_Reclaim/"
|
||||
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
|
||||
fetch.tarball = "https://thunderstore.io/package/download/Azumatt/Recycle_N_Reclaim/$ver/"
|
||||
|
||||
["valheim.aaacrafting"]
|
||||
src.webpage = "https://thunderstore.io/c/valheim/p/Azumatt/AAA_Crafting/"
|
||||
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
|
||||
fetch.tarball = "https://thunderstore.io/package/download/Azumatt/AAA_Crafting/$ver/"
|
||||
|
||||
["valheim.campsite"]
|
||||
src.webpage = "https://thunderstore.io/c/valheim/p/OdinPlus/OdinCampsite/"
|
||||
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
|
||||
fetch.tarball = "https://thunderstore.io/package/download/OdinPlus/OdinCampsite/$ver/"
|
||||
|
||||
["valheim.quickteleport"]
|
||||
src.webpage = "https://thunderstore.io/c/valheim/p/OdinPlus/QuickTeleport/"
|
||||
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
|
||||
fetch.tarball = "https://thunderstore.io/package/download/OdinPlus/QuickTeleport/$ver/"
|
||||
|
||||
["valheim.multiuserchest"]
|
||||
src.webpage = "https://thunderstore.io/c/valheim/p/MSchmoecker/MultiUserChest/"
|
||||
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
|
||||
fetch.tarball = "https://thunderstore.io/package/download/MSchmoecker/MultiUserChest/$ver/"
|
||||
|
||||
["valheim.cartography"]
|
||||
src.webpage = "https://thunderstore.io/c/valheim/p/Advize/CartographySkill/"
|
||||
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
|
||||
fetch.tarball = "https://thunderstore.io/package/download/Advize/CartographySkill/$ver/"
|
||||
|
||||
["valheim.swim"]
|
||||
src.webpage = "https://thunderstore.io/c/valheim/p/blacks7ar/VikingsDoSwim/"
|
||||
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
|
||||
fetch.tarball = "https://thunderstore.io/package/download/blacks7ar/VikingsDoSwim/$ver/"
|
||||
|
||||
["valheim.seedbed"]
|
||||
src.webpage = "https://thunderstore.io/c/valheim/p/blacks7ar/SeedBed/"
|
||||
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
|
||||
fetch.tarball = "https://thunderstore.io/package/download/blacks7ar/SeedBed/$ver/"
|
||||
|
||||
["valheim.servercharacters"]
|
||||
src.webpage = "https://thunderstore.io/c/valheim/p/Smoothbrain/ServerCharacters/"
|
||||
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
|
||||
fetch.tarball = "https://thunderstore.io/package/download/Smoothbrain/ServerCharacters/$ver/"
|
||||
|
||||
["valheim.smoothsave"]
|
||||
src.webpage = "https://thunderstore.io/c/valheim/p/Smoothbrain/SmoothSave/"
|
||||
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
|
||||
fetch.tarball = "https://thunderstore.io/package/download/Smoothbrain/SmoothSave/$ver/"
|
||||
|
||||
["valheim.betternetworking"]
|
||||
src.webpage = "https://thunderstore.io/c/valheim/p/CW_Jesse/BetterNetworking_Valheim/"
|
||||
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
|
||||
fetch.tarball = "https://thunderstore.io/package/download/CW_Jesse/BetterNetworking_Valheim/$ver/"
|
||||
|
||||
|
|
@ -8,6 +8,7 @@
|
|||
|
||||
sops
|
||||
age
|
||||
nvfetcher
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
{ inputs, system, ... }: {
|
||||
{ inputs, system, sources, ... }: {
|
||||
mkHost = host:
|
||||
inputs.nixpkgs.lib.nixosSystem {
|
||||
specialArgs = { inherit inputs system; };
|
||||
specialArgs = { inherit inputs system sources; };
|
||||
|
||||
modules = [
|
||||
host
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue