add advcpmv

This commit is contained in:
Tyler Starr 2023-08-04 21:15:34 -07:00
parent 871981ff83
commit ccca33ee16
7 changed files with 44 additions and 3 deletions

View File

@ -7,3 +7,4 @@
- Make kestrel vpn setup automatically - Make kestrel vpn setup automatically
- convert home server to nix? - convert home server to nix?
- Make bookmarks fzf script - Make bookmarks fzf script
- Make windows vm in virt manager

View File

@ -75,6 +75,7 @@
trash-cli trash-cli
unzip unzip
nnn nnn
advcpmv
]; ];
# Enable user services # Enable user services
@ -107,6 +108,7 @@
modules = { modules = {
services = { services = {
samba-client.enable = true; samba-client.enable = true;
vfio.enable = true;
}; };
devel = { devel = {
tooling.enable = true; tooling.enable = true;

View File

@ -8,6 +8,8 @@
chezmoi chezmoi
rbw rbw
zk zk
joplin
joplin-desktop
]; ];
home.stateVersion = "23.05"; home.stateVersion = "23.05";

View File

@ -4,7 +4,7 @@
let cfg = config.modules.services.vfio; let cfg = config.modules.services.vfio;
in { in {
options.modules.services.vfio.enable = lib.mkEnableOption "samba"; options.modules.services.vfio.enable = lib.mkEnableOption "vfio";
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.${user}.extraGroups = [ "qemu-libvirtd" "libvirtd" "kvm" ]; users.users.${user}.extraGroups = [ "qemu-libvirtd" "libvirtd" "kvm" ];
@ -32,11 +32,11 @@ in {
source = "/home/${user}/.local/share/chezmoi/provision/local/gpu-passthrough/qemu"; source = "/home/${user}/.local/share/chezmoi/provision/local/gpu-passthrough/qemu";
mode = "0755"; mode = "0755";
}; };
"libvirt/hooks/qemu.d/win10/prepare/begin/start.sh" = { "libvirt/hooks/qemu.d/win11/prepare/begin/start.sh" = {
source = "/home/${user}/.local/share/chezmoi/provision/local/gpu-passthrough/start.sh"; source = "/home/${user}/.local/share/chezmoi/provision/local/gpu-passthrough/start.sh";
mode = "0755"; mode = "0755";
}; };
"libvirt/hooks/qemu.d/win10/release/end/revert.sh" = { "libvirt/hooks/qemu.d/win11/release/end/revert.sh" = {
source = "/home/${user}/.local/share/chezmoi/provision/local/gpu-passthrough/revert.sh"; source = "/home/${user}/.local/share/chezmoi/provision/local/gpu-passthrough/revert.sh";
mode = "0755"; mode = "0755";
}; };
@ -48,6 +48,10 @@ in {
source = "/home/${user}/.local/share/chezmoi/provision/local/gpu-passthrough/libvirtd.conf"; source = "/home/${user}/.local/share/chezmoi/provision/local/gpu-passthrough/libvirtd.conf";
mode = "0755"; mode = "0755";
}; };
"libvirt/XFX.RX6700XT.12288.210201_1.rom" = {
source = "/home/${user}/.local/share/chezmoi/provision/local/gpu-passthrough/XFX.RX6700XT.12288.210201_1.rom";
mode = "0755";
};
}; };
}; };
} }

View File

@ -3,4 +3,5 @@
*/ */
final: prev: { final: prev: {
sway-scratchpad = final.callPackage ../pkgs/sway-scratchpad.nix {}; sway-scratchpad = final.callPackage ../pkgs/sway-scratchpad.nix {};
advcpmv = final.callPackage ../pkgs/advcpmv.nix {};
} }

View File

@ -0,0 +1,31 @@
{ stdenv, fetchurl, fetchpatch }:
let
advcpmv_owner = "jarun";
advcpmv_version = "0.9";
coreutils_version = "9.1";
coreutils_upstream = "coreutils";
patch_rev = "69d2f9d3c72ec149fc7e06f5154af27db857ebb5";
in
stdenv.mkDerivation rec {
name = "advcpmv";
version = advcpmv_version;
src = fetchurl {
name = "source-${name}-${coreutils_version}.tar.xz";
url = "ftp://ftp.gnu.org/gnu/${coreutils_upstream}/${coreutils_upstream}-${coreutils_version}.tar.xz";
sha256 = "sha256-YaH0ENeLp+fzelpPUObRMgrKMzdUhKMlXt3xejhYBCM=";
};
patches = [
(fetchpatch {
url = "https://raw.githubusercontent.com/${advcpmv_owner}/${name}/${patch_rev}/${name}-${advcpmv_version}-${coreutils_version}.patch";
sha256 = "sha256-d+SRT/R4xmfHLAdOr7m4R3WFiW64P5ZH6iqDvErYCyg=";
})
];
installPhase = ''
install -D "src/cp" "$out/bin/advcp"
install -D "src/mv" "$out/bin/advmv"
'';
}