update config

This commit is contained in:
Daniel Bulant 2026-06-15 00:27:05 +02:00
parent cfb5abdb8f
commit a2f852ac18
No known key found for this signature in database
5 changed files with 426 additions and 23 deletions

View file

@ -485,6 +485,42 @@
"type": "github"
}
},
"flake-parts_4": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib_3"
},
"locked": {
"lastModified": 1775087534,
"narHash": "sha256-91qqW8lhL7TLwgQWijoGBbiD4t7/q75KTi8NxjVmSmA=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "3107b77cd68437b9a76194f0f7f9c55f2329ca5b",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_5": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib_4"
},
"locked": {
"lastModified": 1775087534,
"narHash": "sha256-91qqW8lhL7TLwgQWijoGBbiD4t7/q75KTi8NxjVmSmA=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "3107b77cd68437b9a76194f0f7f9c55f2329ca5b",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-utils": {
"inputs": {
"systems": "systems"
@ -551,6 +587,45 @@
"type": "github"
}
},
"framewalk": {
"inputs": {
"flake-parts": "flake-parts_5",
"nixpkgs": [
"reenv",
"nixpkgs"
],
"rust-overlay": "rust-overlay_2"
},
"locked": {
"lastModified": 1776613820,
"narHash": "sha256-o/I21Gqvo/NI/wJPAxrdyp9aL6kalPkzKBr2q/OrDDo=",
"owner": "levigross",
"repo": "framewalk",
"rev": "2d11eb631f1e3487ffe4a0a0c84dfd1e2ddc49f8",
"type": "github"
},
"original": {
"owner": "levigross",
"repo": "framewalk",
"type": "github"
}
},
"ghidra-mcp": {
"flake": false,
"locked": {
"lastModified": 1776282734,
"narHash": "sha256-8djViBp/6wvW17+1vPvP+ULoZWlm8tgH8aNkv3Aom3s=",
"owner": "bethington",
"repo": "ghidra-mcp",
"rev": "d53d36afafeec4914499fae60a71fed84ea72837",
"type": "github"
},
"original": {
"owner": "bethington",
"repo": "ghidra-mcp",
"type": "github"
}
},
"git-hooks": {
"inputs": {
"flake-compat": "flake-compat_2",
@ -1144,6 +1219,27 @@
"type": "github"
}
},
"mcp-servers-nix": {
"inputs": {
"nixpkgs": [
"reenv",
"nixpkgs"
]
},
"locked": {
"lastModified": 1775901136,
"narHash": "sha256-5J+54o9YDgAeY1iYuSN7kVt0cTB90x4zO5whqdPg3Tw=",
"owner": "natsukium",
"repo": "mcp-servers-nix",
"rev": "59335c80be7b719df7b6e6473f14424b1e6647df",
"type": "github"
},
"original": {
"owner": "natsukium",
"repo": "mcp-servers-nix",
"type": "github"
}
},
"niri": {
"inputs": {
"niri-stable": "niri-stable",
@ -1379,6 +1475,36 @@
"type": "github"
}
},
"nixpkgs-lib_3": {
"locked": {
"lastModified": 1774748309,
"narHash": "sha256-+U7gF3qxzwD5TZuANzZPeJTZRHS29OFQgkQ2kiTJBIQ=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "333c4e0545a6da976206c74db8773a1645b5870a",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixpkgs.lib",
"type": "github"
}
},
"nixpkgs-lib_4": {
"locked": {
"lastModified": 1774748309,
"narHash": "sha256-+U7gF3qxzwD5TZuANzZPeJTZRHS29OFQgkQ2kiTJBIQ=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "333c4e0545a6da976206c74db8773a1645b5870a",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixpkgs.lib",
"type": "github"
}
},
"nixpkgs-regression": {
"locked": {
"lastModified": 1643052045,
@ -1395,6 +1521,22 @@
"type": "github"
}
},
"nixpkgs-retdec": {
"locked": {
"lastModified": 1767313136,
"narHash": "sha256-16KkgfdYqjaeRGBaYsNrhPRRENs0qzkQVUooNHtoy2w=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "ac62194c3917d5f474c1a844b6fd6da2db95077d",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-25.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1779796641,
@ -1735,6 +1877,84 @@
"type": "github"
}
},
"pwndbg": {
"inputs": {
"nixpkgs": [
"reenv",
"nixpkgs"
],
"pyproject-build-systems": "pyproject-build-systems",
"pyproject-nix": "pyproject-nix",
"uv2nix": "uv2nix"
},
"locked": {
"lastModified": 1776098525,
"narHash": "sha256-fKxg8AUEa+0c0rNZJ3s6rZ2bJk9e/o3/nXTh57OSalQ=",
"owner": "pwndbg",
"repo": "pwndbg",
"rev": "1ec4d3fe69589235fc2802cba1b2057eeefab900",
"type": "github"
},
"original": {
"owner": "pwndbg",
"repo": "pwndbg",
"type": "github"
}
},
"pyproject-build-systems": {
"inputs": {
"nixpkgs": [
"reenv",
"pwndbg",
"nixpkgs"
],
"pyproject-nix": [
"reenv",
"pwndbg",
"pyproject-nix"
],
"uv2nix": [
"reenv",
"pwndbg",
"uv2nix"
]
},
"locked": {
"lastModified": 1763662255,
"narHash": "sha256-4bocaOyLa3AfiS8KrWjZQYu+IAta05u3gYZzZ6zXbT0=",
"owner": "pyproject-nix",
"repo": "build-system-pkgs",
"rev": "042904167604c681a090c07eb6967b4dd4dae88c",
"type": "github"
},
"original": {
"owner": "pyproject-nix",
"repo": "build-system-pkgs",
"type": "github"
}
},
"pyproject-nix": {
"inputs": {
"nixpkgs": [
"reenv",
"pwndbg",
"nixpkgs"
]
},
"locked": {
"lastModified": 1769936401,
"narHash": "sha256-kwCOegKLZJM9v/e/7cqwg1p/YjjTAukKPqmxKnAZRgA=",
"owner": "pyproject-nix",
"repo": "pyproject.nix",
"rev": "b0d513eeeebed6d45b4f2e874f9afba2021f7812",
"type": "github"
},
"original": {
"owner": "pyproject-nix",
"repo": "pyproject.nix",
"type": "github"
}
},
"quickshell": {
"inputs": {
"nixpkgs": [
@ -1757,6 +1977,32 @@
"url": "https://git.outfoxxed.me/quickshell/quickshell"
}
},
"reenv": {
"inputs": {
"flake-parts": "flake-parts_4",
"framewalk": "framewalk",
"ghidra-mcp": "ghidra-mcp",
"mcp-servers-nix": "mcp-servers-nix",
"nixpkgs": [
"nixpkgs"
],
"nixpkgs-retdec": "nixpkgs-retdec",
"pwndbg": "pwndbg"
},
"locked": {
"lastModified": 1776617462,
"narHash": "sha256-mrKOij4gGt9vko84cVegDNwBa1kGuniVMv5HhKy5Fuk=",
"owner": "levigross",
"repo": "NixRevAI",
"rev": "bca7f3da38e6808702e8c9a1bff967588fda3c33",
"type": "github"
},
"original": {
"owner": "levigross",
"repo": "NixRevAI",
"type": "github"
}
},
"root": {
"inputs": {
"affinity-nix": "affinity-nix",
@ -1780,6 +2026,7 @@
"nixpkgs": "nixpkgs_13",
"nixpkgs-unstable": "nixpkgs-unstable",
"paseo": "paseo",
"reenv": "reenv",
"rusic": "rusic",
"zen-browser": "zen-browser"
}
@ -1788,7 +2035,7 @@
"inputs": {
"crane": "crane_2",
"nixpkgs": "nixpkgs_14",
"rust-overlay": "rust-overlay_2"
"rust-overlay": "rust-overlay_3"
},
"locked": {
"lastModified": 1780061474,
@ -1843,6 +2090,28 @@
}
},
"rust-overlay_2": {
"inputs": {
"nixpkgs": [
"reenv",
"framewalk",
"nixpkgs"
]
},
"locked": {
"lastModified": 1775358767,
"narHash": "sha256-f2eC+WIfhjevCPQILuV08i/kmKZzYZpUvkom/33VxCA=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "20fd44bc663daa53a2575e01293e24e681d62244",
"type": "github"
},
"original": {
"owner": "oxalica",
"repo": "rust-overlay",
"type": "github"
}
},
"rust-overlay_3": {
"inputs": {
"nixpkgs": [
"rusic",
@ -1975,6 +2244,33 @@
"type": "github"
}
},
"uv2nix": {
"inputs": {
"nixpkgs": [
"reenv",
"pwndbg",
"nixpkgs"
],
"pyproject-nix": [
"reenv",
"pwndbg",
"pyproject-nix"
]
},
"locked": {
"lastModified": 1769957392,
"narHash": "sha256-6PkqwwYf5K2CHi2V+faI/9pqjfz/HxUkI/MVid6hlOY=",
"owner": "pyproject-nix",
"repo": "uv2nix",
"rev": "d18bc50ae1c3d4be9c41c2d94ea765524400af75",
"type": "github"
},
"original": {
"owner": "pyproject-nix",
"repo": "uv2nix",
"type": "github"
}
},
"xdph": {
"inputs": {
"hyprland-protocols": [

View file

@ -33,6 +33,10 @@
};
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
reenv = {
url = "github:levigross/NixRevAI";
inputs.nixpkgs.follows = "nixpkgs";
};
zen-browser.url = "github:0xc000022070/zen-browser-flake";
nixos-hardware.url = "github:NixOS/nixos-hardware";
# hyprland.url = "github:hyprwm/Hyprland/v0.48.1";
@ -78,6 +82,7 @@
nix-index-database,
hypr-kdeconnect-fix,
paseo,
reenv,
...
}@attrs:
{

View file

@ -21,7 +21,7 @@ let
grafana = 3002;
tolgee = 8200;
# ntfy = 3003;
llama-swap = 8080;
forgejo = 8300;
};
internalPorts = {
prometheus-node = 9000;
@ -114,6 +114,25 @@ in
port = internalPorts.prometheus-llama-swap;
};
forgejo = {
enable = true;
settings = {
server = {
DOMAIN = "git.badapple.cz";
ROOT_URL = "https://git.badapple.cz";
HTTP_PORT = ports.forgejo;
};
service.DISABLE_REGISTRATION = true;
};
actions = {
ENABLED = true;
DEFAULT_ACTIONS_URL = "github";
};
lfs.enable = true;
dump.enable = true;
dump.age = "5d";
};
dnsmasq = {
enable = true;
};

View file

@ -2,10 +2,54 @@
pkgs,
lib,
config,
reenv,
...
}:
let
system = pkgs.stdenv.hostPlatform.system;
ninfs = pkgs.python3Packages.buildPythonApplication {
pname = "ninfs";
version = "1.7b2";
format = "setuptools";
src = pkgs.fetchFromGitHub {
owner = "ihaveamac";
repo = "ninfs";
rev = "v1.7b2";
hash = "sha256-x1BxY3YGfCPdqp44xLnbKimRoMPNqel/bP1mGdvx+98=";
};
postPatch = ''
sed -i '/#include <dlfcn.h>/a #include <string>' ninfs/hac/_crypto.cpp
'';
nativeBuildInputs = with pkgs.python3Packages; [
setuptools
wheel
];
propagatedBuildInputs = with pkgs.python3Packages; [
pycryptodomex
];
doCheck = false;
};
reverseEngineeringPython = pkgs.python3.withPackages (pythonPackages: [
pythonPackages.construct
pythonPackages.cryptography
pythonPackages.fusepy
pythonPackages.mcp
pythonPackages.pip
pythonPackages.pycryptodome
pythonPackages.pycryptodomex
pythonPackages.pyfatfs
pythonPackages.setuptools
pythonPackages.wheel
]);
llama-cpp = (
(pkgs.llama-cpp.override {
cudaSupport = true;
@ -125,16 +169,55 @@ in
nvidia-vaapi-driver
];
};
environment.systemPackages = with pkgs; [
blender
android-studio-full
nvitop
# basalt-monado
cudaPackages.cuda_nvcc
llama-cpp
imgbrd-grabber
protonplus
];
environment.systemPackages =
(with pkgs; [
blender
android-studio-full
nvitop
# basalt-monado
cudaPackages.cuda_nvcc
llama-cpp
imgbrd-grabber
protonplus
# Reverse engineering tooling
bintools
binwalk
ctrtool
fuse
fuse3
mtools
openssl
p7zip
sleuthkit
aircrack-ng
hostapd
iw
ninfs
tcpdump
wireshark-cli
reverseEngineeringPython
])
++ (with reenv.packages.${system}; [
bindiff
ghidra-with-extensions
retdec
]);
environment.sessionVariables = {
GHIDRA_MCP_BRIDGE = "${
reenv.packages.${system}.ghidra-with-extensions
}/libexec/ghidra-mcp/bridge_mcp_ghidra.py";
};
environment.extraInit = ''
export LD_LIBRARY_PATH="${
pkgs.lib.makeLibraryPath [
pkgs.fuse
pkgs.fuse3
]
}:''${LD_LIBRARY_PATH:-}"
'';
services.llama-swap = {
enable = true;
openFirewall = true;

View file

@ -51,18 +51,18 @@ let
deadlockModManager = dmm.packages.${pkgs.system}.nightly.overrideAttrs (oldAttrs: {
postPatch = (oldAttrs.postPatch or "") + ''
substituteInPlace apps/desktop/src-tauri/Cargo.toml \
--replace 'tauri-wry = ["tauri/wry"]' 'tauri-wry = ["tauri/wry"]
cef = []'
substituteInPlace apps/desktop/src-tauri/Cargo.toml \
--replace 'tauri-wry = ["tauri/wry"]' 'tauri-wry = ["tauri/wry"]
cef = []'
substituteInPlace apps/desktop/src-tauri/src/mod_manager/steam_manager.rs \
--replace ' let steam_dir = steamlocate::SteamDir::from_dir(&path).map_err(|_| {' ' if !path.join("steamapps").join("libraryfolders.vdf").exists() {
return Err(Error::InvalidInput(
"Invalid Steam path: not a valid Steam installation directory".to_string(),
));
}
substituteInPlace apps/desktop/src-tauri/src/mod_manager/steam_manager.rs \
--replace ' let steam_dir = steamlocate::SteamDir::from_dir(&path).map_err(|_| {' ' if !path.join("steamapps").join("libraryfolders.vdf").exists() {
return Err(Error::InvalidInput(
"Invalid Steam path: not a valid Steam installation directory".to_string(),
));
}
let steam_dir = steamlocate::SteamDir::from_dir(&path).map_err(|_| {'
let steam_dir = steamlocate::SteamDir::from_dir(&path).map_err(|_| {'
'';
});
@ -331,7 +331,7 @@ in
scc
aircrack-ng
strace
ghidra
# ghidra
ffuf
sqlmap
nmap