2024-03-26 20:47:54 -07:00
|
|
|
{ config, lib, pkgs, inputs, ... }:
|
2023-08-05 21:03:24 -07:00
|
|
|
|
2024-03-26 20:47:54 -07:00
|
|
|
let
|
|
|
|
artPkgs = lib.attrVals [
|
|
|
|
#"armorpaint"
|
|
|
|
"blender"
|
|
|
|
"gimp"
|
|
|
|
"inkscape"
|
|
|
|
"krita"
|
|
|
|
#"prusa-slicer"
|
|
|
|
] pkgs;
|
|
|
|
handheldPkgs = lib.attrVals [
|
|
|
|
"chatty"
|
|
|
|
"gnome-text-editor"
|
|
|
|
"megapixels"
|
|
|
|
] pkgs;
|
|
|
|
pcPkgs = lib.attrVals [
|
2024-02-01 20:56:02 -08:00
|
|
|
#osu-lazer
|
2024-03-26 20:47:54 -07:00
|
|
|
"dracula-theme"
|
|
|
|
"wl-clipboard"
|
|
|
|
"brightnessctl"
|
|
|
|
"powertop"
|
|
|
|
"easyeffects"
|
|
|
|
"mutt-wizard"
|
|
|
|
"gamescope"
|
|
|
|
"cyrus-sasl-xoauth2"
|
|
|
|
"libnotify"
|
|
|
|
"networkmanager-openvpn"
|
2024-01-20 17:53:24 -08:00
|
|
|
# temporary home manager things
|
2024-03-26 20:47:54 -07:00
|
|
|
"inotify-tools"
|
|
|
|
"eww"
|
|
|
|
"jq"
|
|
|
|
"texliveFull"
|
|
|
|
"pandoc"
|
|
|
|
"img2pdf"
|
|
|
|
"socat"
|
|
|
|
"libimobiledevice"
|
|
|
|
"ifuse"
|
|
|
|
] pkgs ++ [ inputs.osu-nixos pkgs.wineWowPackages.stableFull ];
|
|
|
|
serverPkgs = lib.attrVals [
|
|
|
|
#"package"
|
|
|
|
] pkgs;
|
|
|
|
in
|
|
|
|
{
|
|
|
|
options = {
|
|
|
|
stitchyconf = {
|
|
|
|
form = lib.mkOption {
|
|
|
|
default = "pc";
|
|
|
|
description = "Add moar packages I don't need";
|
|
|
|
type = lib.types.enum [ "pc" "handheld" "server" ];
|
|
|
|
};
|
|
|
|
artPkgs.enable = lib.mkEnableOption "Standard Linux Creative Suite";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
config = {
|
|
|
|
environment.systemPackages = (lib.attrVals [
|
|
|
|
"btop"
|
|
|
|
"eza"
|
|
|
|
"fd"
|
|
|
|
"git"
|
|
|
|
"glib"
|
|
|
|
"gnumake"
|
|
|
|
"gnupg"
|
2024-05-03 02:39:40 -07:00
|
|
|
"p7zip"
|
2024-03-26 20:47:54 -07:00
|
|
|
"pinentry"
|
|
|
|
"neofetch"
|
|
|
|
"wget"
|
|
|
|
"zoxide"
|
|
|
|
] pkgs)
|
|
|
|
++ (lib.optionals config.stitchyconf.artPkgs.enable artPkgs)
|
|
|
|
++ (lib.optionals (config.stitchyconf.form == "pc") pcPkgs)
|
|
|
|
++ (lib.optionals (config.stitchyconf.form == "handheld") handheldPkgs)
|
|
|
|
++ (lib.optionals (config.stitchyconf.form == "server") serverPkgs);
|
2023-08-05 21:03:24 -07:00
|
|
|
|
2024-03-26 20:47:54 -07:00
|
|
|
# To-do figure out how to section these off
|
|
|
|
programs = {
|
|
|
|
neovim = {
|
|
|
|
enable = true;
|
|
|
|
viAlias = true;
|
|
|
|
vimAlias = true;
|
|
|
|
defaultEditor = true;
|
|
|
|
configure = {
|
|
|
|
customRC = builtins.readFile ../config/nvim/init.vim;
|
|
|
|
packages.myVimPackage = with pkgs.vimPlugins; {
|
|
|
|
start = [
|
|
|
|
nvim-lspconfig
|
|
|
|
nvim-cmp
|
|
|
|
cmp-nvim-lsp
|
|
|
|
luasnip
|
|
|
|
cmp_luasnip
|
|
|
|
tokyonight-nvim
|
|
|
|
vim-lsp-cxx-highlight
|
|
|
|
typst-vim
|
|
|
|
];
|
|
|
|
};
|
2024-03-15 15:22:20 -07:00
|
|
|
};
|
2024-03-26 20:47:54 -07:00
|
|
|
};
|
|
|
|
nix-ld.enable = true;
|
|
|
|
virt-manager.enable = true;
|
|
|
|
zsh.enable = true;
|
|
|
|
};
|
2024-03-15 15:22:20 -07:00
|
|
|
|
2024-03-26 20:47:54 -07:00
|
|
|
nixpkgs.overlays = [
|
|
|
|
(final: prev: {
|
|
|
|
# Because Luck Smith hasn't released in 2 years
|
|
|
|
mutt-wizard = prev.mutt-wizard.overrideAttrs (old: {
|
|
|
|
src = prev.fetchFromGitHub {
|
|
|
|
owner = "LukeSmithxyz";
|
|
|
|
repo = "mutt-wizard";
|
|
|
|
rev = "a8863a750a360bad6759f5f2c4df5d2001b31e18";
|
|
|
|
hash = "sha256-8zPkzQ1Tt9t8G+uCKybBm4yMqfF2y4L7nmuaWWz9t6s=";
|
|
|
|
};
|
|
|
|
});
|
|
|
|
})
|
|
|
|
];
|
2023-08-05 21:03:24 -07:00
|
|
|
|
2024-03-26 20:47:54 -07:00
|
|
|
fonts.packages = lib.attrVals [
|
|
|
|
"noto-fonts"
|
|
|
|
"noto-fonts-emoji"
|
|
|
|
"liberation_ttf"
|
|
|
|
"nerdfonts"
|
|
|
|
"ipafont"
|
|
|
|
] pkgs;
|
|
|
|
};
|
2023-08-05 21:03:24 -07:00
|
|
|
}
|