Compare commits

..

4 Commits

Author SHA1 Message Date
f94f6eab88
a 2023-10-08 09:51:05 +03:00
1b0956f14a
a 2023-09-24 20:11:47 +03:00
82957386a9
a 2023-09-21 21:55:07 +03:00
e32d7813b9
a 2023-09-10 21:40:39 +03:00
33 changed files with 855 additions and 206 deletions

View File

@ -9,11 +9,11 @@
]
},
"locked": {
"lastModified": 1690228878,
"narHash": "sha256-9Xe7JV0krp4RJC9W9W9WutZVlw6BlHTFMiUP/k48LQY=",
"lastModified": 1694793763,
"narHash": "sha256-y6gTE1C9mIoSkymRYyzCmv62PFgy+hbZ5j8fuiQK5KI=",
"owner": "ryantm",
"repo": "agenix",
"rev": "d8c973fd228949736dedf61b7f8cc1ece3236792",
"rev": "572baca9b0c592f71982fca0790db4ce311e3c75",
"type": "github"
},
"original": {
@ -101,11 +101,11 @@
]
},
"locked": {
"lastModified": 1691746062,
"narHash": "sha256-FVVnNxCS2DHdo8mvRVvWZx1n2IWbdRZg+/QScTARaIY=",
"lastModified": 1694631477,
"narHash": "sha256-35SgWnBkWTyyRwVPyUKoShjzXfX0H1+HDdEEjZ/LsXc=",
"owner": "famedly",
"repo": "conduit",
"rev": "6dfb262ddff306b6712ac568aa4d84e9026f9bc9",
"rev": "3bfdae795d4d9ec9aeaac7465e7535ac88e47756",
"type": "gitlab"
},
"original": {
@ -604,6 +604,24 @@
"inputs": {
"nixpkgs-lib": "nixpkgs-lib_3"
},
"locked": {
"lastModified": 1690933134,
"narHash": "sha256-ab989mN63fQZBFrkk4Q8bYxQCktuHmBIBqUG1jl6/FQ=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "59cf3f1447cfc75087e7273b04b31e689a8599fb",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib_4"
},
"locked": {
"lastModified": 1685662779,
"narHash": "sha256-cKDDciXGpMEjP1n6HlzKinN0H+oLmNpgeCTzYnsA2po=",
@ -618,6 +636,24 @@
"type": "github"
}
},
"flake-parts_3": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib_5"
},
"locked": {
"lastModified": 1693611461,
"narHash": "sha256-aPODl8vAgGQ0ZYFIRisxYG5MOGSkIczvu2Cd8Gb9+1Y=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "7f53fdb7bdc5bb237da7fefef12d099e4fd611ca",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-utils": {
"inputs": {
"systems": "systems"
@ -691,21 +727,6 @@
}
},
"flake-utils_5": {
"locked": {
"lastModified": 1656928814,
"narHash": "sha256-RIFfgBuKz6Hp89yRr7+NR5tzIAbn52h8vT6vXkYjZoM=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "7e2a3b3dfd9af950a856d66b0a7d01e3c18aa249",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_6": {
"inputs": {
"systems": "systems_6"
},
@ -731,11 +752,11 @@
"rust-overlay": "rust-overlay_3"
},
"locked": {
"lastModified": 1692735437,
"narHash": "sha256-qg5wfRMcdQesaPf4tTTui2PcMvl2HzIh0hiVd50bVnA=",
"lastModified": 1694822684,
"narHash": "sha256-SVw6wEiMLgbVNED0y3l62Ws3PLzK8qufTRpYbvUjNm4=",
"owner": "helix-editor",
"repo": "helix",
"rev": "546c8ca344afe67add59af65b5548d98975d3687",
"rev": "941dc6c614d684804c3580c4ae8b3c4368aab217",
"type": "github"
},
"original": {
@ -751,11 +772,11 @@
]
},
"locked": {
"lastModified": 1692763155,
"narHash": "sha256-qMrGKZ8c/q/mHO3ZdrcBPwiVVXPLLgXjY98Ejqb5kAA=",
"lastModified": 1694643239,
"narHash": "sha256-pv2k/5FvyirDE8g4TNehzwZ0T4UOMMmqWSQnM/luRtE=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "6a20e40acaebf067da682661aa67da8b36812606",
"rev": "d9b88b43524db1591fb3d9410a21428198d75d49",
"type": "github"
},
"original": {
@ -971,19 +992,71 @@
"type": "github"
}
},
"nixd": {
"nh": {
"inputs": {
"flake-parts": "flake-parts",
"nix-filter": "nix-filter",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1692066861,
"narHash": "sha256-UTA2HZsFDaIR3NkIobH6dpQlGgGsEw1kL1uQhM6bO2g=",
"lastModified": 1694765281,
"narHash": "sha256-Edj2wyiszLXpZ6tXrZY6tJEOLJeGQAYd5cM8XfBPk1s=",
"owner": "viperML",
"repo": "nh",
"rev": "8896f7f3647d3adc24adae3d51793a6837eb2b17",
"type": "github"
},
"original": {
"owner": "viperML",
"repo": "nh",
"type": "github"
}
},
"nix-filter": {
"locked": {
"lastModified": 1687178632,
"narHash": "sha256-HS7YR5erss0JCaUijPeyg2XrisEb959FIct3n2TMGbE=",
"owner": "numtide",
"repo": "nix-filter",
"rev": "d90c75e8319d0dd9be67d933d8eb9d0894ec9174",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "nix-filter",
"type": "github"
}
},
"nix-std": {
"locked": {
"lastModified": 1685917625,
"narHash": "sha256-2manVKofCZrCToVDnDYNvtYUFBYOM5JhdDoNGVY4fq4=",
"owner": "chessai",
"repo": "nix-std",
"rev": "e20af8822b5739434b875643bfc61fe0195ea2fb",
"type": "github"
},
"original": {
"owner": "chessai",
"repo": "nix-std",
"type": "github"
}
},
"nixd": {
"inputs": {
"flake-parts": "flake-parts_2",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1694400214,
"narHash": "sha256-QHESodq9FQpjWshfxmdYePnEAPaNPsYEd3iBe/JYjqk=",
"owner": "nix-community",
"repo": "nixd",
"rev": "d1704af3bc2fffa1cbe70e29d96a1522040aaee5",
"rev": "69b533e8d643c5dcbda7962d4dff808d72165783",
"type": "github"
},
"original": {
@ -1014,11 +1087,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1692373088,
"narHash": "sha256-EPgCecdc9I8aTdmDNoO1l7R72r2WPhZRcesV4nzxBj8=",
"lastModified": 1694710316,
"narHash": "sha256-uRh46iIC86D8BD1wCDA5gRrt+hslUXiD0kx/UjnjBcs=",
"owner": "nixos",
"repo": "nixos-hardware",
"rev": "7f1836531b126cfcf584e7d7d71bf8758bb58969",
"rev": "570256327eb6ca6f7bebe8d93af49459092a0c43",
"type": "github"
},
"original": {
@ -1029,11 +1102,11 @@
},
"nixos-persistence": {
"locked": {
"lastModified": 1690797372,
"narHash": "sha256-GImz19e33SeVcIvBB7NnhbJSbTpFFmNtWLh7Z85Y188=",
"lastModified": 1694622745,
"narHash": "sha256-z397+eDhKx9c2qNafL1xv75lC0Q4nOaFlhaU1TINqb8=",
"owner": "nix-community",
"repo": "impermanence",
"rev": "e3a7acd113903269a1b5c8b527e84ce7ee859851",
"rev": "e9643d08d0d193a2e074a19d4d90c67a874d932e",
"type": "github"
},
"original": {
@ -1095,6 +1168,24 @@
}
},
"nixpkgs-lib_3": {
"locked": {
"dir": "lib",
"lastModified": 1690881714,
"narHash": "sha256-h/nXluEqdiQHs1oSgkOOWF+j8gcJMWhwnZ9PFabN6q0=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "9e1960bc196baf6881340d53dccb203a951745a2",
"type": "github"
},
"original": {
"dir": "lib",
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-lib_4": {
"locked": {
"dir": "lib",
"lastModified": 1685564631,
@ -1112,13 +1203,31 @@
"type": "github"
}
},
"nixpkgs-lib_5": {
"locked": {
"dir": "lib",
"lastModified": 1693471703,
"narHash": "sha256-0l03ZBL8P1P6z8MaSDS/MvuU8E75rVxe5eE1N6gxeTo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "3e52e76b70d5508f3cec70b882a29199f4d1ee85",
"type": "github"
},
"original": {
"dir": "lib",
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-master": {
"locked": {
"lastModified": 1692788033,
"narHash": "sha256-jMXj3av6fm/9cAf8umOVRUXJjN0ygFpFgEOabDYqPRs=",
"lastModified": 1694874640,
"narHash": "sha256-2TGogij/TyUFGIUE7F69CVW2L/u7JsGnDxXV0knX0K0=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "799e2353c404c0d8d5fc35984a8cc29b692fe4fa",
"rev": "624c20171e9473f114f91d6c08f8a4e49ca3752e",
"type": "github"
},
"original": {
@ -1131,11 +1240,11 @@
"nixpkgs-wayland": {
"flake": false,
"locked": {
"lastModified": 1692782111,
"narHash": "sha256-h12nGYCOiJKON+nGSw7FXh5hbe3R26dNx4Whg1yXgck=",
"lastModified": 1694867154,
"narHash": "sha256-9WSzb10vk8pcKydg0RAUa7Z9YMRekVqOrBrEPqZzDvc=",
"owner": "nix-community",
"repo": "nixpkgs-wayland",
"rev": "a110844b51b49839b2d163322bb845160fb12641",
"rev": "0b64693b3e90070f0fd8075b9bd8a255701b1ac9",
"type": "github"
},
"original": {
@ -1192,11 +1301,11 @@
},
"nixpkgs_3": {
"locked": {
"lastModified": 1692638711,
"narHash": "sha256-J0LgSFgJVGCC1+j5R2QndadWI1oumusg6hCtYAzLID4=",
"lastModified": 1694767346,
"narHash": "sha256-5uH27SiVFUwsTsqC5rs3kS7pBoNhtoy9QfTP9BmknGk=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "91a22f76cd1716f9d0149e8a5c68424bb691de15",
"rev": "ace5093e36ab1e95cb9463863491bee90d5a4183",
"type": "github"
},
"original": {
@ -1208,11 +1317,11 @@
},
"nur": {
"locked": {
"lastModified": 1692788777,
"narHash": "sha256-UpNj3pGGxjiFJjI8osih14oT/cdQU7WlB6jqxHdykls=",
"lastModified": 1694866994,
"narHash": "sha256-uo50mKCooOkNvJRBl/O4AOKa2QztMvda0aFppp2QrBE=",
"owner": "nix-community",
"repo": "NUR",
"rev": "cd2e7849222af80ea088d494cadac97658fb8fff",
"rev": "5f8282ce5ce11225ae6cd5fff355685fef0c132e",
"type": "github"
},
"original": {
@ -1354,6 +1463,7 @@
"limbusart": "limbusart",
"musikquad": "musikquad",
"musikspider": "musikspider",
"nh": "nh",
"nixd": "nixd",
"nixinate": "nixinate",
"nixos-hardware": "nixos-hardware",
@ -1362,8 +1472,8 @@
"nixpkgs-master": "nixpkgs-master",
"nixpkgs-wayland": "nixpkgs-wayland",
"nur": "nur",
"steam-tui": "steam-tui",
"stylix": "stylix",
"vfio": "vfio",
"vscode-extensions": "vscode-extensions"
}
},
@ -1495,27 +1605,6 @@
"type": "github"
}
},
"steam-tui": {
"inputs": {
"flake-utils": "flake-utils_5",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1690992836,
"narHash": "sha256-KLf8gMbgt4UstiNGbMW7BnyQJPqP2uL2+0gIdwRYV3w=",
"owner": "dmadisetti",
"repo": "steam-tui",
"rev": "48bcd094b5b77336e20cc357d9172825475537e4",
"type": "github"
},
"original": {
"owner": "dmadisetti",
"repo": "steam-tui",
"type": "github"
}
},
"stylix": {
"inputs": {
"base16": "base16",
@ -1676,20 +1765,42 @@
"type": "github"
}
},
"vscode-extensions": {
"vfio": {
"inputs": {
"flake-compat": "flake-compat_7",
"flake-utils": "flake-utils_6",
"flake-parts": "flake-parts_3",
"nix-std": "nix-std",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1692753310,
"narHash": "sha256-zRgfrBAW5HbsDuNQJ74VLnuP4DvdKCXxcq8Oi+Rtf5E=",
"lastModified": 1696457108,
"narHash": "sha256-aC7zKhCO11ffT/WMuku/YErHmKJRcl3/lz2s2APgD5s=",
"owner": "yusdacra",
"repo": "nixos-vfio",
"rev": "fb9a8c28811fc5b98973d870659e8c1c0e592206",
"type": "github"
},
"original": {
"owner": "yusdacra",
"repo": "nixos-vfio",
"type": "github"
}
},
"vscode-extensions": {
"inputs": {
"flake-compat": "flake-compat_7",
"flake-utils": "flake-utils_5",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1694827048,
"narHash": "sha256-2c1mjR2IHkfk/PoWhBZh4pbSAe34CZmuaUo0B6X3NLw=",
"owner": "nix-community",
"repo": "nix-vscode-extensions",
"rev": "a2e174547826aab2fe4229322611af6038dd5481",
"rev": "bdd7fee1c2b085c15101cae04cf62260d8f77555",
"type": "github"
},
"original": {

View File

@ -53,8 +53,11 @@
limbusart.url = "git+https://git.gaze.systems/dusk/limbusart.git";
limbusart.inputs.nixpkgs.follows = "nixpkgs";
steam-tui.url = "github:dmadisetti/steam-tui";
steam-tui.inputs.nixpkgs.follows = "nixpkgs";
nh.url = "github:viperML/nh";
nh.inputs.nixpkgs.follows = "nixpkgs";
vfio.url = "github:yusdacra/nixos-vfio";
vfio.inputs.nixpkgs.follows = "nixpkgs";
# needed for hyprland setup
# hyprland.url = "github:hyprwm/Hyprland";
@ -99,9 +102,7 @@
generate-firefox-addons =
toString
"${pkgs.generate-firefox-addons}/bin/generate-firefox-addons";
# buildHost = {
# type = "app";
# };
nh = toString "${inputs.nh.packages.${pkgs.system}.default}/bin/nh";
}
)
allPkgs

View File

@ -9,7 +9,11 @@
imports = with inputs;
with nixos-hardware.nixosModules;
[
inputs.agenix.nixosModules.default
# vfio.nixosModules.kvmfr
# vfio.nixosModules.virtualisation
# vfio.nixosModules.vfio
# vfio.nixosModules.libvirtd
agenix.nixosModules.default
nixpkgs.nixosModules.notDetected
nixos-persistence.nixosModule
common-pc-ssd
@ -17,6 +21,7 @@
common-gpu-nvidia
common-gpu-amd
common-cpu-amd
common-cpu-amd-pstate
../../users/root
../../users/patriot
]
@ -54,6 +59,7 @@
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
jack.enable = true;
};
hardware.pulseaudio = {
enable = false;
@ -93,13 +99,13 @@
programs.light.enable = true;
fonts = {
enableDefaultFonts = true;
enableDefaultPackages = true;
fontconfig.enable = true;
fonts = [pkgs.dejavu_fonts];
packages = [pkgs.dejavu_fonts];
};
environment = {
systemPackages = [pkgs.ntfs3g];
sessionVariables.FLAKE = "/etc/nixos";
pathsToLink = ["/share/zsh"];
persistence."${config.system.persistDir}" = {
directories = lib.flatten [
@ -114,8 +120,10 @@
};
};
networking.firewall.allowedUDPPorts = [49152];
networking.firewall.allowedTCPPorts = [7905 7906];
# warframe
networking.firewall.allowedUDPPorts = [4990 4991 4992 4993 4994 4995];
# musikcube
networking.firewall.allowedTCPPorts = [7905 7906] ++ [6695 6696 6697 6698 6699];
# for tailscale
networking.firewall.checkReversePath = "loose";

View File

@ -1,5 +1,19 @@
{
services.auto-cpufreq.enable = true;
services.auto-cpufreq.settings = {
charger = {
governor = "powersave";
scaling_min_freq = 600000;
scaling_max_freq = 3000000;
turbo = "off";
};
battery = {
governor = "powersave";
scaling_min_freq = 400000;
scaling_max_freq = 2000000;
turbo = "off";
};
};
services.tlp.settings = {
CPU_ENERGY_PERF_POLICY_ON_AC = "";
CPU_ENERGY_PERF_POLICY_ON_BAT = "";

View File

@ -1,12 +1,12 @@
{pkgs, ...}: {
boot = {
tmpOnTmpfs = true;
tmp.useTmpfs = true;
loader = {
efi.canTouchEfiVariables = true;
systemd-boot.enable = true;
systemd-boot.configurationLimit = 10;
};
kernelPackages = pkgs.linuxPackages_latest;
kernelPackages = pkgs.linuxPackages_zen;
supportedFilesystems = ["f2fs"];
initrd = {
availableKernelModules = [

View File

@ -0,0 +1,3 @@
{
config.virtualisation.docker.enable = true;
}

View File

@ -0,0 +1 @@
../../../modules/de/gnome/default.nix

View File

@ -0,0 +1,55 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
virt-manager
virtiofsd
looking-glass-client
];
virtualisation = {
spiceUSBRedirection.enable = true;
libvirtd = {
enable = true;
# extraConfig = ''
# user="patriot"
# '';
qemu = {
ovmf.enable = true;
# runAsRoot = true;
# Full is needed for TPM and secure boot emulation
ovmf.packages = [pkgs.OVMFFull.fd];
swtpm.enable = true;
# verbatimConfig = ''
# namespaces = []
# cgroup_device_acl = [ "/dev/vfio/9", "/dev/kvm", "/dev/null" ]
# user = "patriot"
# group = "libvirtd"
# '';
};
};
vfio = {
enable = true;
IOMMUType = "amd";
devices = [
"10de:25a2" # GPU
];
blacklistNvidia = true;
ignoreMSRs = true;
disableEFIfb = false;
};
kvmfr = {
enable = true;
devices = [
{
dimensions = {
width = 1920;
height = 1080;
};
permissions = {
user = "patriot";
group = "kvm";
mode = "0660";
};
}
];
};
};
}

View File

@ -3,9 +3,13 @@
enable = true;
settings = {
RADEON_DPM_PERF_LEVEL_ON_AC = "auto";
RADEON_DPM_PERF_LEVEL_ON_BAT = "low";
RADEON_DPM_STATE_ON_AC = "performance";
RADEON_DPM_PERF_LEVEL_ON_BAT = "auto";
RADEON_DPM_STATE_ON_AC = "balanced";
RADEON_DPM_STATE_ON_BAT = "battery";
PCIE_ASPM_ON_AC = "powersave";
PCIE_ASPM_ON_BAT = "powersupersave";
PLATFORM_PROFILE_ON_AC = "balanced";
PLATFORM_PROFILE_ON_BAT = "low-power";
NMI_WATCHDOG = 0;
};
};

213
hosts/tkaronto/win11.xml Normal file
View File

@ -0,0 +1,213 @@
<domain type='kvm'>
<name>win11</name>
<uuid>92ad85b8-9635-48ed-9abb-697e58f0c569</uuid>
<metadata>
<libosinfo:libosinfo xmlns:libosinfo="http://libosinfo.org/xmlns/libvirt/domain/1.0">
<libosinfo:os id="http://microsoft.com/win/11"/>
</libosinfo:libosinfo>
</metadata>
<memory unit='KiB'>8388608</memory>
<currentMemory unit='KiB'>8388608</currentMemory>
<memoryBacking>
<source type='memfd'/>
<access mode='shared'/>
</memoryBacking>
<vcpu placement='static'>8</vcpu>
<os>
<type arch='x86_64' machine='pc-q35-8.1'>hvm</type>
<loader readonly='yes' type='pflash'>/run/libvirt/nix-ovmf/OVMF_CODE.fd</loader>
<nvram template='/run/libvirt/nix-ovmf/OVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/win11_VARS.fd</nvram>
<boot dev='hd'/>
</os>
<features>
<acpi/>
<apic/>
<hyperv mode='custom'>
<relaxed state='on'/>
<vapic state='on'/>
<spinlocks state='on' retries='8191'/>
</hyperv>
<vmport state='off'/>
</features>
<cpu mode='host-passthrough' check='none' migratable='on'/>
<clock offset='localtime'>
<timer name='rtc' tickpolicy='catchup'/>
<timer name='pit' tickpolicy='delay'/>
<timer name='hpet' present='no'/>
<timer name='hypervclock' present='yes'/>
</clock>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>destroy</on_crash>
<pm>
<suspend-to-mem enabled='no'/>
<suspend-to-disk enabled='no'/>
</pm>
<devices>
<emulator>/run/libvirt/nix-emulators/qemu-system-x86_64</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/persist/home/patriot/disks/win11.qcow2'/>
<target dev='sda' bus='sata'/>
<address type='drive' controller='0' bus='0' target='0' unit='0'/>
</disk>
<controller type='usb' index='0' model='qemu-xhci' ports='15'>
<address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
</controller>
<controller type='pci' index='0' model='pcie-root'/>
<controller type='pci' index='1' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='1' port='0x10'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/>
</controller>
<controller type='pci' index='2' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='2' port='0x11'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/>
</controller>
<controller type='pci' index='3' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='3' port='0x12'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/>
</controller>
<controller type='pci' index='4' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='4' port='0x13'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/>
</controller>
<controller type='pci' index='5' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='5' port='0x14'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x4'/>
</controller>
<controller type='pci' index='6' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='6' port='0x15'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x5'/>
</controller>
<controller type='pci' index='7' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='7' port='0x16'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x6'/>
</controller>
<controller type='pci' index='8' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='8' port='0x17'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x7'/>
</controller>
<controller type='pci' index='9' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='9' port='0x18'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0' multifunction='on'/>
</controller>
<controller type='pci' index='10' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='10' port='0x19'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x1'/>
</controller>
<controller type='pci' index='11' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='11' port='0x1a'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x2'/>
</controller>
<controller type='pci' index='12' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='12' port='0x1b'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x3'/>
</controller>
<controller type='pci' index='13' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='13' port='0x1c'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x4'/>
</controller>
<controller type='pci' index='14' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='14' port='0x1d'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x5'/>
</controller>
<controller type='pci' index='15' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='15' port='0x1e'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x6'/>
</controller>
<controller type='pci' index='16' model='pcie-to-pci-bridge'>
<model name='pcie-pci-bridge'/>
<address type='pci' domain='0x0000' bus='0x06' slot='0x00' function='0x0'/>
</controller>
<controller type='sata' index='0'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
</controller>
<controller type='virtio-serial' index='0'>
<address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
</controller>
<filesystem type='mount' accessmode='passthrough'>
<driver type='virtiofs'/>
<binary path='/run/current-system/sw/bin/virtiofsd'/>
<source dir='/home/patriot/Downloads'/>
<target dir='linux_downloads'/>
<address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
</filesystem>
<interface type='network'>
<mac address='52:54:00:9a:7b:db'/>
<source network='default'/>
<model type='e1000e'/>
<address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
</interface>
<serial type='pty'>
<target type='isa-serial' port='0'>
<model name='isa-serial'/>
</target>
</serial>
<console type='pty'>
<target type='serial' port='0'/>
</console>
<channel type='spicevmc'>
<target type='virtio' name='com.redhat.spice.0'/>
<address type='virtio-serial' controller='0' bus='0' port='1'/>
</channel>
<input type='mouse' bus='virtio'>
<address type='pci' domain='0x0000' bus='0x07' slot='0x00' function='0x0'/>
</input>
<input type='keyboard' bus='virtio'>
<address type='pci' domain='0x0000' bus='0x08' slot='0x00' function='0x0'/>
</input>
<input type='mouse' bus='ps2'/>
<input type='keyboard' bus='ps2'/>
<tpm model='tpm-crb'>
<backend type='emulator' version='2.0'/>
</tpm>
<graphics type='spice' autoport='yes'>
<listen type='address'/>
<image compression='off'/>
<gl enable='no'/>
</graphics>
<sound model='ich9'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x1b' function='0x0'/>
</sound>
<audio id='1' type='spice'/>
<video>
<model type='vga' vram='16384' heads='1' primary='yes'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
</video>
<hostdev mode='subsystem' type='pci' managed='yes'>
<source>
<address domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
</source>
<address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
</hostdev>
<redirdev bus='usb' type='spicevmc'>
<address type='usb' bus='0' port='2'/>
</redirdev>
<redirdev bus='usb' type='spicevmc'>
<address type='usb' bus='0' port='3'/>
</redirdev>
<watchdog model='itco' action='reset'/>
<memballoon model='none'/>
<shmem name='looking-glass'>
<model type='ivshmem-plain'/>
<size unit='M'>32</size>
<address type='pci' domain='0x0000' bus='0x10' slot='0x01' function='0x0'/>
</shmem>
</devices>
</domain>

View File

@ -0,0 +1,18 @@
{config, ...}: {
services.couchdb = {
enable = true;
port = 5999;
configFile = "/var/lib/couchdb/config";
};
services.nginx.virtualHosts."couchdb.gaze.systems" = {
useACMEHost = "gaze.systems";
forceSSL = true;
locations."/".proxyPass = "http://localhost:${toString config.services.couchdb.port}";
# locations."/".extraConfig = ''
# add_header 'Access-Control-Allow-Credentials' 'true';
# add_header 'Access-Control-Allow-Methods' 'GET, PUT, POST, HEAD, DELETE';
# add_header 'Access-Control-Allow-Headers' 'Accept,Authorization,Content-Type,Origin,Referer';
# add_header 'Access-Control-Max-Age' 3600;
# '';
};
}

View File

@ -19,6 +19,7 @@
"matrix.gaze.systems"
"ms.gaze.systems"
"mq.gaze.systems"
"couchdb.gaze.systems"
];
};
certs."limbus.company" = {

View File

@ -42,7 +42,7 @@ in {
whois
bat
fzf
exa
eza
lm_sensors
mkpasswd
bottom
@ -57,7 +57,7 @@ in {
];
shellAliases = let
ifSudo = string: mkIf config.security.sudo.enable string;
inherit (pkgs) git bat exa du-dust;
inherit (pkgs) git bat eza du-dust;
in {
g = pkgBin git;
git-optimize = "${pkgBin git} gc --aggressive --prune=now";
@ -66,11 +66,11 @@ in {
du = "${pkgBin du-dust}";
df = "${coreBin "df"} -h";
free = "${pkgs.procps}/bin/free -h";
ls = pkgBin exa;
l = "${pkgBin exa} -lhg";
la = "${pkgBin exa} -lhg -a";
t = "${pkgBin exa} -lhg -T";
ta = "${pkgBin exa} -lhg -a -T";
ls = pkgBin eza;
l = "${pkgBin eza} -lhg";
la = "${pkgBin eza} -lhg -a";
t = "${pkgBin eza} -lhg -T";
ta = "${pkgBin eza} -lhg -a -T";
n = nixBin;
nf = "${nixBin} flake";
nfu = "${nixBin} flake update";

View File

@ -7,19 +7,19 @@
gnome-keyring.enable = true;
core-shell.enable = true;
core-os-services.enable = true;
at-spi2-core.enable = true;
at-spi2-core.enable = lib.mkForce false;
gnome-browser-connector.enable = true;
gnome-online-accounts.enable = true;
gnome-online-miners.enable = true;
tracker-miners.enable = true;
tracker.enable = true;
gnome-online-accounts.enable = false;
gnome-online-miners.enable = lib.mkForce false;
tracker-miners.enable = false;
tracker.enable = false;
sushi.enable = true;
gnome-remote-desktop.enable = false;
};
services.tumbler.enable = true;
programs = {
geary.enable = lib.mkForce false;
gnome-terminal.enable = true;
gnome-terminal.enable = lib.mkForce false;
evince.enable = true;
};
services.xserver = {
@ -45,6 +45,19 @@
"autovt@tty1".enable = false;
};
services.power-profiles-daemon.enable = false;
environment.systemPackages = with pkgs; [gnomeExtensions.unite gnome.gnome-tweaks ffmpegthumbnailer webp-pixbuf-loader];
environment.gnome.excludePackages = with pkgs; [gnome-console gnome-tour gnome.gnome-maps];
environment.systemPackages = with pkgs; [
gnomeExtensions.unite
gnome.gnome-tweaks
ffmpegthumbnailer
webp-pixbuf-loader
yaru-theme
];
environment.gnome.excludePackages = with pkgs; [
gnome-console
gnome-tour
gnome.gnome-maps
];
# environment.etc."environment.d/10-use-amd.conf".text = ''
# __EGL_VENDOR_LIBRARY_FILENAMES=/run/opengl-driver/glvnd/egl_vendor.d/50_mesa.json
# '';
}

View File

@ -1,10 +1,25 @@
{pkgs, ...}: {
{pkgs, ...}: let
run-sway = pkgs.writeText "run-sway.sh" ''
export _JAVA_AWT_WM_NONREPARENTING=1
export XDG_CURRENT_DESKTOP=sway
export QT_QPA_PLATFORM=wayland
export QT_QPA_PLATFORMTHEME=qt5ct
export QT_WAYLAND_DISABLE_WINDOWDECORATION=1
export GDK_BACKEND=wayland
export WLR_DRM_DEVICES=/dev/dri/card0
export WL_DRM_DEVICES=/dev/dri/card0
sway --unsupported-gpu
'';
in {
services.greetd = {
enable = true;
settings = {
terminal.vt = 1;
default_session = {
command = "${pkgs.greetd.tuigreet}/bin/tuigreet --issue --time --cmd 'sway --unsupported-gpu'";
command = "${pkgs.greetd.tuigreet}/bin/tuigreet --issue --time --cmd 'bash --login ${run-sway}'";
user = "greeter";
};
};

View File

@ -0,0 +1,24 @@
final: prev: {
abaddon = prev.abaddon.overrideAttrs (old: rec {
version = "0.1.12";
src = final.fetchFromGitHub {
owner = "uowuo";
repo = "abaddon";
rev = "v${version}";
sha256 = "sha256-Rz3c6RMZUiKQ0YKKQkCEkelfIGUq+xVmgNskj7uEjGI=";
fetchSubmodules = true;
};
buildInputs =
old.buildInputs
++ (with final; [
miniaudio
libsodium
libopus
spdlog
pcre2
rnnoise
qrcodegen
openssl
]);
});
}

View File

@ -0,0 +1,14 @@
final: prev: {
calf = prev.calf.overrideAttrs (old: {
src = final.fetchFromGitHub {
owner = "calf-studio-gear";
repo = "calf";
rev = "024e9deab2d32b26e90b556d36d9c74f6b0aeb17";
sha256 = "sha256-av6quHkesND9M8vlkOQKLXK4prf+oQxOLANuNsWL+eg=";
};
nativeBuildInputs = old.nativeBuildInputs ++ (with final; [automake autoconf pkg-config libtool]);
configurePhase = ''
$SHELL autogen.sh
'';
});
}

View File

@ -1,14 +0,0 @@
final: prev: {
spotify =
final.runCommand prev.spotify.name {
inherit (prev.spotify) meta;
nativeBuildInputs = [final.makeWrapper];
} ''
shopt -s extglob
mkdir -p $out/bin
ln -sf ${prev.spotify}/!(bin) $out/
ln -sf ${prev.spotify}/bin/* $out/bin/
wrapProgram $out/bin/spotify \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--enable-features=UseOzonePlatform --ozone-platform=wayland}}"
'';
}

View File

@ -1,10 +1,10 @@
pkgs: (
pkgs.lib.getAttrs
[
"fractal-next"
"phantom"
"comic-mono"
"chromium"
"discordo"
"fluidsynth-dssi"
"calf"
]
pkgs
)

View File

@ -0,0 +1,40 @@
{ lib, stdenv, fetchurl, alsa-lib, autoconf, automake, dssi, gtk2, libjack2,
ladspaH, ladspaPlugins, liblo, pkg-config, fluidsynth, rpm2targz, libtool, ... }:
stdenv.mkDerivation rec {
pname = "fluidsynth-dssi";
version = "1.9.9";
src = fetchurl {
url = "https://download.opensuse.org/source/distribution/leap/15.4/repo/oss/src/fluidsynth-dssi-1.9.9+git13012019-bp154.1.42.src.rpm";
sha256 = "sha256-DJSrdxQpjvQTzio6e3p/iSYJWu+AbydyKkeKsRQA6qc=";
};
nativeBuildInputs = [ autoconf automake pkg-config rpm2targz libtool ];
buildInputs = [ alsa-lib dssi gtk2 libjack2 ladspaH ladspaPlugins liblo fluidsynth.dev ];
unpackPhase = ''
rpm2targz $src
tar -xf *.tar.gz
rm *.src.tar.gz
tar -xf *.tar.gz
rm *.diff
rm *.spec
rm *.tar.gz
cd fluidsynth-dssi-*
'';
configurePhase = ''
$SHELL autogen.sh
$SHELL configure
'';
installPhase = ''
mkdir -p $out/bin
mkdir -p $out/lib
cp src/FluidSynth-DSSI_gtk $out/bin
cp src/.libs/* $out/lib
'';
meta = with lib; {
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

24
pkgs-set/pkgs/phantom.nix Normal file
View File

@ -0,0 +1,24 @@
{stdenv, libsForQt5, ...}:
stdenv.mkDerivation {
pname = "phantomstyle";
version = "309c97";
src = builtins.fetchGit {
url = "https://github.com/randrew/phantomstyle.git";
rev = "309c97a955f6cdfb1987d1dd04c34d667e4bfce1";
};
dontWrapQtApps = true;
buildInputs = [libsForQt5.qt5.qtbase];
buildPhase = ''
cd src/styleplugin
qmake && make
'';
installPhase = ''
mkdir -p $out/$qtPluginPrefix/styles
mv libphantomstyleplugin.so $out/$qtPluginPrefix/styles
'';
}

View File

@ -9,13 +9,21 @@
"--ozone-platform-hint=auto"
"--flag-switches-begin"
"--enable-webrtc-pipewire-capturer"
# "--force-dark-mode"
# "--enable-gpu-rasterization"
# "--enable-zero-copy"
# "--ignore-gpu-blocklist"
# "--disable-gpu-driver-bug-workarounds"
"--disable-software-rasterizer"
"--disable-gpu-driver-workarounds"
"--enable-accelerated-video-decode"
"--enable-accelerated-mjpeg-decode"
"--enable-gpu-compositing"
"--enable-oop-rasterization"
"--canvas-oop-rasterization"
"--enable-raw-draw"
"--enable-zero-copy"
"--enable-gpu-rasterization"
"--enable-zero-copy"
"--ignore-gpu-blocklist"
"--disable-gpu-driver-bug-workarounds"
"--ozone-platform-hint=wayland"
"--enable-features=SystemNotifications,WaylandWindowDecorations,WebRTCPipeWireCapturer"
"--enable-features=SystemNotifications,WaylandWindowDecorations,WebRTCPipeWireCapturer,EnableDrDc,CanvasOopRasterization,RawDraw,VaapiVideoDecoder,UseSkiaRenderer"
"--flag-switches-end"
"--disk-cache-dir=\"$XDG_RUNTIME_DIR/chromium-cache\""
];

View File

@ -6,44 +6,45 @@
...
}: {
home.persistence."${config.system.persistDir}${config.home.homeDirectory}".directories = [
".config/discordcanary"
".config/ArmCord"
];
xdg.configFile."discordcanary/settings.json".text = builtins.toJSON {
# openasar = {
# setup = true;
# noTyping = true;
# quickstart = true;
# # theme = builtins.readFile inputs.catppuccin-discord;
# };
SKIP_HOST_UPDATE = true;
IS_MAXIMIZED = true;
IS_MINIMIZED = false;
trayBalloonShown = true;
};
home.packages = let
flags = [
"--flag-switches-begin"
"--enable-features=UseOzonePlatform,WebRTCPipeWireCapturer"
"--flag-switches-end"
"--ozone-platform=wayland"
"--enable-webrtc-pipewire-capturer"
"--disable-gpu-memory-buffer-video-frames"
"--enable-accelerated-mjpeg-decode"
"--enable-accelerated-video"
"--enable-gpu-rasterization"
"--enable-native-gpu-memory-buffers"
"--enable-zero-copy"
"--ignore-gpu-blocklist"
# "--flag-switches-begin"
# "--enable-features=UseOzonePlatform,WebRTCPipeWireCapturer"
# "--flag-switches-end"
# "--ozone-platform=wayland"
# "--enable-webrtc-pipewire-capturer"
# "--disable-gpu-memory-buffer-video-frames"
# "--enable-accelerated-mjpeg-decode"
# "--enable-accelerated-video"
# "--enable-gpu-rasterization"
# "--enable-native-gpu-memory-buffers"
# "--enable-zero-copy"
# "--ignore-gpu-blocklist"
];
pkg =
(pkgs.discord-canary.override {
(pkgs.armcord.override {
nss = pkgs.nss_latest;
# withOpenASAR = true;
})
.overrideAttrs (old: {
preInstall = ''
gappsWrapperArgs+=("--add-flags" "${lib.concatStringsSep " " flags}")
'';
# preInstall = ''
# gappsWrapperArgs+=("--add-flags" "${lib.concatStringsSep " " flags}")
# '';
});
in [pkg];
systemd.user.services.premid = {
Install = {
WantedBy = ["default.target"];
};
Unit = {
Description = "premid";
After = "network.target";
};
Service = {
ExecStart = "${pkgs.premid}/bin/premid";
Restart = "on-failure";
RestartSec = 5;
};
};
}

View File

@ -20,6 +20,9 @@
lockPref("privacy.clearOnShutdown.cookies", false);
lockPref("services.sync.engine.passwords", false);
lockPref("network.cookie.lifetimePolicy", 0);
lockPref("gfx.webrender.all", true);
lockPref("media.ffmpeg.vaapi.enabled", true);
lockPref("media.hardware-video-decoding.force-enabled", true);
'';
extraPolicies = {
CaptivePortal = false;
@ -37,21 +40,6 @@
};
};
};
extensions = with pkgs.nur.repos.rycee.firefox-addons; let
myExtensions =
pkgs.callPackage ./extensions.nix {inherit buildFirefoxXpiAddon;};
in
[
ublock-origin
darkreader
bitwarden
refined-github
stylus
]
++ (with myExtensions; [
catppuccin-mocha-sky
youtube-disable-number-seek
]);
profiles = {
default = {
id = 0;
@ -62,10 +50,25 @@
id = 1;
isDefault = true;
name = "personal";
extensions = with pkgs.nur.repos.rycee.firefox-addons; let
myExtensions =
pkgs.callPackage ./extensions.nix {inherit buildFirefoxXpiAddon;};
in
[
ublock-origin
darkreader
bitwarden
refined-github
]
++ (with myExtensions; [
youtube-disable-number-seek
styl-us
showdex
]);
extraConfig = builtins.readFile (
builtins.fetchurl {
url = "https://raw.githubusercontent.com/arkenfox/user.js/101.0/user.js";
sha256 = "sha256:1mb1l9dgb8mfl70lhwykgfphqnxxi1xw0h3hlgj8jyj6n1mn5v8f";
url = "https://raw.githubusercontent.com/arkenfox/user.js/115.1/user.js";
sha256 = "sha256:0x0xkbhmb53lyfpbc8wmm44dgr4zrn15b2pc6gny08mh5j4ny8m7";
}
);
};

View File

@ -1,4 +1,6 @@
[
{"slug":"catppuccin-mocha-sky"},
{"slug":"youtube-disable-number-seek"}
{"slug":"youtube-disable-number-seek"},
{"slug":"showdex"},
{"slug":"styl-us"}
]

View File

@ -11,20 +11,70 @@
url = "https://addons.mozilla.org/firefox/downloads/file/3954372/catppuccin_dark_sky-2.0.xpi";
sha256 = "d9453ae265608d3a1b17c812d77422ab2aaf357365e527812268a407643efa25";
meta = with lib; {
description = "Firefox theme based on <a href=\"https://outgoing.prod.mozaws.net/v1/110954a3f2718cf03892676379416caed51099b639f643aaf12989b7e698f073/https%3A//github.com/catppuccin/catppuccin\" rel=\"nofollow\">https://github.com/catppuccin/catppuccin</a>";
description = "Firefox theme based on <a href=\"https://prod.outgoing.prod.webservices.mozgcp.net/v1/110954a3f2718cf03892676379416caed51099b639f643aaf12989b7e698f073/https%3A//github.com/catppuccin/catppuccin\" rel=\"nofollow\">https://github.com/catppuccin/catppuccin</a>";
license = licenses.cc-by-30;
mozPermissions = [];
platforms = platforms.all;
};
};
"showdex" = buildFirefoxXpiAddon {
pname = "showdex";
version = "1.1.6";
addonId = "showdex@tize.io";
url = "https://addons.mozilla.org/firefox/downloads/file/4146071/showdex-1.1.6.xpi";
sha256 = "1d608d261c73f8acac4c2f3a878c501d822ae6dc6f0e3f018b07bc6eada646a4";
meta = with lib; {
homepage = "https://github.com/doshidak/showdex";
description = "Pokémon Showdown extension that harnesses the power of parabolic calculus to strategically extract your opponents' Elo.";
mozPermissions = [
"clipboardRead"
"clipboardWrite"
"*://play.pokemonshowdown.com/*"
"*://*.psim.us/*"
"*://play.radicalred.net/*"
];
platforms = platforms.all;
};
};
"styl-us" = buildFirefoxXpiAddon {
pname = "styl-us";
version = "1.5.35";
addonId = "{7a7a4a92-a2a0-41d1-9fd7-1e92480d612d}";
url = "https://addons.mozilla.org/firefox/downloads/file/4160414/styl_us-1.5.35.xpi";
sha256 = "d415ee11fa4a4313096a268e54fd80fa93143345be16f417eb1300a6ebe26ba1";
meta = with lib; {
homepage = "https://add0n.com/stylus.html";
description = "Redesign your favorite websites with Stylus, an actively developed and community driven userstyles manager. Easily install custom themes from popular online repositories, or create, edit, and manage your own personalized CSS stylesheets.";
license = licenses.gpl3;
mozPermissions = [
"tabs"
"webNavigation"
"webRequest"
"webRequestBlocking"
"contextMenus"
"storage"
"unlimitedStorage"
"alarms"
"<all_urls>"
"http://userstyles.org/*"
"https://userstyles.org/*"
];
platforms = platforms.all;
};
};
"youtube-disable-number-seek" = buildFirefoxXpiAddon {
pname = "youtube-disable-number-seek";
version = "1.1";
version = "1.2";
addonId = "{963aa3d4-c342-4dfe-872e-76be742d1bea}";
url = "https://addons.mozilla.org/firefox/downloads/file/3592479/youtube_disable_number_seek-1.1.xpi";
sha256 = "28075f68438242615cbe857e52c3ae1f661447c7d066d4ef4e5076b44efad07a";
url = "https://addons.mozilla.org/firefox/downloads/file/4134869/youtube_disable_number_seek-1.2.xpi";
sha256 = "d6cde501b2603944e36baaa10adb9f24c9214929929c346176d0336d25418259";
meta = with lib; {
description = "Disables 0-9 keyboard shortcuts on YouTube which seek to different times on a video.";
license = licenses.mpl20;
mozPermissions = [
"*://*.youtube.com/*"
"*://*.youtube-nocookie.com/*"
];
platforms = platforms.all;
};
};

View File

@ -21,9 +21,9 @@ in {
};
config = lib.mkIf cfg.enable {
systemd.user.services.musikcubed = {
Install = {
WantedBy = ["multi-user.target"];
};
# Install = {
# WantedBy = ["default.target"];
# };
Unit = {
Description = "musikcubed";
After = "network.target";

View File

@ -1,4 +1,8 @@
{config, pkgs, ...}: {
{
config,
pkgs,
...
}: {
home.packages = [pkgs.ripcord];
home.persistence."${config.system.persistDir}${config.home.homeDirectory}".directories = [
".local/share/Ripcord"

View File

@ -32,7 +32,10 @@
config = {
bars = [];
gaps.smartBorders = "on";
menu = mkRofiCmd ["-show" "drun"];
menu = mkRofiCmd [
"-show"
"drun"
];
modifier = "Mod4";
terminal = config.settings.terminal.binary;
keybindings = let
@ -102,10 +105,10 @@
output = {
"*" = {
bg = "${config.stylix.image} fill";
# adaptive_sync = "on";
};
"eDP-1" = {
scale = "2";
adaptive_sync = "on";
};
"HDMI-A-1" = {
mode = "1920x1080@60.000Hz";

View File

@ -23,6 +23,7 @@ in {
"nix-build-key-access"
(l.optional nixosConfig.networking.networkmanager.enable "networkmanager")
(l.optional nixosConfig.virtualisation.docker.enable "docker")
(l.optionals nixosConfig.virtualisation.libvirtd.enable ["libvirtd" "kvm"])
];
shell = pkgs.zsh;
hashedPassword = "$6$spzqhAyJfhHy$iHgLBlhjGn1l8PnbjJdWTn1GPvcjMqYNKUzdCe/7IrX6sHNgETSr/Nfpdmq9FCXLhrAfwHOd/q/8SvfeIeNX4/";
@ -66,7 +67,7 @@ in {
dconf.enable = true;
weylus.users = ["patriot"];
java = {
enable = true;
enable = false;
package = pkgs.jre8;
};
};
@ -105,15 +106,15 @@ in {
modulesToEnable = l.flatten [
# wm
# ["hyprland" "foot"]
["sway" "foot"]
["sway" "wayland" "foot"]
# desktop stuff
["wayland"]
["chromium"]
# ["wayland" "foot"]
["obsidian" "firefox"]
# cli stuff
["zoxide" "zsh" "fzf" "starship" "direnv"]
# dev stuff
["helix" "git" "ssh"]
["musikcube" "musikcubed"]
# ["musikcube" "musikcubed"]
];
in
l.flatten [
@ -144,13 +145,13 @@ in {
"zsh"
"keyrings"
# "lutris"
"Terraria"
"PrismLauncher"
# "Terraria"
# "PrismLauncher"
]
++ mkPaths ".config" [
# "lutris"
"dconf"
"musikcube"
"retroarch"
];
files = l.flatten [
".config/gnome-initial-setup-done"
@ -173,6 +174,23 @@ in {
gtk.enable = true;
x11.enable = true;
};
gtk.enable = true;
gtk.theme.package = pkgs.yaru-theme;
gtk.theme.name = "Yaru-dark";
home.sessionVariables.QT_QPA_PLATFORMTHEME = "qt5ct";
xdg.configFile = {
"environment.d/20-apply-qtct.conf".text = ''
QT_QPA_PLATFORMTHEME=qt5ct
'';
};
qt.enable = true;
qt.platformTheme = "qtct";
qt.style.name = "phantom";
qt.style.package = pkgs.phantom;
stylix.targets.gnome.enable = lib.mkForce false;
stylix.targets.gtk.enable = lib.mkForce false;
home = {
homeDirectory = nixosConfig.users.users.patriot.home;
@ -190,20 +208,34 @@ in {
ffmpeg
mupdf
xdg-utils
# lutris
protontricks
# fractal-next
# obs-studio
libreoffice-fresh
helvum
nix-output-monitor
inputs.nh.packages.${pkgs.system}.default
# prismlauncher
steamPackages.steamcmd
steam-tui
# steamPackages.steamcmd
# steam-tui
gtkcord4
gh
transmission_4-gtk
# yabridge
# yabridgectl
# bitwig-studio
# reaper
# ardour
(retroarch.override {
cores = with libretro; [desmume melonds];
})
# wineWowPackages.stagingFull
# lutris
distrobox
];
};
programs = {
musikcube.enable = true;
# musikcube.enable = true;
command-not-found.enable =
nixosConfig.programs.command-not-found.enable;
git = {
@ -217,10 +249,10 @@ in {
};
};
services = {
musikcubed = {
enable = true;
settings.password = "somethingidk";
};
# musikcubed = {
# enable = true;
# settings.password = "somethingidk";
# };
gpg-agent = let
defaultCacheTtl = 3600 * 6;
maxCacheTtl = 3600 * 24;

View File

@ -2,6 +2,7 @@
inputs,
config,
pkgs,
lib,
...
}: {
imports = [

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 MiB

After

Width:  |  Height:  |  Size: 13 MiB