Compare commits
28 Commits
d68035d1ba
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c3f1f0bfb1 | ||
|
|
9eddcb81db | ||
|
|
f475232dd4 | ||
|
|
a60f8e3412 | ||
|
|
170fe3a1dc | ||
|
|
bf25d47f15 | ||
|
|
f14771fe14 | ||
|
|
ef753f2450 | ||
|
|
b4055e9364 | ||
|
|
53f8093cdb | ||
|
|
cef4d8654a | ||
|
|
6fd520839b | ||
|
|
11de4c2054 | ||
|
|
b2b8ee0699 | ||
|
|
748accf147 | ||
|
|
2ee0e60f05 | ||
|
|
a04a60543d | ||
|
|
1702260451 | ||
|
|
a9b49ffbfb | ||
|
|
e48c699eeb | ||
|
|
76ccbfb451 | ||
|
|
a9338cb8b5 | ||
|
|
746f6b6402 | ||
|
|
cd2f9db375 | ||
|
|
c0af1940a3 | ||
|
|
f4aeaa9f12 | ||
|
|
d61db2ded8 | ||
|
|
dd0df124f9 |
@@ -3,12 +3,21 @@ keys:
|
||||
- &admin_alpheratz age1gdtjn3jgvvvspa86q3lnklflnvyf3s75y2rw23l7nk7hwcsfpg7qkq7msr
|
||||
- &diphda age1rxqyz6watg05r3rzlme7grpgfgezhlt535gdl7psqys2ec8eegmqchfk4d
|
||||
- &alpheratz age1cla0k3yffcelphkrmgz5upc0chgtdef25ne833jeqtapceux59rqkmhxf7
|
||||
- &ankaa age15z4s7nts7ls5h3tu5zesghvnm3kj2qk3dsr004g8rwy578mq4q4qew7wl7
|
||||
creation_rules:
|
||||
- path_regex: secrets/[^/]+\.yaml$
|
||||
key_groups:
|
||||
- age:
|
||||
- *admin_ankaa
|
||||
- *admin_alpheratz
|
||||
- path_regex: secrets/shared/[^/]+\.(yaml|otf)$
|
||||
key_groups:
|
||||
- age:
|
||||
- *admin_ankaa
|
||||
- *admin_alpheratz
|
||||
- *alpheratz
|
||||
- *ankaa
|
||||
- *diphda
|
||||
- path_regex: secrets/ankaa/[^/]+\.yaml$
|
||||
key_groups:
|
||||
- age:
|
||||
|
||||
94
flake.lock
generated
94
flake.lock
generated
@@ -1,5 +1,21 @@
|
||||
{
|
||||
"nodes": {
|
||||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1747046372,
|
||||
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
@@ -43,11 +59,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1742234739,
|
||||
"narHash": "sha256-zFL6zsf/5OztR1NSNQF33dvS1fL/BzVUjabZq4qrtY4=",
|
||||
"lastModified": 1747688870,
|
||||
"narHash": "sha256-ypL9WAZfmJr5V70jEVzqGjjQzF0uCkz+AFQF7n9NmNc=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "f6af7280a3390e65c2ad8fd059cdc303426cbd59",
|
||||
"rev": "d5f1f641b289553927b3801580598d200a501863",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -64,11 +80,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1742416832,
|
||||
"narHash": "sha256-ycok0eJJcoknqaibdv/TEEEOUqovC42XCqbfLDYmnoQ=",
|
||||
"lastModified": 1761845621,
|
||||
"narHash": "sha256-d+R4MHsGmdebvSMsYUFWONsZSlUbOo8Zq/wjMdMiIac=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "eb0f617aecbaf1eff5bacec789891e775af2f5a3",
|
||||
"rev": "97e3022a8d2c09313fa49847f6da4d76abcfc72d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -83,11 +99,11 @@
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1742414517,
|
||||
"narHash": "sha256-CLrAbosJgI1dCsX5ReGJ/mgD64wAU5+Z0WLJpMZKp20=",
|
||||
"lastModified": 1761867267,
|
||||
"narHash": "sha256-b2vU6HzMR26JnHmnkvNZgefyfzAZOi9wLZdA+WOymHU=",
|
||||
"owner": "ggerganov",
|
||||
"repo": "llama.cpp",
|
||||
"rev": "568013d0cd3d5add37c376b3d5e959809b711fc7",
|
||||
"rev": "6eb208d17ea29bb60295d9a2b5e7122dfb8f4b55",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -96,6 +112,25 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-matlab": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1754476755,
|
||||
"narHash": "sha256-vSF0VMEmPMzwNkrXIZwkhOSYmKES9BaDK/LlEe7/q8E=",
|
||||
"owner": "doronbehar",
|
||||
"repo": "nix-matlab",
|
||||
"rev": "0e9c9fb660f9e1a1e4d59fd083e0212a15b513e2",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
"owner": "doronbehar",
|
||||
"repo": "nix-matlab",
|
||||
"type": "gitlab"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1732014248,
|
||||
@@ -126,11 +161,11 @@
|
||||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1742268799,
|
||||
"narHash": "sha256-IhnK4LhkBlf14/F8THvUy3xi/TxSQkp9hikfDZRD4Ic=",
|
||||
"lastModified": 1751274312,
|
||||
"narHash": "sha256-/bVBlRpECLVzjV19t5KMdMFWSwKLtb5RyXdjz3LJT+g=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "da044451c6a70518db5b730fe277b70f494188f1",
|
||||
"rev": "50ab793786d9de88ee30ec4e4c24fb4236fc2674",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -142,11 +177,11 @@
|
||||
},
|
||||
"nixpkgs-unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1742288794,
|
||||
"narHash": "sha256-Txwa5uO+qpQXrNG4eumPSD+hHzzYi/CdaM80M9XRLCo=",
|
||||
"lastModified": 1761672384,
|
||||
"narHash": "sha256-o9KF3DJL7g7iYMZq9SWgfS1BFlNbsm6xplRjVlOCkXI=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "b6eaf97c6960d97350c584de1b6dcff03c9daf42",
|
||||
"rev": "08dacfca559e1d7da38f3cf05f1f45ee9bfd213c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -158,11 +193,25 @@
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1741865919,
|
||||
"narHash": "sha256-4thdbnP6dlbdq+qZWTsm4ffAwoS8Tiq1YResB+RP6WE=",
|
||||
"lastModified": 1754340878,
|
||||
"narHash": "sha256-lgmUyVQL9tSnvvIvBp7x1euhkkCho7n3TMzgjdvgPoU=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "573c650e8a14b2faa0041645ab18aed7e60f0c9a",
|
||||
"rev": "cab778239e705082fe97bb4990e0d24c50924c04",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"id": "nixpkgs",
|
||||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1760596604,
|
||||
"narHash": "sha256-J/i5K6AAz/y5dBePHQOuzC7MbhyTOKsd/GLezSbEFiM=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "3cbe716e2346710d6e1f7c559363d14e11c32a43",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -178,6 +227,7 @@
|
||||
"home-manager-stable": "home-manager-stable",
|
||||
"home-manager-unstable": "home-manager-unstable",
|
||||
"llama-cpp": "llama-cpp",
|
||||
"nix-matlab": "nix-matlab",
|
||||
"nixpkgs-stable": "nixpkgs-stable",
|
||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||
"sops-nix": "sops-nix"
|
||||
@@ -185,14 +235,14 @@
|
||||
},
|
||||
"sops-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
"nixpkgs": "nixpkgs_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1742406979,
|
||||
"narHash": "sha256-r0aq70/3bmfjTP+JZs4+XV5SgmCtk1BLU4CQPWGtA7o=",
|
||||
"lastModified": 1760998189,
|
||||
"narHash": "sha256-ee2e1/AeGL5X8oy/HXsZQvZnae6XfEVdstGopKucYLY=",
|
||||
"owner": "Mic92",
|
||||
"repo": "sops-nix",
|
||||
"rev": "1770be8ad89e41f1ed5a60ce628dd10877cb3609",
|
||||
"rev": "5a7d18b5c55642df5c432aadb757140edfeb70b3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
||||
29
flake.nix
29
flake.nix
@@ -18,6 +18,8 @@
|
||||
|
||||
llama-cpp.url = "github:ggerganov/llama.cpp";
|
||||
|
||||
nix-matlab.url = "gitlab:doronbehar/nix-matlab";
|
||||
|
||||
};
|
||||
|
||||
outputs = inputs@{ self
|
||||
@@ -28,6 +30,7 @@
|
||||
, flake-utils
|
||||
, sops-nix
|
||||
, llama-cpp
|
||||
, nix-matlab
|
||||
, ...
|
||||
}:
|
||||
let
|
||||
@@ -77,9 +80,15 @@
|
||||
};
|
||||
};
|
||||
|
||||
term = {
|
||||
terminal = "kitty";
|
||||
font = "codelia";
|
||||
};
|
||||
|
||||
gui = {
|
||||
enable = true;
|
||||
protonmail = true;
|
||||
secrets = true;
|
||||
gtk = false;
|
||||
|
||||
sway = {
|
||||
@@ -113,6 +122,7 @@
|
||||
enable = true;
|
||||
lutris.enable = true;
|
||||
minecraft.enable = true;
|
||||
vintagestory.enable = true;
|
||||
};
|
||||
|
||||
common.nil.enable = true;
|
||||
@@ -213,7 +223,7 @@
|
||||
|
||||
networking = {
|
||||
firewall = {
|
||||
allowedTCPPorts = [ 80 443 3000 3843 4533 6600 6722 7474 7878 8000 8080 8081 8083 8089 8096 8120 8181 8443 8787 8889 8902 8989 8998 9000 9091 9696 11112 13378 24454 25565 25600 ];
|
||||
allowedTCPPorts = [ 80 443 3000 3843 4533 5030 6600 6722 7474 7878 8000 8080 8081 8083 8089 8096 8120 8181 8443 8787 8889 8902 8989 8998 9000 9091 9696 11112 13378 24454 25565 25600 50300 ];
|
||||
allowedUDPPorts = [ 3478 10001 ];
|
||||
};
|
||||
};
|
||||
@@ -228,19 +238,32 @@
|
||||
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
overlays = with overlays; [ printrun citrix ];
|
||||
overlays = with overlays; [ printrun shadps4 nix-matlab.overlay ];
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
permittedInsecurePackages = [
|
||||
"electron-31.7.7"
|
||||
# TODO: Remove when fixed https://github.com/NixOS/nixpkgs/issues/433004
|
||||
"libsoup-2.74.3"
|
||||
"libxml2-2.13.8"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
# TODO: Remove when Citrix is fixed
|
||||
pkgs_stable_tmp = import nixpkgs-stable {
|
||||
inherit system;
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
};
|
||||
};
|
||||
|
||||
localPackages = pkgs.lib.genAttrs flake-utils.lib.defaultSystems (system: {
|
||||
kickoff-dot-desktop = pkgs.callPackage ./pkgs/kickoff-dot-desktop.nix {};
|
||||
jhelioviewer = pkgs.callPackage ./pkgs/jhelioviewer.nix {};
|
||||
llama-cpp = llama-cpp.packages.${system}.rocm;
|
||||
shadps4 = pkgs.callPackage ./pkgs/shadps4.nix {};
|
||||
gazou = pkgs.callPackage ./pkgs/gazou.nix {};
|
||||
}
|
||||
);
|
||||
|
||||
@@ -260,6 +283,7 @@
|
||||
specialArgs = {
|
||||
inherit localPackages;
|
||||
inherit pkgs;
|
||||
inherit pkgs_stable_tmp;
|
||||
};
|
||||
modules = [
|
||||
{
|
||||
@@ -278,6 +302,7 @@
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.extraSpecialArgs = {
|
||||
inherit utils;
|
||||
inherit localPackages;
|
||||
systemConfig = config.options;
|
||||
};
|
||||
|
||||
|
||||
@@ -31,6 +31,13 @@
|
||||
options = [ "subvol=nix" ];
|
||||
};
|
||||
|
||||
# Remove comments for optical drive in wine
|
||||
# fileSystems."/mnt/drive0" =
|
||||
# { device = "/dev/sr0";
|
||||
# fsType = "auto";
|
||||
# options = [ "ro" "user" "noauto" "unhide" ];
|
||||
# };
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
|
||||
@@ -32,12 +32,43 @@
|
||||
secrets."borgbase/nix-alpheratz" = {
|
||||
owner = "eesim";
|
||||
};
|
||||
|
||||
secrets."Codelia-Regular.otf" = {
|
||||
format = "binary";
|
||||
sopsFile = ../../secrets/shared/Codelia-Regular;
|
||||
owner = "eesim";
|
||||
path = "/home/eesim/.local/share/fonts/Codelia Regular.otf";
|
||||
};
|
||||
|
||||
secrets."Codelia-Bold.otf" = {
|
||||
format = "binary";
|
||||
sopsFile = ../../secrets/shared/Codelia-Bold;
|
||||
owner = "eesim";
|
||||
path = "/home/eesim/.local/share/fonts/Codelia Bold.otf";
|
||||
};
|
||||
|
||||
secrets."Codelia-Italic.otf" = {
|
||||
format = "binary";
|
||||
sopsFile = ../../secrets/shared/Codelia-Italic;
|
||||
owner = "eesim";
|
||||
path = "/home/eesim/.local/share/fonts/Codelia Italic.otf";
|
||||
};
|
||||
|
||||
secrets."Codelia-BoldItalic.otf" = {
|
||||
format = "binary";
|
||||
sopsFile = ../../secrets/shared/Codelia-BoldItalic;
|
||||
owner = "eesim";
|
||||
path = "/home/eesim/.local/share/fonts/Codelia BoldItalic.ttf";
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
localPackages.x86_64-linux.jhelioviewer
|
||||
bottles
|
||||
quartus-prime-lite
|
||||
matlab
|
||||
discord
|
||||
wine
|
||||
matlab-language-server
|
||||
];
|
||||
|
||||
services.printing.enable = false;
|
||||
@@ -64,18 +95,17 @@
|
||||
|
||||
networking.wg-quick.interfaces = {
|
||||
wg0 = {
|
||||
address = [ "10.0.0.2/32" ];
|
||||
address = [ "10.137.175.3/32" ];
|
||||
listenPort = 51820;
|
||||
privateKeyFile = "/run/secrets/wireguard/private";
|
||||
dns = [ "10.0.0.1" ];
|
||||
dns = [ "10.137.175.1" ];
|
||||
autostart = true;
|
||||
|
||||
peers = [
|
||||
{
|
||||
publicKey = "sWdXHlBqH+tAgSl0Tqr46sfKvgFN/vMDiuN08HjzaSg=";
|
||||
presharedKeyFile = "/run/secrets/wireguard/preshared";
|
||||
allowedIPs = [ "0.0.0.0/0" "::/0" ];
|
||||
endpoint = "jellyfin.simmer505.com:51820";
|
||||
endpoint = "mc.simmer505.com:51820";
|
||||
}
|
||||
];
|
||||
};
|
||||
@@ -90,7 +120,7 @@
|
||||
# Define a user account.
|
||||
users.users.eesim = {
|
||||
isNormalUser = true;
|
||||
extraGroups = [ "wheel" "video" "audio" "networkmanager" ];
|
||||
extraGroups = [ "wheel" "video" "audio" "networkmanager" "cdrom" ];
|
||||
shell = pkgs.fish;
|
||||
};
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-amd" "wl" ];
|
||||
boot.extraModulePackages = [ config.boot.kernelPackages.broadcom_sta ];
|
||||
boot.extraModulePackages = [];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/c9d87455-b02f-465d-8d63-1858dc2164fe";
|
||||
|
||||
@@ -16,15 +16,48 @@
|
||||
};
|
||||
};
|
||||
|
||||
sops = {
|
||||
defaultSopsFile = ../../secrets/ankaa/secrets.yaml;
|
||||
age.sshKeyPaths = [ "/etc/ssh/ssh_host_ed25519_key" ];
|
||||
|
||||
secrets."Codelia-Regular.otf" = {
|
||||
format = "binary";
|
||||
sopsFile = ../../secrets/shared/Codelia-Regular;
|
||||
owner = "eesim";
|
||||
path = "/home/eesim/.local/share/fonts/Codelia Regular.otf";
|
||||
};
|
||||
|
||||
secrets."Codelia-Bold.otf" = {
|
||||
format = "binary";
|
||||
sopsFile = ../../secrets/shared/Codelia-Bold;
|
||||
owner = "eesim";
|
||||
path = "/home/eesim/.local/share/fonts/Codelia Bold.otf";
|
||||
};
|
||||
|
||||
secrets."Codelia-Italic.otf" = {
|
||||
format = "binary";
|
||||
sopsFile = ../../secrets/shared/Codelia-Italic;
|
||||
owner = "eesim";
|
||||
path = "/home/eesim/.local/share/fonts/Codelia Italic.otf";
|
||||
};
|
||||
|
||||
secrets."Codelia-BoldItalic.otf" = {
|
||||
format = "binary";
|
||||
sopsFile = ../../secrets/shared/Codelia-BoldItalic;
|
||||
owner = "eesim";
|
||||
path = "/home/eesim/.local/share/fonts/Codelia BoldItalic.ttf";
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
localPackages.x86_64-linux.jhelioviewer
|
||||
localPackages.x86_64-linux.llama-cpp
|
||||
printrun
|
||||
pciutils
|
||||
bottles
|
||||
inkscape
|
||||
orca-slicer
|
||||
qemu
|
||||
protonvpn-gui
|
||||
anki
|
||||
];
|
||||
|
||||
services.hardware.openrgb.enable = true;
|
||||
@@ -63,8 +96,6 @@
|
||||
# Select internationalisation properties.
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
|
||||
programs.ssh.startAgent = true;
|
||||
|
||||
# Define a user account.
|
||||
users.users.eesim = {
|
||||
isNormalUser = true;
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
};
|
||||
|
||||
fileSystems."/media" =
|
||||
{ device = "192.168.1.100:/volume1/Media";
|
||||
{ device = "10.137.177.10:/volume1/Media";
|
||||
fsType = "nfs";
|
||||
};
|
||||
|
||||
|
||||
@@ -10,6 +10,9 @@ vim.keymap.set('n', '<leader>ff', ':FzfLua files<CR>')
|
||||
vim.keymap.set('n', '<leader>fb', ':FzfLua buffers<CR>')
|
||||
vim.keymap.set('n', '<leader>rg', ':FzfLua grep_project<CR>')
|
||||
|
||||
vim.keymap.set('n', 'ga', '<Plug>(EasyAlign)')
|
||||
vim.keymap.set('x', 'ga', '<Plug>(EasyAlign)')
|
||||
|
||||
|
||||
|
||||
vim.keymap.set('i', '<S-Tab>', '<C-d>')
|
||||
|
||||
@@ -14,6 +14,14 @@ iron.setup {
|
||||
python = {
|
||||
command = { "python3" }, -- or { "ipython", "--no-autoindent" }
|
||||
format = require("iron.fts.common").bracketed_paste_python
|
||||
},
|
||||
matlab = {
|
||||
command = {
|
||||
"matlab",
|
||||
"-nosplash",
|
||||
"-nodesktop"
|
||||
},
|
||||
|
||||
}
|
||||
},
|
||||
-- How the repl window will be displayed
|
||||
|
||||
@@ -24,6 +24,16 @@ lspconfig.rust_analyzer.setup {
|
||||
},
|
||||
}
|
||||
|
||||
lspconfig.matlab_ls.setup {
|
||||
capabilities = capabilities,
|
||||
settings = {
|
||||
MATLAB = {
|
||||
indexWorkspace = false,
|
||||
installPath = "",
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
lspconfig.omnisharp.setup {
|
||||
cmd = { "dotnet", "/usr/lib/omnisharp-roslyn/OmniSharp.dll"}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{ lib
|
||||
, pkgs
|
||||
, localPackages
|
||||
, config
|
||||
, systemConfig
|
||||
, utils
|
||||
@@ -109,9 +110,11 @@ in
|
||||
"${modifier}+Shift+0" = "move container to workspace 10";
|
||||
"${modifier}+Shift+e" = "exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'";
|
||||
"${modifier}+Shift+c" = "reload";
|
||||
"${modifier}+Shift+s" = "exec ${pkgs.grim}/bin/grim -g \"$(${pkgs.slurp}/bin/slurp)\" \"/home/eesim/Pictures/$(date +'%s_grim.png')\"";
|
||||
"${modifier}+Shift+s" = "exec 'TMPFILE=\"$(mktemp)\"; ${pkgs.grim}/bin/grim -g \"$(${pkgs.slurp}/bin/slurp)\" \"$TMPFILE\"; mv \"$TMPFILE\" \"/home/eesim/Pictures/$(${pkgs.zenity}/bin/zenity --entry).png\"'";
|
||||
"${modifier}+Shift+o" = "exec '${pkgs.grim}/bin/grim -g \"$(${pkgs.slurp}/bin/slurp)\" - | ${localPackages.x86_64-linux.gazou}/bin/gazou | tail -n +2 | ${pkgs.wl-clipboard}/bin/wl-copy'";
|
||||
"${modifier}+Shift+q" = "kill";
|
||||
"${modifier}+p" = "focus mode_toggle";
|
||||
"${modifier}+Control+b" = "exec bluetoothctl connect 18:3F:70:62:A5:3C";
|
||||
"XF86AudioPause" = "exec playerctl play-pause";
|
||||
"XF86AudioNext" = "exec playerctl next";
|
||||
"XF86AudioPrev" = "exec playerctl previous";
|
||||
@@ -195,7 +198,7 @@ in
|
||||
|
||||
input."type:keyboard" = {
|
||||
xkb_layout = "us,de";
|
||||
xkb_options = "grp:toggle";
|
||||
xkb_options = "grp:lctrl_lalt_toggle,lv3:ralt_switch";
|
||||
};
|
||||
|
||||
output = gui.monitors;
|
||||
|
||||
@@ -15,8 +15,10 @@ in
|
||||
settings = {
|
||||
confirm_os_window_close = 0;
|
||||
};
|
||||
font.name = mkIf (cfg.font == "codelia") "Codelia";
|
||||
};
|
||||
|
||||
|
||||
programs.alacritty = mkIf (cfg.terminal == "alacritty") {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
@@ -12,7 +12,7 @@ in
|
||||
config = {
|
||||
environment.systemPackages = with pkgs; []
|
||||
++ optional cfg.pipewire.enable pulseaudio
|
||||
++ optional cfg.music.enable feishin
|
||||
++ optional cfg.music.enable supersonic
|
||||
++ optional cfg.tools.helvum helvum
|
||||
++ optional cfg.tools.easyeffects easyeffects
|
||||
++ optional cfg.tools.pavucontrol pavucontrol;
|
||||
|
||||
@@ -41,6 +41,11 @@ in
|
||||
main = mkMerge [
|
||||
(mkIf (cfg.caps == "ctrl-esc") { capslock = "overload(control, esc)"; })
|
||||
(mkIf (cfg.caps == "esc") { capslock = "esc"; })
|
||||
{ rightcontrol = "rightcontrol"; }
|
||||
{ rightshift = "rightshift"; }
|
||||
];
|
||||
altgr = mkMerge [
|
||||
{ "-" = "macro(C-S-u 2 0 1 4 space)"; }
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
@@ -9,11 +9,13 @@ with lib; let
|
||||
in
|
||||
{
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs; with localPackages.x86_64-linux; []
|
||||
environment.systemPackages = with pkgs; []
|
||||
++ optional cfg.protonup.enable protonup-qt
|
||||
++ optional cfg.gamescope.enable gamescope
|
||||
++ optional cfg.discord.enable vesktop
|
||||
++ optional cfg.minecraft.enable prismlauncher
|
||||
++ optional cfg.vintagestory.enable vintagestory
|
||||
++ optional cfg.ps4.enable localPackages.x86_64-linux.shadps4
|
||||
++ optionals cfg.lutris.enable [ lutris wine ];
|
||||
|
||||
programs.steam = mkIf cfg.steam.enable {
|
||||
|
||||
@@ -53,8 +53,7 @@ in
|
||||
liberation_ttf
|
||||
noto-fonts
|
||||
noto-fonts-cjk-sans
|
||||
noto-fonts-extra
|
||||
ubuntu_font_family
|
||||
ubuntu-classic
|
||||
vazir-fonts
|
||||
font-awesome
|
||||
corefonts
|
||||
|
||||
@@ -1,20 +1,24 @@
|
||||
{ lib
|
||||
, pkgs
|
||||
, config
|
||||
, localPackages
|
||||
, pkgs_stable_tmp
|
||||
, ...
|
||||
}:
|
||||
|
||||
with lib; let
|
||||
cfg = config.simmer.school;
|
||||
extraCerts = [ ./incommon-rsa-ca2.pem ];
|
||||
citrix = pkgs.citrix_workspace_23_09_0.override { inherit extraCerts; };
|
||||
citrix = pkgs_stable_tmp.citrix_workspace_23_09_0.override { inherit extraCerts; };
|
||||
in
|
||||
{
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
xournalpp
|
||||
libreoffice
|
||||
anki
|
||||
] ++ optional cfg.citrix citrix;
|
||||
]
|
||||
++ optional cfg.citrix citrix
|
||||
++ optional cfg.kicad kicad
|
||||
++ optional cfg.logisim logisim-evolution;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -34,12 +34,24 @@ in
|
||||
default = true;
|
||||
};
|
||||
|
||||
vintagestory.enable = mkOption {
|
||||
description = "Whether to install Vintage Story";
|
||||
type = types.bool;
|
||||
default = false;
|
||||
};
|
||||
|
||||
minecraft.enable = mkOption {
|
||||
description = "Whether to install minecraft launcher";
|
||||
type = types.bool;
|
||||
default = false;
|
||||
};
|
||||
|
||||
ps4.enable = mkOption {
|
||||
description = "Whether to install ps4 emulator";
|
||||
type = types.bool;
|
||||
default = false;
|
||||
};
|
||||
|
||||
gamescope.enable = mkOption {
|
||||
description = "Whether to install gamescope";
|
||||
type = types.bool;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{ lib
|
||||
, pkgs
|
||||
, config
|
||||
, ...
|
||||
}:
|
||||
|
||||
@@ -19,5 +20,15 @@ in
|
||||
type = types.bool;
|
||||
default = false;
|
||||
};
|
||||
kicad = mkOption {
|
||||
description = "Whether to install kicad";
|
||||
type = types.bool;
|
||||
default = cfg.enable;
|
||||
};
|
||||
logisim = mkOption {
|
||||
description = "Whether to install logisim";
|
||||
type = types.bool;
|
||||
default = cfg.enable;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -21,6 +21,12 @@ in
|
||||
type = types.enum [ "alacritty" "kitty" ];
|
||||
default = "alacritty";
|
||||
};
|
||||
|
||||
font = mkOption {
|
||||
description = "Which font to use in terminal";
|
||||
type = types.enum [ "default" "codelia" ];
|
||||
default = "codelia";
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -4,4 +4,5 @@
|
||||
llama-cpp = import ./llama-cpp.nix { inherit inputs; };
|
||||
printrun = import ./printrun.nix { inherit inputs; };
|
||||
citrix = import ./citrix.nix;
|
||||
shadps4 = import ./shadps4.nix;
|
||||
}
|
||||
|
||||
15
overlays/shadps4.nix
Normal file
15
overlays/shadps4.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
final: prev: {
|
||||
shadps4 = prev.shadps4.overrideAttrs (old: {
|
||||
version = "0.6.0";
|
||||
|
||||
src = prev.fetchFromGitHub {
|
||||
owner = "shadps4-emu";
|
||||
repo = "shadps4";
|
||||
rev = "15d10e47ea272b1b4c8bf97f2b3bbb406d34b213";
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-ksIKmijWcRMhCDEi/dodZHiEoIO3CB0BkGn698J7jxI=";
|
||||
};
|
||||
|
||||
patches = [];
|
||||
});
|
||||
}
|
||||
36
pkgs/gazou.nix
Normal file
36
pkgs/gazou.nix
Normal file
@@ -0,0 +1,36 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, pkg-config
|
||||
, tesseract4
|
||||
, leptonica
|
||||
, libsForQt5
|
||||
}:
|
||||
stdenv.mkDerivation {
|
||||
name = "gazou";
|
||||
version = "0.3.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kamui-fin";
|
||||
repo = "gazou";
|
||||
rev = "7dd023fc78566f2911250f4b8550b0a33a943bb3";
|
||||
hash = "sha256-6auc5i6b7r4knzen4TCq2mTdbiv+qCD0mWE3LNyh2J4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [
|
||||
pkg-config
|
||||
tesseract4
|
||||
leptonica
|
||||
libsForQt5.qt5.qtbase
|
||||
libsForQt5.qt5.qtdeclarative
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DGUI=OFF"
|
||||
];
|
||||
|
||||
dontWrapQtApps = true;
|
||||
|
||||
}
|
||||
@@ -11,7 +11,8 @@ rustPlatform.buildRustPackage {
|
||||
hash = "sha256-exMmqOkDKuyAEdda8gG/uF3+tnQzhJnOJK+sEtZbsZc=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-z3apcltBKNovwo+yOHxvzn53PPefr2lEzkGst25fGsM=";
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-4x9kEBnYPhhYej0mNmV7jibw6sH8SxVau9tIkIVTen8=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Smol program to read in relevant desktop files and print them in a kickoff compatible format";
|
||||
|
||||
109
pkgs/shadps4.nix
Normal file
109
pkgs/shadps4.nix
Normal file
@@ -0,0 +1,109 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, llvmPackages_18
|
||||
, cmake
|
||||
, pkg-config
|
||||
, git
|
||||
, qt6
|
||||
, alsa-lib
|
||||
, libpulseaudio
|
||||
, openal
|
||||
, openssl
|
||||
, zlib
|
||||
, libedit
|
||||
, udev
|
||||
, libevdev
|
||||
, SDL2
|
||||
, jack2
|
||||
, sndio
|
||||
, vulkan-headers
|
||||
, vulkan-utility-libraries
|
||||
, vulkan-tools
|
||||
, ffmpeg
|
||||
, fmt
|
||||
, glslang
|
||||
, libxkbcommon
|
||||
, wayland
|
||||
, xorg
|
||||
, sdl3
|
||||
, stb
|
||||
, wayland-protocols
|
||||
, libpng
|
||||
}:
|
||||
stdenv.mkDerivation {
|
||||
pname = "shadps4";
|
||||
version = "0.6.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "shadps4-emu";
|
||||
repo = "shadPS4";
|
||||
rev = "9061028ce588037fa6f467cd2c0740d10ed725ed";
|
||||
hash = "sha256-XhfJx1sDFz+RwhwcBA8W6WV6y1rDDvpyQe3v3NaSu2I=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
llvmPackages_18.clang
|
||||
cmake
|
||||
pkg-config
|
||||
git
|
||||
qt6.wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
alsa-lib
|
||||
libpulseaudio
|
||||
openal
|
||||
openssl
|
||||
zlib
|
||||
libedit
|
||||
udev
|
||||
libevdev
|
||||
SDL2
|
||||
jack2
|
||||
sndio
|
||||
qt6.qtbase
|
||||
qt6.qttools
|
||||
qt6.qtmultimedia
|
||||
|
||||
vulkan-headers
|
||||
vulkan-utility-libraries
|
||||
vulkan-tools
|
||||
|
||||
ffmpeg
|
||||
fmt
|
||||
glslang
|
||||
libxkbcommon
|
||||
wayland
|
||||
xorg.libxcb
|
||||
xorg.xcbutil
|
||||
xorg.xcbutilkeysyms
|
||||
xorg.xcbutilwm
|
||||
sdl3
|
||||
stb
|
||||
qt6.qtwayland
|
||||
wayland-protocols
|
||||
libpng
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
(lib.cmakeBool "ENABLE_QT_GUI" true)
|
||||
(lib.cmakeBool "ENABLE_UPDATER" false)
|
||||
];
|
||||
|
||||
cmakeBuildType = "RelWithDebugInfo";
|
||||
dontStrip = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
install -D -t $out/bin shadps4
|
||||
install -Dm644 $src/.github/shadps4.png $out/share/icons/hicolor/512x512/apps/net.shadps4.shadPS4.png
|
||||
install -Dm644 -t $out/share/applications $src/dist/net.shadps4.shadPS4.desktop
|
||||
install -Dm644 -t $out/share/metainfo $src/dist/net.shadps4.shadPS4.metainfo.xml
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
}
|
||||
31
secrets/shared/Codelia-Bold
Normal file
31
secrets/shared/Codelia-Bold
Normal file
File diff suppressed because one or more lines are too long
31
secrets/shared/Codelia-BoldItalic
Normal file
31
secrets/shared/Codelia-BoldItalic
Normal file
File diff suppressed because one or more lines are too long
31
secrets/shared/Codelia-Italic
Normal file
31
secrets/shared/Codelia-Italic
Normal file
File diff suppressed because one or more lines are too long
31
secrets/shared/Codelia-Regular
Normal file
31
secrets/shared/Codelia-Regular
Normal file
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user