Compare commits

..

1 Commits

Author SHA1 Message Date
3c836758af added inotify 2026-05-12 20:04:12 +01:00
9 changed files with 561 additions and 559 deletions

View File

@@ -4,7 +4,9 @@
pkgs, pkgs,
inputs, inputs,
... ...
}: { }:
{
imports = [ imports = [
/etc/nixos/hardware-configuration.nix /etc/nixos/hardware-configuration.nix
]; ];
@@ -39,7 +41,7 @@
config = { config = {
allowUnfree = true; allowUnfree = true;
packageOverrides = pkgs: { packageOverrides = pkgs: {
unstable = import inputs.nixpkgs-unstable { unstable = import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/nixos-unstable.tar.gz") {
config = { config = {
allowUnfree = true; allowUnfree = true;
}; };
@@ -48,9 +50,6 @@
}; };
}; };
# Set <nixpkgs> correctly
nix.nixPath = ["nixpkgs=${inputs.nixpkgs}"];
## Optimise Nix store on rebuild and collect garbage as a service ## Optimise Nix store on rebuild and collect garbage as a service
nix.optimise.automatic = true; nix.optimise.automatic = true;
nix.gc = { nix.gc = {
@@ -137,7 +136,6 @@
alsa.enable = true; alsa.enable = true;
alsa.support32Bit = true; alsa.support32Bit = true;
pulse.enable = true; pulse.enable = true;
jack.enable = true;
}; };
# Local User # Local User
@@ -155,106 +153,116 @@
"docker" "docker"
"wheel" "wheel"
]; ];
packages = with pkgs; let packages =
input = { with pkgs;
package, let
output ? "default", input =
}: {
inputs.${package}.packages.${pkgs.stdenv.hostPlatform.system}.${output}; package,
wrap = { output ? "default",
name, }:
pkg, inputs.${package}.packages.${pkgs.stdenv.hostPlatform.system}.${output};
modules, wrap =
}: {
pkgs.symlinkJoin { name,
inherit name; pkg,
paths = [pkg]; modules,
nativeBuildInputs = [pkgs.makeWrapper]; }:
postBuild = '' pkgs.symlinkJoin {
wrapProgram $out/bin/${name} \ inherit name;
--prefix PATH : ${pkgs.lib.makeBinPath modules} paths = [ pkg ];
''; nativeBuildInputs = [ pkgs.makeWrapper ];
}; postBuild = ''
in [ wrapProgram $out/bin/${name} \
# Ricing --prefix PATH : ${pkgs.lib.makeBinPath modules}
## Desktop '';
bibata-cursors };
catppuccin-gtk in
unstable.waybar [
hyprlock # Ricing
dunst ## Desktop
wlogout bibata-cursors
wpaperd catppuccin-gtk
quickshell waybar
hyprlock
dunst
wlogout
wpaperd
## Desktop Utilities ## Desktop Utilities
grimblast grimblast
gsettings-desktop-schemas gsettings-desktop-schemas
wl-clipboard wl-clipboard
(wrap { (wrap {
name = "otter-launcher"; name = "otter-launcher";
pkg = ( pkg = (
input { input {
package = "otter-launcher"; package = "otter-launcher";
} }
); );
modules = [ modules = [
chafa chafa
jq jq
]; ];
}) })
(input {package = "fsel";}) (input { package = "fsel"; })
# Terminal # Terminal
## Styling / Functionality ## Styling / Functionality
oh-my-posh oh-my-posh
carapace carapace
zsh-autocomplete zsh-autocomplete
bat bat
## Tools ## Tools
lazygit lazygit
git-secret p7zip-rar
p7zip-rar any-nix-shell
any-nix-shell dysk
bluetui bluetui
fzf fzf
ripgrep ripgrep
wget wget
htop inotify-tools
playerctl htop
git playerctl
lsd git
(input { lsd
package = "doot"; (input {
}) package = "doot";
})
## Other CLI Apps ## Other CLI Apps
nodejs nodejs
fastfetch fastfetch
opencode zellij
tailscale cava
syncthing cmatrix
jellyfin-tui opencode
devenv tailscale
nix-output-monitor syncthing
(input { package = "norgolith"; })
jellyfin-tui
# Apps # Apps
## Actual Useful Stuff ## Actual Useful Stuff
nemo nemo
kitty kitty
firefox firefox
gotify-desktop gotify-desktop
pavucontrol pavucontrol
mpv mpv
input-remapper input-remapper
## Other Nonsense ## Other Nonsense
tor-browser tor-browser
techmino techmino
prismlauncher prismlauncher
delfin delfin
]; (input {
package = "chataigne";
})
];
}; };
## Zsh ## Zsh
@@ -280,7 +288,7 @@
programs = { programs = {
dconf.enable = true; dconf.enable = true;
xfconf.enable = true; xfconf.enable = true;
gdk-pixbuf.modulePackages = [pkgs.librsvg]; # For wlogout svgs gdk-pixbuf.modulePackages = [ pkgs.librsvg ]; # For wlogout svgs
}; };
## User Services ## User Services
@@ -298,24 +306,23 @@
fonts.packages = with pkgs; [ fonts.packages = with pkgs; [
nerd-fonts.fira-mono nerd-fonts.fira-mono
]; ];
fonts.fontconfig.defaultFonts.serif = ["Fira Mono Nerd Font"]; fonts.fontconfig.defaultFonts.serif = [ "Fira Mono Nerd Font" ];
# System Packages # System Packages
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
# Utilities # Utilities
inputs.nvim-wrapped.packages.${stdenv.hostPlatform.system}.default inputs.nvim-wrapped.packages.${stdenv.hostPlatform.system}.default
vim vim
unzip unzip
python315 python310
usbutils usbutils
curlWithGnuTls curlWithGnuTls
# System # System
mesa mesa
pkg-config
vulkan-tools vulkan-tools
gvfs gvfs
wayvnc
clang clang
xdg-desktop-portal xdg-desktop-portal
xdg-desktop-portal-hyprland xdg-desktop-portal-hyprland
@@ -327,11 +334,8 @@
libnotify libnotify
gsettings-desktop-schemas gsettings-desktop-schemas
]; ];
programs.gnupg.agent = {
enable = true;
pinentryPackage = pkgs.pinentry-all;
};
# The comment # The comment
system.stateVersion = "25.05"; # Did you read the comment? system.stateVersion = "25.05"; # Did you read the comment?
} }

