Compare commits

..

15 Commits

Author SHA1 Message Date
Ethan Simmons
c3f1f0bfb1 Update ankaa 2025-12-17 11:57:02 -06:00
Ethan Simmons
9eddcb81db Add anki and update 2025-10-30 18:47:55 -05:00
Ethan Simmons
f475232dd4 Add Vintage Story to games 2025-10-30 18:47:32 -05:00
Ethan Simmons
a60f8e3412 Add citrix to alpheratz 2025-09-02 11:51:55 -05:00
Ethan Simmons
170fe3a1dc Update alpheratz 2025-09-02 11:44:22 -05:00
Ethan Simmons
bf25d47f15 Add matlab 2025-09-02 11:44:22 -05:00
Ethan Simmons
f14771fe14 Update alpheratz 2025-09-02 11:44:22 -05:00
Ethan Simmons
ef753f2450 Add temporary workaround for citrix 2025-09-01 19:31:24 -05:00
Ethan Simmons
b4055e9364 Update ankaa 2025-09-01 19:31:13 -05:00
Ethan Simmons
53f8093cdb Update ankaa 2025-08-17 12:25:47 -05:00
Ethan Simmons
cef4d8654a Update alpheratz 2025-08-17 12:20:42 -05:00
Ethan Simmons
6fd520839b Add bluetooth shortcut 2025-07-27 11:43:14 -05:00
Ethan Simmons
11de4c2054 Setup optical drive 2025-07-27 11:43:14 -05:00
Ethan Simmons
b2b8ee0699 Add jp ocr shortcut 2025-07-27 11:43:14 -05:00
Ethan Simmons
748accf147 Add discord for alpheratz 2025-07-27 11:43:14 -05:00
14 changed files with 170 additions and 26 deletions

82
flake.lock generated
View File

@@ -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"
@@ -64,11 +80,11 @@
]
},
"locked": {
"lastModified": 1751824240,
"narHash": "sha256-aDDC0CHTlL7QDKWWhdbEgVPK6KwWt+ca0QkmHYZxMzI=",
"lastModified": 1761845621,
"narHash": "sha256-d+R4MHsGmdebvSMsYUFWONsZSlUbOo8Zq/wjMdMiIac=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "fd9e55f5fac45a26f6169310afca64d56b681935",
"rev": "97e3022a8d2c09313fa49847f6da4d76abcfc72d",
"type": "github"
},
"original": {
@@ -83,11 +99,11 @@
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1751940678,
"narHash": "sha256-t1T/cLWQaMKIz14YkJa39G5DK7GW/aqmLFeITD0AtXM=",
"lastModified": 1761867267,
"narHash": "sha256-b2vU6HzMR26JnHmnkvNZgefyfzAZOi9wLZdA+WOymHU=",
"owner": "ggerganov",
"repo": "llama.cpp",
"rev": "75c91de6e955d5b8f3f28173f5040593e1964eb3",
"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,
@@ -142,11 +177,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1751792365,
"narHash": "sha256-J1kI6oAj25IG4EdVlg2hQz8NZTBNYvIS0l4wpr9KcUo=",
"lastModified": 1761672384,
"narHash": "sha256-o9KF3DJL7g7iYMZq9SWgfS1BFlNbsm6xplRjVlOCkXI=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "1fd8bada0b6117e6c7eb54aad5813023eed37ccb",
"rev": "08dacfca559e1d7da38f3cf05f1f45ee9bfd213c",
"type": "github"
},
"original": {
@@ -158,11 +193,25 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1744868846,
"narHash": "sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs=",
"lastModified": 1754340878,
"narHash": "sha256-lgmUyVQL9tSnvvIvBp7x1euhkkCho7n3TMzgjdvgPoU=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "ebe4301cbd8f81c4f8d3244b3632338bbeb6d49c",
"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": 1751606940,
"narHash": "sha256-KrDPXobG7DFKTOteqdSVeL1bMVitDcy7otpVZWDE6MA=",
"lastModified": 1760998189,
"narHash": "sha256-ee2e1/AeGL5X8oy/HXsZQvZnae6XfEVdstGopKucYLY=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "3633fc4acf03f43b260244d94c71e9e14a2f6e0d",
"rev": "5a7d18b5c55642df5c432aadb757140edfeb70b3",
"type": "github"
},
"original": {

View File

@@ -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
@@ -85,6 +88,7 @@
gui = {
enable = true;
protonmail = true;
secrets = true;
gtk = false;
sway = {
@@ -111,13 +115,14 @@
school = {
enable = true;
citrix = false;
citrix = true;
};
games = {
enable = true;
lutris.enable = true;
minecraft.enable = true;
vintagestory.enable = true;
};
common.nil.enable = true;
@@ -233,20 +238,32 @@
pkgs = import nixpkgs {
inherit system;
overlays = with overlays; [ printrun shadps4 ];
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 {};
}
);
@@ -266,6 +283,7 @@
specialArgs = {
inherit localPackages;
inherit pkgs;
inherit pkgs_stable_tmp;
};
modules = [
{
@@ -284,6 +302,7 @@
home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = {
inherit utils;
inherit localPackages;
systemConfig = config.options;
};

View File

@@ -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

View File

@@ -65,7 +65,10 @@
environment.systemPackages = with pkgs; [
localPackages.x86_64-linux.jhelioviewer
bottles
quartus-prime-lite
matlab
discord
wine
matlab-language-server
];
services.printing.enable = false;
@@ -117,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;
};

View File

@@ -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";

View File

@@ -57,6 +57,7 @@
orca-slicer
qemu
protonvpn-gui
anki
];
services.hardware.openrgb.enable = true;

View File

@@ -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

View File

@@ -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"}
}

View File

@@ -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/$(${pkgs.zenity}/bin/zenity --entry).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";

View File

@@ -14,6 +14,7 @@ in
++ 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 ];

View File

@@ -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

View File

@@ -1,20 +1,21 @@
{ 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.kicad kicad

View File

@@ -34,6 +34,12 @@ 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;

36
pkgs/gazou.nix Normal file
View 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;
}