View File

@@ -4,7 +4,9 @@
pkgs, pkgs,
inputs, inputs,
... ...
}: { }:
{
networking.hostName = "mobile02"; # Define your hostname. networking.hostName = "mobile02"; # Define your hostname.
# Opengl and vulkan # Opengl and vulkan
@@ -34,16 +36,17 @@
# Local User # Local User
users.users.user01 = { users.users.user01 = {
extraGroups = []; extraGroups = [ ];
packages = with pkgs; [ packages = with pkgs; [
# Ricing # Ricing
inputs.way-edges.packages.${stdenv.hostPlatform.system}.way-edges inputs.way-edges.packages.${stdenv.hostPlatform.system}.way-edges
inputs.chataigne.packages.${stdenv.hostPlatform.system}.default
# Terminal # Terminal
light
# Apps # Apps
]; ];
}; };
programs.steam.enable = true; programs.steam.enable = true;
} }

View File

@@ -4,7 +4,9 @@
pkgs, pkgs,
inputs, inputs,
... ...
}: { }:
{
networking.hostName = "HACKSTATION"; networking.hostName = "HACKSTATION";
# Enable nix-ld to run unpatched binaries # Enable nix-ld to run unpatched binaries
@@ -28,16 +30,10 @@
extraPackages = with pkgs; [ extraPackages = with pkgs; [
libva-vdpau-driver libva-vdpau-driver
libvdpau-va-gl libvdpau-va-gl
rocmPackages.clr.icd
]; ];
enable32Bit = true; enable32Bit = true;
}; };
# For rOCM
systemd.tmpfiles.rules = [
"L+ /opt/rocm - - - - ${pkgs.rocmPackages.clr}"
];
hardware.amdgpu.opencl.enable = true; hardware.amdgpu.opencl.enable = true;
boot.kernelParams = [ boot.kernelParams = [
@@ -116,30 +112,22 @@
# Local User # Local User
users.users.user01 = { users.users.user01 = {
extraGroups = [ extraGroups = [
"adbusers"
"docker" "docker"
"input"
"udev"
"wheel"
]; ];
packages = with pkgs; [ packages = with pkgs; [
bottles bottles
mumble mumble
gajim
ferdium ferdium
android-tools
anki
vesktop
wine64
delfin delfin
docker docker
orca-slicer orca-slicer
exiftool
ffmpeg ffmpeg
inputs.norgolith.packages.${pkgs.stdenv.hostPlatform.system}.default
inputs.cracked-davinci.packages.${pkgs.stdenv.hostPlatform.system}.default
inputs.woomer.packages.${pkgs.stdenv.hostPlatform.system}.default
# wine
wineWow64Packages.stable
winetricks
wine
wine64
freetype
]; ];
}; };
@@ -147,21 +135,8 @@
inputs.sls-steam.packages.${pkgs.stdenv.hostPlatform.system}.wrapped inputs.sls-steam.packages.${pkgs.stdenv.hostPlatform.system}.wrapped
]; ];
programs.obs-studio = {
enable = true;
};
programs.wshowkeys = {
enable = true;
package = inputs.wshowkeys.packages.${pkgs.stdenv.hostPlatform.system}.default;
};
programs.steam = { programs.steam = {
enable = true; enable = true;
protontricks.enable = true;
extraCompatPackages = with pkgs; [
proton-ge-bin
];
package = pkgs.steam.override { package = pkgs.steam.override {
extraEnv = { extraEnv = {
LD_AUDIT = "${ LD_AUDIT = "${

409
flake.lock generated
View File

@@ -20,11 +20,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1780756231, "lastModified": 1777499565,
"narHash": "sha256-tXQxKdG5716uB9/LIkLQqQwHKf5mRSpHoZhz3lyI2Cg=", "narHash": "sha256-nU55VWk99Pn1QzQDDjFISocC4SgDZ3Xp+zb6ji3JclM=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "aquamarine", "repo": "aquamarine",
"rev": "6ecde03f47172753fe5a2f334f9d3facfb7e6784", "rev": "813c1e8981893c11e118b19c125d6bc282f51765",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -36,11 +36,11 @@
"beaker-src": { "beaker-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1780436704, "lastModified": 1773884524,
"narHash": "sha256-3aMH1YblnpiXKdkQVMRLmMZ5/8G7vB4HAfLg7+izyHg=", "narHash": "sha256-1dnlofWaxI/YRID+WPz2jHZNDyloBubDt/bAQk9ePLU=",
"ref": "refs/heads/master", "ref": "refs/heads/master",
"rev": "360d6271e1a20d128430e52637d5d35f4c706ca5", "rev": "abc598baf15d6f8a4de395a27ba34b1e769558e1",
"revCount": 34, "revCount": 21,
"shallow": false, "shallow": false,
"type": "git", "type": "git",
"url": "https://git.bwaaa.monster/beaker" "url": "https://git.bwaaa.monster/beaker"
@@ -65,46 +65,10 @@
}, },
"parent": [] "parent": []
}, },
"cracked-davinci": {
"inputs": {
"nixpkgs": "nixpkgs_2",
"nixpkgs-pinned": "nixpkgs-pinned"
},
"locked": {
"lastModified": 1782405315,
"narHash": "sha256-pZKG7KOr1NPtWwzfEnRZvAi7Uvndd4LiC0OVHjf5IPE=",
"ref": "refs/heads/main",
"rev": "c9859df9bd3781c63d838a1a90d22129885a910b",
"revCount": 5,
"type": "git",
"url": "https://git.voidarc.co.uk/voidarc/nixos.davinci"
},
"original": {
"type": "git",
"url": "https://git.voidarc.co.uk/voidarc/nixos.davinci"
}
},
"crane": {
"locked": {
"lastModified": 1781825982,
"narHash": "sha256-SlXKwIRIhrOSAcTjCB3ftPLzJWZStQIPS7J1FlZPnKk=",
"owner": "ipetkov",
"repo": "crane",
"rev": "469fd08d0bcf6926321fa973c6777fbc87785dd7",
"type": "github"
},
"original": {
"owner": "ipetkov",
"repo": "crane",
"type": "github"
}
},
"doot": { "doot": {
"inputs": { "inputs": {
"doot-src": "doot-src", "doot-src": "doot-src",
"nixpkgs": [ "nixpkgs": "nixpkgs_2",
"nixpkgs"
],
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
@@ -230,56 +194,18 @@
"type": "github" "type": "github"
} }
}, },
"flake-utils_3": {
"inputs": {
"systems": "systems_6"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_4": {
"inputs": {
"systems": "systems_7"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"fsel": { "fsel": {
"inputs": { "inputs": {
"flake-utils": "flake-utils", "flake-utils": "flake-utils",
"naersk": "naersk", "naersk": "naersk",
"nixpkgs": [ "nixpkgs": "nixpkgs_4"
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1779043781, "lastModified": 1776619539,
"narHash": "sha256-7YoRc6jOuQUI0yv3qBHFhc60G/RG0LwVsKkN90UkPn4=", "narHash": "sha256-pBQMSlEUICEfmzA+oSonzH0JlAcBjsVE0gT0QwsTNFE=",
"owner": "Mjoyufull", "owner": "Mjoyufull",
"repo": "fsel", "repo": "fsel",
"rev": "6b6ae52e3a2c254007e8a2c332a8d5de99428ba5", "rev": "ad49c5d96bb1b1b738c5ce6f4410ecffea8adb5c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -400,17 +326,17 @@
"hyprutils": "hyprutils", "hyprutils": "hyprutils",
"hyprwayland-scanner": "hyprwayland-scanner", "hyprwayland-scanner": "hyprwayland-scanner",
"hyprwire": "hyprwire", "hyprwire": "hyprwire",
"nixpkgs": "nixpkgs_4", "nixpkgs": "nixpkgs_5",
"pre-commit-hooks": "pre-commit-hooks", "pre-commit-hooks": "pre-commit-hooks",
"systems": "systems_3", "systems": "systems_3",
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1781453652, "lastModified": 1778504983,
"narHash": "sha256-BHkT6VFjkjO80YoheG0m9YuAMy3S78Ipr27vAbvZEIw=", "narHash": "sha256-F70mt2snAYPobaMEEGRJmCqOmqU/zDM31HldpMUIWi0=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "Hyprland", "repo": "Hyprland",
"rev": "179c2bce0355289c60271fb00b89f2d5511618d5", "rev": "5e441cae538c9396f2ee30338419bec12969608c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -583,11 +509,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1780251518, "lastModified": 1778234770,
"narHash": "sha256-fG9xbb1SOAAJ+2kJRakp3ch+BmA/3dEg/K3PoAZTKkw=", "narHash": "sha256-jAcsogZwWMfXT9MfXxZzkwliAqIuZUV0p71h6Ba9ReE=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprutils", "repo": "hyprutils",
"rev": "40ede2e7bdec80ba5d4c443160d905e9f841ae5f", "rev": "a2dbd8a4cc51f7cbe4224732668392bb1aa79df2",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -637,11 +563,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1778410714, "lastModified": 1777388329,
"narHash": "sha256-o6RzFj4nJXaPRY7EM01siuCQeT41RfwwmcmFQqwFJJg=", "narHash": "sha256-40YxVGF2rA9iH3D7am5fy4EOSBbMgpJtJ9yhl0Cx+qI=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprwire", "repo": "hyprwire",
"rev": "85148a8e612808cf5ddb25d0b3c5840f3498a7dc", "rev": "04be2897e05f9b271d532b5ae56ca088d2eeac02",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -650,6 +576,22 @@
"type": "github" "type": "github"
} }
}, },
"mesa-davinci": {
"locked": {
"lastModified": 1754501210,
"narHash": "sha256-ahTHrGs72TLVcNUR2VHckEx+t6frke0e/Ptk6AaEINk=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "599ddd2b79331c1e6153e1659bdaab65d62c4c82",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "599ddd2b79331c1e6153e1659bdaab65d62c4c82",
"repo": "nixpkgs",
"type": "github"
}
},
"naersk": { "naersk": {
"inputs": { "inputs": {
"fenix": "fenix", "fenix": "fenix",
@@ -671,11 +613,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1780952837, "lastModified": 1773222311,
"narHash": "sha256-Fwd1+spDtQ0hDyBwme6ufG3n4mY0UrjjFdYHv+G/Hds=", "narHash": "sha256-BHoB/XpbqoZkVYZCfXJXfkR+GXFqwb/4zbWnOr2cRcU=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "e820eb4a444b46a19b2e03e8dfd2359439ff30fe", "rev": "0590cd39f728e129122770c029970378a79d076a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -700,50 +642,34 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-pinned": { "nixpkgs_10": {
"locked": { "locked": {
"lastModified": 1772567409, "lastModified": 1761597516,
"narHash": "sha256-qspxGige37s/66q9sptyG5VA/l2IOmMMZVJ4Xhta2wU=", "narHash": "sha256-wxX7u6D2rpkJLWkZ2E932SIvDJW8+ON/0Yy8+a5vsDU=",
"owner": "NixOS", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "e4ec59bc1152b09a4843702e4a49381194f065a2", "rev": "daf6dc47aa4b44791372d6139ab7b25269184d55",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "nixos",
"repo": "nixpkgs", "ref": "nixos-25.05",
"rev": "e4ec59bc1152b09a4843702e4a49381194f065a2",
"type": "github"
}
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1781074563,
"narHash": "sha256-md8WlXOlfnIeHeOScMTTHFyf2d6iaTwPl2apR5EQ3P4=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1782233679, "lastModified": 1767379071,
"narHash": "sha256-QyuGP5+QOtmXpy4i2X4DhBVBaySBdDKQEhqKcphcp34=", "narHash": "sha256-EgE0pxsrW9jp9YFMkHL9JMXxcqi/OoumPJYwf+Okucw=",
"owner": "NixOS", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "667d5cf1c59585031d743c78b394b0a647537c35", "rev": "fb7944c166a3b630f177938e478f0378e64ce108",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "nixos",
"ref": "nixos-26.05", "ref": "nixos-unstable",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
@@ -766,11 +692,11 @@
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1780749050, "lastModified": 1775710090,
"narHash": "sha256-3av0pIjlOWQ6rDbNOmpUSvbNnJkGORQKKjb4LtCZsIY=", "narHash": "sha256-ar3rofg+awPB8QXDaFJhJ2jJhu+KqN/PRCXeyuXR76E=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "a799d3e3886da994fa307f817a6bc705ae538eeb", "rev": "4c1018dae018162ec878d42fec712642d214fdfa",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -782,27 +708,11 @@
}, },
"nixpkgs_5": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1781216227, "lastModified": 1777954456,
"narHash": "sha256-9mUW6gNwoN2SWc/l0fW4svPNOulXLl8ijqKyeSOGgJE=", "narHash": "sha256-hGdgeU2Nk87RAuZyYjyDjFL6LK7dAZN5RE9+hrDTkDU=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "a0374025a863d007d98e3297f6aa46cc3141c2f0",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-26.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_6": {
"locked": {
"lastModified": 1782467914,
"narHash": "sha256-pGvFkM8N0xEkIIXDe5YYfbEAvHrk4IxBrjB/x8OomhE=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "e73de5be04e0eff4190a1432b946d469c794e7b4", "rev": "549bd84d6279f9852cae6225e372cc67fb91a4c1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -812,23 +722,55 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_6": {
"locked": {
"lastModified": 1777428379,
"narHash": "sha256-ypxFOeDz+CqADEQNL72haqGjvZQdBR5Vc7pyx2JDttI=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "755f5aa91337890c432639c60b6064bb7fe67769",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-25.11",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_7": { "nixpkgs_7": {
"locked": { "locked": {
"lastModified": 1780336545, "lastModified": 1777578337,
"narHash": "sha256-vhVhuXzFrIOfcssC/9hDHx7MHzDKjF3keHuREOQqQiQ=", "narHash": "sha256-Ad49moKWeXtKBJNy2ebiTQUEgdLyvGmTeykAQ9xM+Z4=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "4df1b885d76a54e1aa1a318f8d16fd6005b6401f", "rev": "15f4ee454b1dce334612fa6843b3e05cf546efab",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixpkgs-unstable", "ref": "nixos-unstable",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs_8": { "nixpkgs_8": {
"locked": {
"lastModified": 1769461804,
"narHash": "sha256-msG8SU5WsBUfVVa/9RPLaymvi5bI8edTavbIq3vRlhI=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "bfc1b8a4574108ceef22f02bafcf6611380c100d",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_9": {
"locked": { "locked": {
"lastModified": 1769170682, "lastModified": 1769170682,
"narHash": "sha256-oMmN1lVQU0F0W2k6OI3bgdzp2YOHWYUAw79qzDSjenU=", "narHash": "sha256-oMmN1lVQU0F0W2k6OI3bgdzp2YOHWYUAw79qzDSjenU=",
@@ -852,11 +794,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1781412130, "lastModified": 1774362592,
"narHash": "sha256-TqXOX3N+tLVa+rjdppBpQSLwVVjSlqpQOrGTgKxur5M=", "narHash": "sha256-yee24/VJaPHKkWr3FravXP2YSqnYpTCQdmGO1SNI30U=",
"owner": "NTBBloodbath", "owner": "NTBBloodbath",
"repo": "norgolith", "repo": "norgolith",
"rev": "a7d8e257b75f03448ae8d19265fa033afe45fd74", "rev": "f842f65f5279f0ab91631686100b11703bcaaebc",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -867,15 +809,14 @@
}, },
"nvim-wrapped": { "nvim-wrapped": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_6", "nixpkgs": "nixpkgs_7"
"wrappers": "wrappers"
}, },
"locked": { "locked": {
"lastModified": 1783103301, "lastModified": 1777901302,
"narHash": "sha256-EJ662Hh+r1AKh1MGFrN2QbrIMYTwu4Jb106BNyeMIZI=", "narHash": "sha256-P+UtdUCbVKdTGX37ataQbFoodKlemllmL9pBNHhhD7k=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "7de01201e837d93ad3128719ad49162d4b900d5d", "rev": "2e4e260731c5caaf14951ae0959d1e9b7f6bdf63",
"revCount": 92, "revCount": 75,
"type": "git", "type": "git",
"url": "file:///home/user01/.dotfiles/.config/nvim" "url": "file:///home/user01/.dotfiles/.config/nvim"
}, },
@@ -892,11 +833,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1780508528, "lastModified": 1774376566,
"narHash": "sha256-0OkItQH4D8KcS+mIxgrzGHTHMl7Eb6ZHzTN3UmZbtWI=", "narHash": "sha256-9MpNFotAXh8pOcYOLivq5UomOS5LbggdsRsNVpRtXAI=",
"ref": "refs/heads/master", "ref": "refs/heads/master",
"rev": "e48c6366d07e0357afa379dff7b73328589164e5", "rev": "0b426487cafdc5672ba5077228bcf881c605bfbe",
"revCount": 131, "revCount": 68,
"type": "git", "type": "git",
"url": "https://git.voidarc.co.uk/voidarc/omnisearch" "url": "https://git.voidarc.co.uk/voidarc/omnisearch"
}, },
@@ -909,17 +850,15 @@
"inputs": { "inputs": {
"flake-parts": "flake-parts", "flake-parts": "flake-parts",
"home-manager": "home-manager", "home-manager": "home-manager",
"nixpkgs": [ "nixpkgs": "nixpkgs_8",
"nixpkgs"
],
"systems": "systems_5" "systems": "systems_5"
}, },
"locked": { "locked": {
"lastModified": 1780973227, "lastModified": 1776906414,
"narHash": "sha256-vlNT2248Oxg3++bk8ZkozsU4wDbxOkh6dl3GeoBmmXE=", "narHash": "sha256-ImJeI5xbd/w4nchFwc0tSS8v2vYWx/ttwM5uk2BWsCk=",
"owner": "kuokuo123", "owner": "kuokuo123",
"repo": "otter-launcher", "repo": "otter-launcher",
"rev": "764a38d1de308da3268222692652a0a85bb71eee", "rev": "ae647cef5b3c3dd52bedd7a8c881988e412a2dca",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -938,11 +877,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1778507602, "lastModified": 1776796298,
"narHash": "sha256-kTwur1wV+01SdqskVMSo6JMEpg71ps3HpbFY2GsflKs=", "narHash": "sha256-PcRvlWayisPSjd0UcRQbhG8Oqw78AcPE6x872cPRHN8=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "61ab0e80d9c7ab14c256b5b453d8b3fb0189ba0a", "rev": "3cfd774b0a530725a077e17354fbdb87ea1c4aad",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -954,20 +893,17 @@
"root": { "root": {
"inputs": { "inputs": {
"chataigne": "chataigne", "chataigne": "chataigne",
"cracked-davinci": "cracked-davinci",
"doot": "doot", "doot": "doot",
"fsel": "fsel", "fsel": "fsel",
"hyprland": "hyprland", "hyprland": "hyprland",
"nixpkgs": "nixpkgs_5", "mesa-davinci": "mesa-davinci",
"nixpkgs-unstable": "nixpkgs-unstable", "nixpkgs": "nixpkgs_6",
"norgolith": "norgolith", "norgolith": "norgolith",
"nvim-wrapped": "nvim-wrapped", "nvim-wrapped": "nvim-wrapped",
"omnisearch": "omnisearch", "omnisearch": "omnisearch",
"otter-launcher": "otter-launcher", "otter-launcher": "otter-launcher",
"sls-steam": "sls-steam", "sls-steam": "sls-steam",
"way-edges": "way-edges", "way-edges": "way-edges"
"woomer": "woomer",
"wshowkeys": "wshowkeys"
} }
}, },
"rust-analyzer-src": { "rust-analyzer-src": {
@@ -1010,14 +946,14 @@
}, },
"sls-steam": { "sls-steam": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_8" "nixpkgs": "nixpkgs_9"
}, },
"locked": { "locked": {
"lastModified": 1781157498, "lastModified": 1777454249,
"narHash": "sha256-gDNHztsHGFAmbbj7Gcu8vWcFU5+4c1EeGU4lhb7Hnqo=", "narHash": "sha256-BylCmB2DFgUL+f0JmY50GMuUIaB+Avj52BNs7sd1rrs=",
"owner": "AceSLS", "owner": "AceSLS",
"repo": "SLSsteam", "repo": "SLSsteam",
"rev": "981da676e76f72b1ed3c387f192509ac9a1b91e4", "rev": "fd38c03f9e667bf7b74127c4fc5b5c75e1bff521",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1101,36 +1037,6 @@
"type": "github" "type": "github"
} }
}, },
"systems_6": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_7": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"utils": { "utils": {
"inputs": { "inputs": {
"systems": "systems" "systems": "systems"
@@ -1151,9 +1057,7 @@
}, },
"way-edges": { "way-edges": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": "nixpkgs_10",
"nixpkgs"
],
"rust-overlay": "rust-overlay" "rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
@@ -1170,67 +1074,6 @@
"type": "github" "type": "github"
} }
}, },
"woomer": {
"inputs": {
"crane": "crane",
"flake-utils": "flake-utils_3",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1782507996,
"narHash": "sha256-hO+SIA6Q41hiwZBFGHBjkOsRQFUcO0SbJqmYeyy2sfM=",
"owner": "voidarclabs",
"repo": "woomer",
"rev": "572844bdae8dded0bbad9e23ca354dcd857f6b98",
"type": "github"
},
"original": {
"owner": "voidarclabs",
"repo": "woomer",
"type": "github"
}
},
"wrappers": {
"inputs": {
"nixpkgs": "nixpkgs_7"
},
"locked": {
"lastModified": 1782135443,
"narHash": "sha256-vAmbArdCyjqpVW+37aCy/PMBOLIqukUXLQuEKLwUhA4=",
"owner": "BirdeeHub",
"repo": "nix-wrapper-modules",
"rev": "6e7f66fa2cdf4d63162580b438f7fcf87c28a46f",
"type": "github"
},
"original": {
"owner": "BirdeeHub",
"repo": "nix-wrapper-modules",
"type": "github"
}
},
"wshowkeys": {
"inputs": {
"flake-utils": "flake-utils_4",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1781708685,
"narHash": "sha256-NH5b736WoI9LodJKPlonO1X+Lxg8URMLLRkT5to61Zg=",
"owner": "voidarclabs",
"repo": "wshowkeys",
"rev": "47dfb7a0237acbf847ca28cbb88000b33929f50a",
"type": "github"
},
"original": {
"owner": "voidarclabs",
"repo": "wshowkeys",
"type": "github"
}
},
"xdph": { "xdph": {
"inputs": { "inputs": {
"hyprland-protocols": [ "hyprland-protocols": [
@@ -1259,11 +1102,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1780133819, "lastModified": 1777585783,
"narHash": "sha256-0YPKIY3dlnR7SPq7Z8ekFVvzFsfeiAtEj+QUI3KHrlI=", "narHash": "sha256-JTeWRy42VElroJ0rVdZuVXSoTLsx+NzQfGPKMbtn3SU=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland", "repo": "xdg-desktop-portal-hyprland",
"rev": "4a170c0ba96fd37374f93d8f91c9ed91814828ac", "rev": "fa50d6fbaff8f42c61071b87b034a90d82a33558",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@@ -3,47 +3,28 @@
inputs = { inputs = {
# System # System
nixpkgs.url = "github:nixos/nixpkgs/nixos-26.05"; nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable"; nvim-wrapped = {
nvim-wrapped.url = "git+file:///home/user01/.dotfiles/.config/nvim"; url = "git+file:///home/user01/.dotfiles/.config/nvim";
};
hyprland.url = "github:hyprwm/Hyprland"; hyprland.url = "github:hyprwm/Hyprland";
# Apps # Apps
sls-steam.url = "github:AceSLS/SLSsteam"; sls-steam.url = "github:AceSLS/SLSsteam";
woomer = {
url = "github:voidarclabs/woomer";
inputs.nixpkgs.follows = "nixpkgs";
};
chataigne.url = "./modules/chataigne"; chataigne.url = "./modules/chataigne";
norgolith = { norgolith = {
url = "github:NTBBloodbath/norgolith"; url = "github:NTBBloodbath/norgolith";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
wshowkeys = {
url = "github:voidarclabs/wshowkeys";
inputs.nixpkgs.follows = "nixpkgs";
};
# Utils # Utils
doot = { doot.url = "github:voidarclabs/nixos.doot";
url = "github:voidarclabs/nixos.doot"; way-edges.url = "github:way-edges/way-edges";
inputs.nixpkgs.follows = "nixpkgs"; otter-launcher.url = "github:kuokuo123/otter-launcher";
}; fsel.url = "github:Mjoyufull/fsel";
way-edges = {
url = "github:way-edges/way-edges";
inputs.nixpkgs.follows = "nixpkgs";
};
otter-launcher = {
url = "github:kuokuo123/otter-launcher";
inputs.nixpkgs.follows = "nixpkgs";
};
fsel = {
url = "github:Mjoyufull/fsel";
inputs.nixpkgs.follows = "nixpkgs";
};
# Davinci-resolve # Davinci-resolve
cracked-davinci.url = "git+https://git.voidarc.co.uk/voidarc/nixos.davinci"; mesa-davinci.url = "github:nixos/nixpkgs?ref=599ddd2b79331c1e6153e1659bdaab65d62c4c82";
omnisearch = { omnisearch = {
url = "git+https://git.voidarc.co.uk/voidarc/omnisearch"; url = "git+https://git.voidarc.co.uk/voidarc/omnisearch";
@@ -51,39 +32,42 @@
}; };
}; };
outputs = { outputs =
self, {
nixpkgs, self,
... nixpkgs,
} @ inputs: let ...
system = "x86_64-linux"; }@inputs:
let
system = "x86_64-linux";
hardwareConfig = import /etc/nixos/hardware-configuration.nix; hardwareConfig = import /etc/nixos/hardware-configuration.nix;
common = import ./configs/common.nix; common = import ./configs/common.nix;
mkSystem = extraModules: mkSystem =
nixpkgs.lib.nixosSystem { extraModules:
inherit system; nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs;}; inherit system;
modules = specialArgs = { inherit inputs; };
[ modules = [
common common
hardwareConfig hardwareConfig
] ]
++ extraModules; ++ extraModules;
};
in
{
nixosConfigurations = {
mobile02 = mkSystem [ ./configs/configuration-laptop.nix ];
hackstation = mkSystem [
./configs/configuration-pc.nix
./modules/davinci/davinci.nix
./modules/i3/i3.nix
inputs.omnisearch.nixosModules.default
{
services.omnisearch.enable = true;
}
];
}; };
in {
nixosConfigurations = {
mobile02 = mkSystem [./configs/configuration-laptop.nix];
hackstation = mkSystem [
./configs/configuration-pc.nix
# ./modules/davinci/davinci.nix
./modules/i3/i3.nix
inputs.omnisearch.nixosModules.default
{
services.omnisearch.enable = true;
}
];
}; };
};
} }

View File

@@ -2,11 +2,11 @@
"nodes": { "nodes": {
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1780952837, "lastModified": 1773222311,
"narHash": "sha256-Fwd1+spDtQ0hDyBwme6ufG3n4mY0UrjjFdYHv+G/Hds=", "narHash": "sha256-BHoB/XpbqoZkVYZCfXJXfkR+GXFqwb/4zbWnOr2cRcU=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "e820eb4a444b46a19b2e03e8dfd2359439ff30fe", "rev": "0590cd39f728e129122770c029970378a79d076a",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@@ -5,78 +5,78 @@
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11"; nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
}; };
outputs = { outputs =
self, { self, nixpkgs }:
nixpkgs, let
}: let system = "x86_64-linux";
system = "x86_64-linux"; pkgs = import nixpkgs { inherit system; };
pkgs = import nixpkgs {inherit system;};
# The libraries you requested # The libraries you requested
deps = with pkgs; [ deps = with pkgs; [
curlFull curlFull
gnutls gnutls
libxrandr libxrandr
alsa-lib alsa-lib
freetype freetype
avahi avahi
libglvnd libglvnd
curl curl
SDL2 SDL2
hidapi hidapi
libpulseaudio libpulseaudio
lz4 lz4
openssl openssl
libcap libcap
libxcrypt libxcrypt
libgcrypt libgcrypt
libbsd libbsd
zlib zlib
glib glib
];
# Wrap the local AppImage file
chataigne-bin = pkgs.appimageTools.wrapType2 {
pname = "chataigne";
version = "1.10.3";
# This points to the file in the same directory as flake.nix
src = ./Chataigne-linux-x64-1.10.3.AppImage;
extraPkgs = pkgs: deps;
};
# Create the Desktop Entry
chataigne-desktop = pkgs.makeDesktopItem {
name = "chataigne";
exec = "chataigne";
icon = "chataigne";
comment = "Modular machine for art and technology";
desktopName = "Chataigne";
categories = [
"AudioVideo"
"Development"
];
};
in {
# packages.${system}.default = chataigne-bin;
devShells.${system}.default = pkgs.mkShell {
# Packages you want available in your shell
buildInputs = [
chataigne-bin
]; ];
# Environmental variables or shell hooks # Wrap the local AppImage file
shellHook = '' chataigne-bin = pkgs.appimageTools.wrapType2 {
echo "something" pname = "chataigne";
''; version = "1.10.3";
# This points to the file in the same directory as flake.nix
src = ./Chataigne-linux-x64-1.10.3.AppImage;
extraPkgs = pkgs: deps;
};
# Create the Desktop Entry
chataigne-desktop = pkgs.makeDesktopItem {
name = "chataigne";
exec = "chataigne";
icon = "chataigne";
comment = "Modular machine for art and technology";
desktopName = "Chataigne";
categories = [
"AudioVideo"
"Development"
];
};
in
{
# packages.${system}.default = chataigne-bin;
devShells.${system}.default = pkgs.mkShell {
# Packages you want available in your shell
buildInputs = [
chataigne-bin
];
# Environmental variables or shell hooks
shellHook = ''
echo "something"
'';
};
# This allows you to run 'nix run' or install it via system config
packages.${system}.default = pkgs.symlinkJoin {
name = "chataigne";
paths = [
chataigne-bin
chataigne-desktop
];
};
}; };
# This allows you to run 'nix run' or install it via system config
packages.${system}.default = pkgs.symlinkJoin {
name = "chataigne";
paths = [
chataigne-bin
chataigne-desktop
];
};
};
} }

192
modules/davinci/davinci.nix Normal file
View File

@@ -0,0 +1,192 @@
# Tested on Davinci 20.2.2. It works for loading videos and exporting in H264/5 & AV1
# Even if following this guide https://www.reddit.com/r/LinuxCrackSupport/comments/1nfqhld/davinci_resolve_studio_202_fix_linux_crack_guide/
# nixpkgs rev used for this tests: 4652ba995a945108fb891191c1e910b9a6ed9064
{ lib, inputs, ... }:
let
mesa-good-pkg = inputs.mesa-davinci.legacyPackages.x86_64-linux.mesa;
pkgs = import (builtins.fetchTarball {
url = "https://github.com/NixOS/nixpkgs/archive/ec7c70d12ce2fc37cb92aff673dcdca89d187bae.tar.gz";
}) { config.allowUnfree = true; };
pkgs-pinned =
import
(builtins.fetchTarball {
url = "https://github.com/NixOS/nixpkgs/archive/497ee3c70707fd71b45c37d48ae1d45e79751047.tar.gz";
})
{
config = {
allowUnfree = true;
};
};
ffmpeg-encoder-plugin = pkgs.stdenv.mkDerivation (finalAttrs: {
pname = "ffmpeg-encoder-plugin";
version = "1.2.1";
src = pkgs.fetchFromGitHub {
owner = "EdvinNilsson";
repo = "ffmpeg_encoder_plugin";
rev = "v${finalAttrs.version}";
hash = "sha256-F4Q8YCXD5UldTwLbWK4nHacNPQ/B+4yLL96sq7xZurM=";
};
nativeBuildInputs = [ pkgs.cmake ];
buildInputs = [ pkgs.ffmpeg-full ];
installPhase = ''
mkdir -p $out
cp ffmpeg_encoder_plugin.dvcp $out/
'';
});
davinci-resolve-studio-cracked =
let
davinci-patched = pkgs-pinned.davinci-resolve-studio.davinci.overrideAttrs (old: {
# script based on https://www.reddit.com/r/LinuxCrackSupport/comments/1nfqhld/davinci_resolve_studio_202_fix_linux_crack_guide/
#
# Additionally, it will install ffmpeg_encoder_plugin to enable H264/5 & AV1 exports:
# https://github.com/EdvinNilsson/ffmpeg_encoder_plugin
#
# Note: $out IS /opt/resolve
postInstall = ''
${old.postInstall or ""}
${lib.getExe pkgs.perl} -pi -e 's/\x74\x11\xe8\x21\x23\x00\x00/\xeb\x11\xe8\x21\x23\x00\x00/g' $out/bin/resolve
${lib.getExe pkgs.perl} -pi -e 's/\x03\x00\x89\x45\xFC\x83\x7D\xFC\x00\x74\x11\x48\x8B\x45\xC8\x8B/\x03\x00\x89\x45\xFC\x83\x7D\xFC\x00\xEB\x11\x48\x8B\x45\xC8\x8B/' $out/bin/resolve
${lib.getExe pkgs.perl} -pi -e 's/\x74\x11\x48\x8B\x45\xC8\x8B\x55\xFC\x89\x50\x58\xB8\x00\x00\x00/\xEB\x11\x48\x8B\x45\xC8\x8B\x55\xFC\x89\x50\x58\xB8\x00\x00\x00/' $out/bin/resolve
${lib.getExe pkgs.perl} -pi -e 's/\x41\xb6\x01\x84\xc0\x0f\x84\xb0\x00\x00\x00\x48\x85\xdb\x74\x08\x45\x31\xf6\xe9\xa3\x00\x00\x00/\x41\xb6\x00\x84\xc0\x0f\x84\xb0\x00\x00\x00\x48\x85\xdb\x74\x08\x45\x31\xf6\xe9\xa3\x00\x00\x00/' $out/bin/resolve
touch $out/.license/blackmagic.lic
echo -e "LICENSE blackmagic davinciresolvestudio 999999 permanent uncounted\n hostid=ANY issuer=CGP customer=CGP issued=28-dec-2023\n akey=0000-0000-0000-0000 _ck=00 sig=\"00\"" > $out/.license/blackmagic.lic
mkdir -p $out/IOPlugins/ffmpeg_encoder_plugin.dvcp.bundle/Contents/Linux-x86-64
cp ${ffmpeg-encoder-plugin}/ffmpeg_encoder_plugin.dvcp $out/IOPlugins/ffmpeg_encoder_plugin.dvcp.bundle/Contents/Linux-x86-64/
'';
});
in
# the following was copied from davinci's derivation from nixpkgs.
# if davinci updates, this should be updated too
# but remember to replace "davinci" with "davinci-patched"
pkgs.buildFHSEnv {
inherit (davinci-patched) pname version;
targetPkgs =
pkgs:
with pkgs;
[
alsa-lib
aprutil
bzip2
dbus
expat
fontconfig
freetype
glib
libGL
libGLU
libarchive
libcap
librsvg
libtool
libuuid
libxcrypt # provides libcrypt.so.1
libxkbcommon
nspr
ocl-icd
opencl-headers
python3
python3.pkgs.numpy
udev
xdg-utils # xdg-open needed to open URLs
libICE
libSM
libX11
libXcomposite
libXcursor
libXdamage
libXext
libXfixes
libXi
libXinerama
libXrandr
libXrender
libXt
libXtst
libXxf86vm
libxcb
xcbutil
xcbutilimage
xcbutilkeysyms
xcbutilrenderutil
xcbutilwm
xkeyboardconfig
zlib
ocl-icd
rocmPackages.clr.icd
libGL
libGLU
]
++ [
mesa-good-pkg
davinci-patched
];
extraPreBwrapCmds = ''
mkdir -p ~/.local/share/DaVinciResolve/Extras || exit 1
'';
extraBwrapArgs = [
''--bind "$HOME"/.local/share/DaVinciResolve/Extras ${davinci-patched}/Extras''
];
runScript = "${lib.getExe pkgs.bash} ${pkgs.writeText "davinci-wrapper" ''
export QT_XKB_CONFIG_ROOT="${pkgs.xkeyboard_config}/share/X11/xkb"
export QT_PLUGIN_PATH="${davinci-patched}/libs/plugins:$QT_PLUGIN_PATH"
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib:/usr/lib32:${davinci-patched}/libs
# Force Resolve to use X11 (via XWayland) to avoid Aquamarine/Hyprland conflicts
export QT_QPA_PLATFORM=xcb
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${davinci-patched}/libs
# Prevent Resolve from trying to talk to the Wayland socket directly
unset WAYLAND_DISPLAY
${davinci-patched}/bin/resolve
''}";
extraInstallCommands = ''
mkdir -p $out/share/applications $out/share/icons/hicolor/128x128/apps
ln -s ${davinci-patched}/share/applications/*.desktop $out/share/applications/
ln -s ${davinci-patched}/graphics/DV_Resolve.png $out/share/icons/hicolor/128x128/apps/davinci-resolve-studio.png
'';
passthru = {
inherit davinci-patched;
updateScript = lib.getExe (
pkgs.writeShellApplication {
name = "update-davinci-resolve";
runtimeInputs = [
pkgs.curl
pkgs.jq
pkgs.common-updater-scripts
];
text = ''
set -o errexit
drv=pkgs/by-name/da/davinci-resolve/package.nix
currentVersion=${lib.escapeShellArg davinci-patched.version}
downloadsJSON="$(curl --fail --silent https://www.blackmagicdesign.com/api/support/us/downloads.json)"
latestLinuxVersion="$(echo "$downloadsJSON" | jq '[.downloads[] | select(.urls.Linux) | .urls.Linux[] | select(.downloadTitle | test("DaVinci Resolve")) | .downloadTitle]' | grep -oP 'DaVinci Resolve \K\d+\.\d+(\.\d+)?' | sort | tail -n 1)"
update-source-version davinci-resolve "$latestLinuxVersion" --source-key=davinci.src
# Since the standard and studio both use the same version we need to reset it before updating studio
sed -i -e "s/""$latestLinuxVersion""/""$currentVersion""/" "$drv"
latestStudioLinuxVersion="$(echo "$downloadsJSON" | jq '[.downloads[] | select(.urls.Linux) | .urls.Linux[] | select(.downloadTitle | test("DaVinci Resolve")) | .downloadTitle]' | grep -oP 'DaVinci Resolve Studio \K\d+\.\d+(\.\d+)?' | sort | tail -n 1)"
update-source-version davinci-resolve-studio "$latestStudioLinuxVersion" --source-key=davinci.src
'';
}
);
};
};
in
{
environment.systemPackages = [ davinci-resolve-studio-cracked ];
}

View File

@@ -4,7 +4,8 @@
pkgs, pkgs,
inputs, inputs,
... ...
}: { }:
{
services.libinput.enable = true; services.libinput.enable = true;
services.displayManager.defaultSession = "hyprland"; services.displayManager.defaultSession = "hyprland";
@@ -20,7 +21,7 @@
extraPackages = with pkgs; [ extraPackages = with pkgs; [
dmenu # application launcher most people use dmenu # application launcher most people use
i3status # gives you the default i3 status bar i3status # gives you the default i3 status bar
xinit xorg.xinit
]; ];
}; };
}; };