get rid of old config
This commit is contained in:
parent
a9732e2ab4
commit
e7ef12787b
33 changed files with 0 additions and 2265 deletions
|
@ -1,42 +0,0 @@
|
||||||
{nixos-hardware, ...}: let
|
|
||||||
password = "$y$j9T$g/a4KaQ5VitWI9ZtAh9i3/$wjejk5W8LMc0gaVgw69kwrKLqBgZ95ekaOl/GaTOZVC";
|
|
||||||
in {
|
|
||||||
imports = [
|
|
||||||
nixos-hardware.nixosModules.lenovo-thinkpad-x270
|
|
||||||
./hardware-configuration.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
# Don't change!
|
|
||||||
system.stateVersion = "23.05";
|
|
||||||
home-manager.users.buffet.home.stateVersion = "23.05";
|
|
||||||
|
|
||||||
users.users.buffet.hashedPassword = password;
|
|
||||||
users.users.root.hashedPassword = password;
|
|
||||||
|
|
||||||
networking.hostName = "alice";
|
|
||||||
|
|
||||||
services = {
|
|
||||||
tlp = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
settings = {
|
|
||||||
START_CHARGE_THRESH_BAT0 = 40;
|
|
||||||
STOP_CHARGE_THRESH_BAT0 = 60;
|
|
||||||
|
|
||||||
START_CHARGE_THRESH_BAT1 = 40;
|
|
||||||
STOP_CHARGE_THRESH_BAT1 = 60;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
keyd = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
main = {
|
|
||||||
"102nd" = "layer(shift)"; # < as shift
|
|
||||||
"enter" = "\\";
|
|
||||||
"\\" = "enter";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,64 +0,0 @@
|
||||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
|
||||||
# and may be overwritten by future invocations. Please make changes
|
|
||||||
# to /etc/nixos/configuration.nix instead.
|
|
||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
modulesPath,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [
|
|
||||||
(modulesPath + "/installer/scan/not-detected.nix")
|
|
||||||
];
|
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = ["xhci_pci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc"];
|
|
||||||
boot.initrd.kernelModules = [];
|
|
||||||
boot.kernelModules = [];
|
|
||||||
boot.extraModulePackages = [];
|
|
||||||
|
|
||||||
fileSystems."/" = {
|
|
||||||
device = "/dev/disk/by-uuid/ad5a4aba-eb04-45e7-874e-375e7a9e4ea0";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = ["subvol=@"];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/persist" = {
|
|
||||||
device = "/dev/disk/by-uuid/ad5a4aba-eb04-45e7-874e-375e7a9e4ea0";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = ["subvol=@persist"];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/nix" = {
|
|
||||||
device = "/dev/disk/by-uuid/ad5a4aba-eb04-45e7-874e-375e7a9e4ea0";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = ["subvol=@nix"];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
|
||||||
device = "/dev/disk/by-uuid/46F6-8161";
|
|
||||||
fsType = "vfat";
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/old" = {
|
|
||||||
device = "/dev/disk/by-uuid/ad5a4aba-eb04-45e7-874e-375e7a9e4ea0";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = ["subvol=@old"];
|
|
||||||
};
|
|
||||||
|
|
||||||
swapDevices = [
|
|
||||||
{device = "/dev/disk/by-uuid/2df05abc-60cb-4269-86ae-7c16a4a05369";}
|
|
||||||
];
|
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
|
||||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
|
||||||
# still possible to use this option, but it's recommended to use it in conjunction
|
|
||||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
|
||||||
networking.useDHCP = lib.mkDefault true;
|
|
||||||
# networking.interfaces.enp0s31f6.useDHCP = lib.mkDefault true;
|
|
||||||
# networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true;
|
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
|
||||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
|
||||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
|
||||||
}
|
|
159
common.nix
159
common.nix
|
@ -1,159 +0,0 @@
|
||||||
{pkgs, ...}: {
|
|
||||||
imports = [
|
|
||||||
./programs/bash.nix
|
|
||||||
./programs/borg.nix
|
|
||||||
./programs/cargo.nix
|
|
||||||
./programs/firefox.nix
|
|
||||||
./programs/foot.nix
|
|
||||||
./programs/git.nix
|
|
||||||
./programs/gpg.nix
|
|
||||||
./programs/ime.nix
|
|
||||||
./programs/keyd.nix
|
|
||||||
./programs/lsd.nix
|
|
||||||
./programs/mako.nix
|
|
||||||
./programs/newsboat.nix
|
|
||||||
./programs/nvim.nix
|
|
||||||
./programs/pipewire.nix
|
|
||||||
./programs/sbcl.nix
|
|
||||||
./programs/sioyek.nix
|
|
||||||
./programs/sway.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
gitFull
|
|
||||||
neovim
|
|
||||||
];
|
|
||||||
|
|
||||||
fonts.fonts = with pkgs; [
|
|
||||||
apl386
|
|
||||||
dejavu_fonts
|
|
||||||
noto-fonts
|
|
||||||
noto-fonts-cjk
|
|
||||||
];
|
|
||||||
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
home = {
|
|
||||||
sessionVariables = {
|
|
||||||
ANKI_WAYLAND = 1;
|
|
||||||
};
|
|
||||||
|
|
||||||
packages = with pkgs; [
|
|
||||||
unstable.anki
|
|
||||||
|
|
||||||
SDL2
|
|
||||||
SDL2.dev
|
|
||||||
alejandra
|
|
||||||
bear
|
|
||||||
black
|
|
||||||
c2ffi
|
|
||||||
cage
|
|
||||||
cairo
|
|
||||||
chromium
|
|
||||||
ed
|
|
||||||
gcc
|
|
||||||
gnumake
|
|
||||||
mpv
|
|
||||||
python3
|
|
||||||
|
|
||||||
cargo
|
|
||||||
cargo-crev
|
|
||||||
cargo-limit
|
|
||||||
mosh
|
|
||||||
cargo-nextest
|
|
||||||
du-dust
|
|
||||||
fd
|
|
||||||
gdb
|
|
||||||
github-cli
|
|
||||||
htop
|
|
||||||
hyperfine
|
|
||||||
jq
|
|
||||||
kcachegrind
|
|
||||||
linuxPackages.perf
|
|
||||||
man-pages
|
|
||||||
man-pages-posix
|
|
||||||
okular
|
|
||||||
pavucontrol
|
|
||||||
radare2
|
|
||||||
ripgrep
|
|
||||||
rr
|
|
||||||
rustfmt
|
|
||||||
strace
|
|
||||||
tokei
|
|
||||||
trash-cli
|
|
||||||
tree
|
|
||||||
valgrind
|
|
||||||
wget
|
|
||||||
wl-clipboard
|
|
||||||
|
|
||||||
(luajit.withPackages (ps:
|
|
||||||
with ps; [
|
|
||||||
fennel
|
|
||||||
inspect
|
|
||||||
luv
|
|
||||||
]))
|
|
||||||
|
|
||||||
(retroarch.override {
|
|
||||||
cores = with libretro; [
|
|
||||||
genesis-plus-gx
|
|
||||||
];
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
pointerCursor = {
|
|
||||||
package = pkgs.phinger-cursors;
|
|
||||||
name = "phinger-cursors-light";
|
|
||||||
gtk.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.direnv = {
|
|
||||||
enable = true;
|
|
||||||
nix-direnv.enable = true;
|
|
||||||
enableBashIntegration = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
users.users.buffet = {
|
|
||||||
isNormalUser = true;
|
|
||||||
uid = 1000;
|
|
||||||
extraGroups = [
|
|
||||||
"docker"
|
|
||||||
"networkmanager"
|
|
||||||
"sway"
|
|
||||||
"uinput"
|
|
||||||
"wheel"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
systemd.coredump.enable = true;
|
|
||||||
|
|
||||||
hardware = {
|
|
||||||
bluetooth.enable = true;
|
|
||||||
uinput.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
virtualisation = {
|
|
||||||
docker.enable = true;
|
|
||||||
libvirtd.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
powerManagement = {
|
|
||||||
enable = true;
|
|
||||||
powertop.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
services = {
|
|
||||||
earlyoom = {
|
|
||||||
enable = true;
|
|
||||||
enableNotifications = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
mullvad-vpn = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.mullvad-vpn; # enable gui
|
|
||||||
};
|
|
||||||
|
|
||||||
systembus-notify.enable = true;
|
|
||||||
upower.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,30 +0,0 @@
|
||||||
{lib, ...}: let
|
|
||||||
password = "$6$FHwMlUwmRdAsPqS4$4XND0L0EEVf2Mhc/tvo6y3ZLIrMTOlsIZrG3w69EeXvtVZhdeNyoDOkPNIe.GBB8.PrchuUKDacqbvcvyuPkt0";
|
|
||||||
in {
|
|
||||||
imports = [
|
|
||||||
./hardware-configuration.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
# Don't change!
|
|
||||||
system.stateVersion = "22.05";
|
|
||||||
home-manager.users.buffet.home.stateVersion = "22.05";
|
|
||||||
|
|
||||||
users.users.buffet.hashedPassword = password;
|
|
||||||
users.users.root.hashedPassword = password;
|
|
||||||
|
|
||||||
networking.hostName = "fanya";
|
|
||||||
|
|
||||||
services.tlp.enable = true;
|
|
||||||
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
programs.foot = let
|
|
||||||
theme = import ../theme.nix;
|
|
||||||
in {
|
|
||||||
settings.main.font = lib.mkForce "${theme.font.family}:size=${toString (theme.font.size - 1)}";
|
|
||||||
};
|
|
||||||
|
|
||||||
wayland.windowManager.sway = {
|
|
||||||
config.gaps.inner = lib.mkForce 5;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,62 +0,0 @@
|
||||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
|
||||||
# and may be overwritten by future invocations. Please make changes
|
|
||||||
# to /etc/nixos/configuration.nix instead.
|
|
||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
modulesPath,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [
|
|
||||||
(modulesPath + "/installer/scan/not-detected.nix")
|
|
||||||
];
|
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc"];
|
|
||||||
boot.initrd.kernelModules = [];
|
|
||||||
boot.kernelModules = ["kvm-intel"];
|
|
||||||
boot.extraModulePackages = [];
|
|
||||||
|
|
||||||
fileSystems."/" = {
|
|
||||||
device = "/dev/disk/by-uuid/d2c87f01-cdb7-4871-ae9d-c3a843e1199d";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = ["subvol=@"];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/old" = {
|
|
||||||
device = "/dev/disk/by-uuid/d2c87f01-cdb7-4871-ae9d-c3a843e1199d";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = ["subvol=@old"];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/persist" = {
|
|
||||||
device = "/dev/disk/by-uuid/d2c87f01-cdb7-4871-ae9d-c3a843e1199d";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = ["subvol=@persist"];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/nix" = {
|
|
||||||
device = "/dev/disk/by-uuid/d2c87f01-cdb7-4871-ae9d-c3a843e1199d";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = ["subvol=@nix"];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
|
||||||
device = "/dev/disk/by-uuid/29E0-A9D9";
|
|
||||||
fsType = "vfat";
|
|
||||||
};
|
|
||||||
|
|
||||||
swapDevices = [
|
|
||||||
{device = "/dev/disk/by-uuid/c7344d44-0e66-461d-ba99-a177a8efe982";}
|
|
||||||
];
|
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
|
||||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
|
||||||
# still possible to use this option, but it's recommended to use it in conjunction
|
|
||||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
|
||||||
networking.useDHCP = lib.mkDefault true;
|
|
||||||
# networking.interfaces.enp0s25.useDHCP = lib.mkDefault true;
|
|
||||||
# networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true;
|
|
||||||
|
|
||||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
|
||||||
}
|
|
367
flake.lock
367
flake.lock
|
@ -1,367 +0,0 @@
|
||||||
{
|
|
||||||
"nodes": {
|
|
||||||
"agenix": {
|
|
||||||
"inputs": {
|
|
||||||
"darwin": "darwin",
|
|
||||||
"home-manager": "home-manager",
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1690228878,
|
|
||||||
"narHash": "sha256-9Xe7JV0krp4RJC9W9W9WutZVlw6BlHTFMiUP/k48LQY=",
|
|
||||||
"owner": "ryantm",
|
|
||||||
"repo": "agenix",
|
|
||||||
"rev": "d8c973fd228949736dedf61b7f8cc1ece3236792",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "ryantm",
|
|
||||||
"repo": "agenix",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"apl386": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1646646198,
|
|
||||||
"narHash": "sha256-oHk4e7NRgAjGtZzQmZToYz7wCZETaj7/yRwZMeeYF2M=",
|
|
||||||
"owner": "abrudz",
|
|
||||||
"repo": "APL386",
|
|
||||||
"rev": "6332c9dbb588946a0e8c9d7984dd0c003eeea266",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "abrudz",
|
|
||||||
"repo": "APL386",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"cmp-conventionalcommits": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1665962366,
|
|
||||||
"narHash": "sha256-PAEWX0U8qbBwC3DqfCrDDlTLoIRIlcbwS1eDu3yarTc=",
|
|
||||||
"owner": "davidsierradz",
|
|
||||||
"repo": "cmp-conventionalcommits",
|
|
||||||
"rev": "a4dfacf0601130b7f8afa7c948d735c27802fb7f",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "davidsierradz",
|
|
||||||
"repo": "cmp-conventionalcommits",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"cmp-git": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1685409535,
|
|
||||||
"narHash": "sha256-McIYDGXu+tSaY/U6eu1XouSHto/mSpJ/i4Z4UKYa+mk=",
|
|
||||||
"owner": "petertriho",
|
|
||||||
"repo": "cmp-git",
|
|
||||||
"rev": "f900a4cf117300fdc3ba31d26f8b6223ccd9c574",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "petertriho",
|
|
||||||
"repo": "cmp-git",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"copilot-cmp": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1683831407,
|
|
||||||
"narHash": "sha256-+MzEGnhlrYRvAfskOwmw69OC1CsPXt7s3z+xPe9XPqs=",
|
|
||||||
"owner": "zbirenbaum",
|
|
||||||
"repo": "copilot-cmp",
|
|
||||||
"rev": "c2cdb3c0f5078b0619055af192295830a7987790",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "zbirenbaum",
|
|
||||||
"repo": "copilot-cmp",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"copilot-lua": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1691165896,
|
|
||||||
"narHash": "sha256-lAj7LKVbxTnLUpjJeuPTT3JBo1LQJWffiZmTyU+Y5uw=",
|
|
||||||
"owner": "zbirenbaum",
|
|
||||||
"repo": "copilot.lua",
|
|
||||||
"rev": "f306957de0f9730de4298bb1ea85c3735ef7cc43",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "zbirenbaum",
|
|
||||||
"repo": "copilot.lua",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"darwin": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"agenix",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1673295039,
|
|
||||||
"narHash": "sha256-AsdYgE8/GPwcelGgrntlijMg4t3hLFJFCRF3tL5WVjA=",
|
|
||||||
"owner": "lnl7",
|
|
||||||
"repo": "nix-darwin",
|
|
||||||
"rev": "87b9d090ad39b25b2400029c64825fc2a8868943",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "lnl7",
|
|
||||||
"ref": "master",
|
|
||||||
"repo": "nix-darwin",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"fennel-ls": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1689863239,
|
|
||||||
"narHash": "sha256-xPTgGmeILJSNsC++r9x+ussS7ttG7a5Cgl/D02auTgE=",
|
|
||||||
"owner": "~xerool",
|
|
||||||
"repo": "fennel-ls",
|
|
||||||
"rev": "e7c642e12a15c6d452559414ee1890b30f4e8406",
|
|
||||||
"type": "sourcehut"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "~xerool",
|
|
||||||
"repo": "fennel-ls",
|
|
||||||
"type": "sourcehut"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"gh-nvim": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1682521998,
|
|
||||||
"narHash": "sha256-R+vzppfF3AAAGAUdH1kEPpX7XjHowBlilWNJfHyzZ10=",
|
|
||||||
"owner": "ldelossa",
|
|
||||||
"repo": "gh.nvim",
|
|
||||||
"rev": "2b5551656c1b896bf4ae06546eaaab00311f9a18",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "ldelossa",
|
|
||||||
"repo": "gh.nvim",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"home-manager": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"agenix",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1682203081,
|
|
||||||
"narHash": "sha256-kRL4ejWDhi0zph/FpebFYhzqlOBrk0Pl3dzGEKSAlEw=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"rev": "32d3e39c491e2f91152c84f8ad8b003420eab0a1",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"home-manager_2": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1687871164,
|
|
||||||
"narHash": "sha256-bBFlPthuYX322xOlpJvkjUBz0C+MOBjZdDOOJJ+G2jU=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"rev": "07c347bb50994691d7b0095f45ebd8838cf6bc38",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"ref": "release-23.05",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"impermanence": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1690797372,
|
|
||||||
"narHash": "sha256-GImz19e33SeVcIvBB7NnhbJSbTpFFmNtWLh7Z85Y188=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "impermanence",
|
|
||||||
"rev": "e3a7acd113903269a1b5c8b527e84ce7ee859851",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "impermanence",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixos-hardware": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1691305349,
|
|
||||||
"narHash": "sha256-0Pig7jnmuRH3c5dOTVTOvTLwo2CRzYTyvJRQ82HWRSo=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixos-hardware",
|
|
||||||
"rev": "5426a95071d0b9782b3209b3995cde1f5689616e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixos-hardware",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1691328192,
|
|
||||||
"narHash": "sha256-w59N1zyDQ7SupfMJLFvtms/SIVbdryqlw5AS4+DiH+Y=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "61676e4dcfeeb058f255294bcb08ea7f3bc3ce56",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-23.05",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs-unstable": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1691368598,
|
|
||||||
"narHash": "sha256-ia7li22keBBbj02tEdqjVeLtc7ZlSBuhUk+7XTUFr14=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "5a8e9243812ba528000995b294292d3b5e120947",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nur": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1691426742,
|
|
||||||
"narHash": "sha256-NNyk6xL6E8lAI1wQ3ErzC4s+BOypXAZ+qPcyKNScxUQ=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "NUR",
|
|
||||||
"rev": "33fc23d321725093266f69e0f948a27adf02c0b8",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "NUR",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nvim-cmp-vlime": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1672313103,
|
|
||||||
"narHash": "sha256-ejjJWNGjx28viKz8tsaifCkJ9HHYAOkbOZAdlR8gQJo=",
|
|
||||||
"owner": "HiPhish",
|
|
||||||
"repo": "nvim-cmp-vlime",
|
|
||||||
"rev": "5bc7fa02f255f6faed0ba5fda5f4883b46a66676",
|
|
||||||
"type": "gitlab"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "HiPhish",
|
|
||||||
"repo": "nvim-cmp-vlime",
|
|
||||||
"type": "gitlab"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": {
|
|
||||||
"inputs": {
|
|
||||||
"agenix": "agenix",
|
|
||||||
"apl386": "apl386",
|
|
||||||
"cmp-conventionalcommits": "cmp-conventionalcommits",
|
|
||||||
"cmp-git": "cmp-git",
|
|
||||||
"copilot-cmp": "copilot-cmp",
|
|
||||||
"copilot-lua": "copilot-lua",
|
|
||||||
"fennel-ls": "fennel-ls",
|
|
||||||
"gh-nvim": "gh-nvim",
|
|
||||||
"home-manager": "home-manager_2",
|
|
||||||
"impermanence": "impermanence",
|
|
||||||
"nixos-hardware": "nixos-hardware",
|
|
||||||
"nixpkgs": "nixpkgs",
|
|
||||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
|
||||||
"nur": "nur",
|
|
||||||
"nvim-cmp-vlime": "nvim-cmp-vlime",
|
|
||||||
"rust-tools-nvim": "rust-tools-nvim",
|
|
||||||
"vim-hy": "vim-hy",
|
|
||||||
"vlime": "vlime"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"rust-tools-nvim": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1689033186,
|
|
||||||
"narHash": "sha256-jtfyDxifchznUupLSao6nmpVqaX1yO0xN+NhqS9fgxg=",
|
|
||||||
"owner": "simrat39",
|
|
||||||
"repo": "rust-tools.nvim",
|
|
||||||
"rev": "0cc8adab23117783a0292a0c8a2fbed1005dc645",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "simrat39",
|
|
||||||
"repo": "rust-tools.nvim",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"vim-hy": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1688564453,
|
|
||||||
"narHash": "sha256-FwVWUxC4T0qCz/4XgBv8BsUsD+nsOb9g2hQXqVGlQuA=",
|
|
||||||
"owner": "hylang",
|
|
||||||
"repo": "vim-hy",
|
|
||||||
"rev": "dbd001668db9deae19a8f631a38a9d96ef441c27",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hylang",
|
|
||||||
"repo": "vim-hy",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"vlime": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1688286786,
|
|
||||||
"narHash": "sha256-t96BZl2qEnFYPnXnVNRUUI2vICdz/0lnnmw+LT0PzLU=",
|
|
||||||
"owner": "vlime",
|
|
||||||
"repo": "vlime",
|
|
||||||
"rev": "c1ac16c1a50bec4c30da87cd4ce2af12e26fb022",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "vlime",
|
|
||||||
"repo": "vlime",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": "root",
|
|
||||||
"version": 7
|
|
||||||
}
|
|
110
flake.nix
110
flake.nix
|
@ -1,110 +0,0 @@
|
||||||
{
|
|
||||||
inputs = {
|
|
||||||
impermanence.url = "github:nix-community/impermanence";
|
|
||||||
nixos-hardware.url = "github:NixOS/nixos-hardware";
|
|
||||||
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-23.05";
|
|
||||||
nur.url = "github:nix-community/NUR";
|
|
||||||
|
|
||||||
agenix = {
|
|
||||||
url = "github:ryantm/agenix";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
apl386 = {
|
|
||||||
url = "github:abrudz/APL386";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
cmp-conventionalcommits = {
|
|
||||||
url = "github:davidsierradz/cmp-conventionalcommits";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
cmp-git = {
|
|
||||||
url = "github:petertriho/cmp-git";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
copilot-cmp = {
|
|
||||||
url = "github:zbirenbaum/copilot-cmp";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
copilot-lua = {
|
|
||||||
url = "github:zbirenbaum/copilot.lua";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
fennel-ls = {
|
|
||||||
url = "sourcehut:~xerool/fennel-ls";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
gh-nvim = {
|
|
||||||
url = "github:ldelossa/gh.nvim";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
home-manager = {
|
|
||||||
url = "github:nix-community/home-manager/release-23.05";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
nvim-cmp-vlime = {
|
|
||||||
url = "gitlab:HiPhish/nvim-cmp-vlime";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
# work around for nixpkgs version being too old
|
|
||||||
rust-tools-nvim = {
|
|
||||||
url = "github:simrat39/rust-tools.nvim";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
vim-hy = {
|
|
||||||
url = "github:hylang/vim-hy";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
vlime = {
|
|
||||||
url = "github:vlime/vlime";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
outputs = {
|
|
||||||
agenix,
|
|
||||||
home-manager,
|
|
||||||
nur,
|
|
||||||
nixpkgs-unstable,
|
|
||||||
nixpkgs,
|
|
||||||
...
|
|
||||||
} @ args: {
|
|
||||||
nixosConfigurations = let
|
|
||||||
mkSystem = system: module:
|
|
||||||
nixpkgs.lib.nixosSystem {
|
|
||||||
inherit system;
|
|
||||||
specialArgs = args;
|
|
||||||
modules = let
|
|
||||||
overlay-unstable = final: prev: {
|
|
||||||
unstable = nixpkgs-unstable.legacyPackages.${prev.system};
|
|
||||||
};
|
|
||||||
in [
|
|
||||||
module
|
|
||||||
|
|
||||||
agenix.nixosModules.default
|
|
||||||
home-manager.nixosModule
|
|
||||||
nur.nixosModules.nur
|
|
||||||
./common.nix
|
|
||||||
./impermanence.nix
|
|
||||||
./system.nix
|
|
||||||
(_: {nixpkgs.overlays = [(import ./overlay args) overlay-unstable];})
|
|
||||||
];
|
|
||||||
};
|
|
||||||
in {
|
|
||||||
alice = mkSystem "x86_64-linux" ./alice;
|
|
||||||
fanya = mkSystem "x86_64-linux" ./fanya;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,83 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
impermanence,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [
|
|
||||||
"${impermanence}/nixos.nix"
|
|
||||||
];
|
|
||||||
|
|
||||||
environment.persistence."/persist/system" = {
|
|
||||||
directories = [
|
|
||||||
"/etc/NetworkManager/system-connections"
|
|
||||||
"/etc/nixos"
|
|
||||||
"/root/.ssh"
|
|
||||||
"/srv"
|
|
||||||
"/var/lib/bluetooth"
|
|
||||||
"/var/lib/docker"
|
|
||||||
"/var/lib/machines"
|
|
||||||
"/var/lib/portables"
|
|
||||||
"/var/log"
|
|
||||||
];
|
|
||||||
|
|
||||||
files = [];
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.fuse.userAllowOther = true; # required for allowOther
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
imports = [
|
|
||||||
"${impermanence}/home-manager.nix"
|
|
||||||
];
|
|
||||||
|
|
||||||
home.persistence."/persist/buffet" = {
|
|
||||||
removePrefixDirectory = true;
|
|
||||||
allowOther = true;
|
|
||||||
|
|
||||||
directories = [
|
|
||||||
"anki/.local/share/Anki"
|
|
||||||
"anki/.local/share/Anki2"
|
|
||||||
"crev/.local/share/crev"
|
|
||||||
"data/books"
|
|
||||||
"data/docs"
|
|
||||||
"data/git"
|
|
||||||
"data/proj"
|
|
||||||
"data/reminders"
|
|
||||||
"data/rice"
|
|
||||||
"data/uni"
|
|
||||||
"direnv/.local/share/direnv"
|
|
||||||
"firefox/.cache/mozilla"
|
|
||||||
"firefox/.mozilla"
|
|
||||||
"gpg/.gnupg"
|
|
||||||
"newsboat/.local/share/newsboat"
|
|
||||||
"ssh/.ssh"
|
|
||||||
"trash/.local/share/Trash"
|
|
||||||
];
|
|
||||||
|
|
||||||
files = [
|
|
||||||
"bash/.bash_history"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/persist".neededForBoot = true;
|
|
||||||
|
|
||||||
boot = {
|
|
||||||
supportedFilesystems = ["btrfs"];
|
|
||||||
|
|
||||||
# recreate the root subvolume at boot
|
|
||||||
initrd.postDeviceCommands = lib.mkBefore ''
|
|
||||||
echo "recreating root subvolume..."
|
|
||||||
mkdir -p /mnt
|
|
||||||
mount ${config.fileSystems."/".device} /mnt
|
|
||||||
btrfs subvolume delete /mnt/@old
|
|
||||||
mv /mnt/@ /mnt/@old
|
|
||||||
btrfs subvolume create /mnt/@
|
|
||||||
umount /mnt
|
|
||||||
echo "done recreating subvolume"
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
# workaround for agenix running before /etc impermanence gets set up
|
|
||||||
age.identityPaths = ["/persist/buffet/ssh/.ssh/id_agenix"];
|
|
||||||
}
|
|
|
@ -1,26 +0,0 @@
|
||||||
{
|
|
||||||
inputs,
|
|
||||||
lib,
|
|
||||||
stdenvNoCC,
|
|
||||||
}:
|
|
||||||
stdenvNoCC.mkDerivation {
|
|
||||||
name = "apl386";
|
|
||||||
|
|
||||||
src = inputs.apl386;
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
install -Dm644 APL386.ttf -t $out/share/fonts/apl386
|
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
description = "APL385 Unicode font evolved ";
|
|
||||||
homepage = "https://github.com/abrudz/APL386";
|
|
||||||
license = licenses.unlicense;
|
|
||||||
maintainers = with maintainers; [buffet];
|
|
||||||
platforms = platforms.all;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,6 +0,0 @@
|
||||||
inputs: self: super: {
|
|
||||||
inherit inputs;
|
|
||||||
|
|
||||||
apl386 = super.callPackage ./apl386 {};
|
|
||||||
fennel-ls = super.callPackage ./fennel-ls {};
|
|
||||||
}
|
|
|
@ -1,25 +0,0 @@
|
||||||
{
|
|
||||||
inputs,
|
|
||||||
lib,
|
|
||||||
stdenvNoCC,
|
|
||||||
lua,
|
|
||||||
luaPackages,
|
|
||||||
}:
|
|
||||||
stdenvNoCC.mkDerivation {
|
|
||||||
name = "fennel-ls";
|
|
||||||
|
|
||||||
src = inputs.fennel-ls;
|
|
||||||
|
|
||||||
nativeBuildInputs = [luaPackages.fennel];
|
|
||||||
buildInputs = [lua];
|
|
||||||
|
|
||||||
makeFlags = ["PREFIX=$(out)"];
|
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
description = "A language server for fennel-ls.";
|
|
||||||
homepage = "https://git.sr.ht/~xerool/fennel-ls";
|
|
||||||
license = licenses.mit;
|
|
||||||
platforms = lua.meta.platforms;
|
|
||||||
maintainers = with maintainers; [buffet];
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,47 +0,0 @@
|
||||||
{pkgs, ...}: let
|
|
||||||
inputrc = pkgs.writeText "inputrc" ''
|
|
||||||
set completion-ignore-case on
|
|
||||||
'';
|
|
||||||
in {
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
home.sessionVariables = {
|
|
||||||
INPUTRC = inputrc;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.bash = {
|
|
||||||
enable = true;
|
|
||||||
historyControl = ["erasedups" "ignorespace"];
|
|
||||||
|
|
||||||
shellAliases = {
|
|
||||||
"cd.." = "cd ..";
|
|
||||||
ch = "ssh -t irc.buffet.sh -- screen -r weechat";
|
|
||||||
htop = "htop -t";
|
|
||||||
mkdir = "mkdir -p";
|
|
||||||
rg = "rg -S";
|
|
||||||
update = let
|
|
||||||
change-message = pkgs.writeScript "change-commit-message" ''
|
|
||||||
#!/bin/sh
|
|
||||||
sed -i '1s/.*/chore: update/' "$1"
|
|
||||||
'';
|
|
||||||
in "nix flake update --commit-lock-file && EDITOR=${change-message} git commit --amend";
|
|
||||||
};
|
|
||||||
|
|
||||||
shellOptions = [
|
|
||||||
"cdspell"
|
|
||||||
"checkjobs"
|
|
||||||
"extglob"
|
|
||||||
"globstar"
|
|
||||||
"histappend"
|
|
||||||
"nocaseglob"
|
|
||||||
];
|
|
||||||
|
|
||||||
initExtra = ''
|
|
||||||
PS0='\[\e[0m\]'
|
|
||||||
PS1='\[\e[1m\] '
|
|
||||||
|
|
||||||
bind '"\C-o": "\C-a\C-k fg; if [[ $? == 1 ]]; then nvim; fi\n"'
|
|
||||||
bind '"\e\C-m": "\C-e | nvim\C-m"'
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,49 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
host = "11967@prio.ch-s011.rsync.net";
|
|
||||||
in {
|
|
||||||
age.secrets.borgpassword.file = ../secrets/borgpassword.age;
|
|
||||||
|
|
||||||
services.borgbackup = {
|
|
||||||
jobs.backup = {
|
|
||||||
paths = ["/persist"];
|
|
||||||
exclude = ["/persist/system/var/log"];
|
|
||||||
repo = "${host}:${config.networking.hostName}";
|
|
||||||
encryption = {
|
|
||||||
mode = "repokey";
|
|
||||||
passCommand = "cat ${config.age.secrets.borgpassword.path}";
|
|
||||||
};
|
|
||||||
startAt = "daily";
|
|
||||||
persistentTimer = true;
|
|
||||||
environment.BORG_RSH = "ssh -i /home/buffet/.ssh/id_borg";
|
|
||||||
extraArgs = "--remote-path borg1";
|
|
||||||
prune.keep = {
|
|
||||||
within = "1d";
|
|
||||||
daily = 7;
|
|
||||||
weekly = 4;
|
|
||||||
monthly = -1;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
systemd.services = {
|
|
||||||
borgbackup-job-backup = {
|
|
||||||
after = ["ensure-online.service"];
|
|
||||||
requires = ["ensure-online.service"];
|
|
||||||
};
|
|
||||||
|
|
||||||
ensure-online = {
|
|
||||||
description = "waiting for Network";
|
|
||||||
after = ["network-online.target"];
|
|
||||||
requires = ["network-online.target"];
|
|
||||||
|
|
||||||
serviceConfig = {
|
|
||||||
ExecStart = "${pkgs.networkmanager}/bin/nm-online -q --timeout=300";
|
|
||||||
Type = "oneshot";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,9 +0,0 @@
|
||||||
{pkgs, ...}: {
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
home.file.".cargo/config.toml".text = ''
|
|
||||||
[target.x86_64-unknown-linux-gnu]
|
|
||||||
linker = "${pkgs.clang}/bin/clang"
|
|
||||||
rustflags = ["-C", "link-arg=-fuse-ld=${pkgs.mold}/bin/mold"]
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,37 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
programs.firefox = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.firefox-wayland;
|
|
||||||
|
|
||||||
profiles."buffet" = {
|
|
||||||
extensions = with config.nur.repos.rycee.firefox-addons; [
|
|
||||||
config.nur.repos.rycee.firefox-addons."10ten-ja-reader"
|
|
||||||
bitwarden
|
|
||||||
clearurls
|
|
||||||
decentraleyes
|
|
||||||
fediact
|
|
||||||
istilldontcareaboutcookies
|
|
||||||
refined-github
|
|
||||||
sidebery
|
|
||||||
ublock-origin
|
|
||||||
];
|
|
||||||
|
|
||||||
settings = {
|
|
||||||
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
userChrome = ''
|
|
||||||
#TabsToolbar {
|
|
||||||
visibility: collapse !important;
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,55 +0,0 @@
|
||||||
{lib, ...}: {
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
programs.foot = {
|
|
||||||
enable = true;
|
|
||||||
server.enable = true;
|
|
||||||
|
|
||||||
settings = let
|
|
||||||
theme = import ../theme.nix;
|
|
||||||
dehash = lib.attrsets.mapAttrs (_: lib.strings.removePrefix "#");
|
|
||||||
normal = dehash theme.normal;
|
|
||||||
bright = dehash theme.bright;
|
|
||||||
in {
|
|
||||||
main = {
|
|
||||||
font = "${theme.font.family}:size=${toString (theme.font.size - 2)}";
|
|
||||||
#font-italic = "${theme.font.family}:size=${toString (theme.font.size - 2)}";
|
|
||||||
#font-bold-italic = "${theme.font.family}:style=Bold:size=${toString (theme.font.size - 2)}";
|
|
||||||
pad = "${toString theme.font.size}x${toString theme.font.size}";
|
|
||||||
};
|
|
||||||
|
|
||||||
scrollback.lines = 10000;
|
|
||||||
|
|
||||||
url = {
|
|
||||||
launch = ''firefox ''${url}'';
|
|
||||||
};
|
|
||||||
|
|
||||||
key-bindings = {
|
|
||||||
show-urls-launch = "Control+Shift+l";
|
|
||||||
};
|
|
||||||
|
|
||||||
colors = {
|
|
||||||
foreground = lib.strings.removePrefix "#" theme.primary.foreground;
|
|
||||||
background = lib.strings.removePrefix "#" theme.primary.background;
|
|
||||||
|
|
||||||
regular0 = normal.black;
|
|
||||||
regular1 = normal.red;
|
|
||||||
regular2 = normal.green;
|
|
||||||
regular3 = normal.yellow;
|
|
||||||
regular4 = normal.blue;
|
|
||||||
regular5 = normal.magenta;
|
|
||||||
regular6 = normal.cyan;
|
|
||||||
regular7 = normal.white;
|
|
||||||
|
|
||||||
bright0 = bright.black;
|
|
||||||
bright1 = bright.red;
|
|
||||||
bright2 = bright.green;
|
|
||||||
bright3 = bright.yellow;
|
|
||||||
bright4 = bright.blue;
|
|
||||||
bright5 = bright.magenta;
|
|
||||||
bright6 = bright.cyan;
|
|
||||||
bright7 = bright.white;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,51 +0,0 @@
|
||||||
_: {
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
programs.git = {
|
|
||||||
enable = true;
|
|
||||||
userEmail = "dev@buffet.sh";
|
|
||||||
userName = "buffet";
|
|
||||||
difftastic = {
|
|
||||||
enable = true;
|
|
||||||
background =
|
|
||||||
if (import ../theme.nix).light
|
|
||||||
then "light"
|
|
||||||
else "dark";
|
|
||||||
};
|
|
||||||
|
|
||||||
aliases = {
|
|
||||||
a = "add";
|
|
||||||
b = "branch";
|
|
||||||
c = "commit --verbose";
|
|
||||||
m = "commit --amend --verbose";
|
|
||||||
|
|
||||||
d = "diff";
|
|
||||||
ds = "diff --stat";
|
|
||||||
dc = "diff --cached";
|
|
||||||
|
|
||||||
l = "log";
|
|
||||||
s = "status -s";
|
|
||||||
co = "checkout";
|
|
||||||
cob = "checkout -b";
|
|
||||||
};
|
|
||||||
|
|
||||||
signing = {
|
|
||||||
key = "EBAC355935FD7382";
|
|
||||||
signByDefault = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
extraConfig = {
|
|
||||||
init = {
|
|
||||||
defaultBranch = "master";
|
|
||||||
};
|
|
||||||
|
|
||||||
push = {
|
|
||||||
autoSetupRemote = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
pull = {
|
|
||||||
ff = "only";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,11 +0,0 @@
|
||||||
{pkgs, ...}: {
|
|
||||||
programs.gnupg.agent = {
|
|
||||||
enable = true;
|
|
||||||
enableSSHSupport = true;
|
|
||||||
pinentryFlavor = "curses";
|
|
||||||
};
|
|
||||||
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
programs.gpg.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,12 +0,0 @@
|
||||||
{pkgs, ...}: {
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
i18n.inputMethod = {
|
|
||||||
enabled = "fcitx5";
|
|
||||||
fcitx5.addons = with pkgs; [
|
|
||||||
fcitx5-configtool
|
|
||||||
fcitx5-gtk
|
|
||||||
fcitx5-mozc
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,19 +0,0 @@
|
||||||
_: {
|
|
||||||
services.keyd = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
main = {
|
|
||||||
"capslock" = "overload(control, esc)";
|
|
||||||
"esc" = "capslock";
|
|
||||||
"rightalt" = "layer(symbols)";
|
|
||||||
};
|
|
||||||
|
|
||||||
symbols = {
|
|
||||||
"h" = "left";
|
|
||||||
"j" = "down";
|
|
||||||
"k" = "up";
|
|
||||||
"l" = "right";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,8 +0,0 @@
|
||||||
_: {
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
programs.lsd = {
|
|
||||||
enable = true;
|
|
||||||
enableAliases = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,21 +0,0 @@
|
||||||
{pkgs, ...}: {
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
services.mako = let
|
|
||||||
theme = import ../theme.nix;
|
|
||||||
in {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
anchor = "top-right";
|
|
||||||
|
|
||||||
backgroundColor = theme.primary.background;
|
|
||||||
borderColor = theme.wm.focused.border;
|
|
||||||
progressColor = theme.primary.foreground;
|
|
||||||
textColor = theme.primary.foreground;
|
|
||||||
borderSize = 1;
|
|
||||||
|
|
||||||
defaultTimeout = 4000;
|
|
||||||
|
|
||||||
font = with theme; "${font.family} ${toString font.size}";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,32 +0,0 @@
|
||||||
{lib, ...}: {
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
programs.newsboat = {
|
|
||||||
enable = true;
|
|
||||||
autoReload = true;
|
|
||||||
|
|
||||||
extraConfig = ''
|
|
||||||
color listnormal black white
|
|
||||||
color listfocus white yellow
|
|
||||||
color listnormal_unread black white bold
|
|
||||||
color listfocus_unread white yellow bold
|
|
||||||
color title white blue bold
|
|
||||||
color info yellow white bold
|
|
||||||
color hint-key default white bold
|
|
||||||
color hint-keys-delimiter default white
|
|
||||||
color hint-separator default white bold
|
|
||||||
color hint-description default white
|
|
||||||
'';
|
|
||||||
|
|
||||||
urls = lib.mapAttrsToList (title: url: {inherit title url;}) {
|
|
||||||
drew = "https://drewdevault.com/blog/index.xml";
|
|
||||||
ducko = "https://goose.icu/index.xml";
|
|
||||||
emersion = "https://emersion.fr/blog/atom.xml";
|
|
||||||
fasterthanlime = "https://fasterthanli.me/index.xml";
|
|
||||||
matklad = "https://matklad.github.io/feed.xml";
|
|
||||||
neeasade = "https://notes.neeasade.net/rss_full.xml";
|
|
||||||
sammyette = "https://sammy.is-a.dev/blog/index.xml";
|
|
||||||
xkcd = "https://xkcd.com/rss.xml";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,559 +0,0 @@
|
||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
} @ inputs: {
|
|
||||||
# TODO: use some flake
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
home.sessionVariables = {
|
|
||||||
EDITOR = "nvim";
|
|
||||||
};
|
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
clang-tools
|
|
||||||
fennel-ls
|
|
||||||
nil
|
|
||||||
rust-analyzer
|
|
||||||
sumneko-lua-language-server
|
|
||||||
];
|
|
||||||
|
|
||||||
programs.neovim = let
|
|
||||||
leader = ",";
|
|
||||||
in {
|
|
||||||
enable = true;
|
|
||||||
plugins = let
|
|
||||||
buildPlugin = pname:
|
|
||||||
pkgs.vimUtils.buildVimPluginFrom2Nix {
|
|
||||||
inherit pname;
|
|
||||||
version = "unknown";
|
|
||||||
src = inputs."${pname}";
|
|
||||||
};
|
|
||||||
buildPlugins = names: lib.attrsets.genAttrs names buildPlugin;
|
|
||||||
plugins = buildPlugins [
|
|
||||||
"cmp-conventionalcommits"
|
|
||||||
"cmp-git"
|
|
||||||
"gh-nvim"
|
|
||||||
"nvim-cmp-vlime"
|
|
||||||
"rust-tools-nvim"
|
|
||||||
"vim-hy"
|
|
||||||
"vlime"
|
|
||||||
];
|
|
||||||
in
|
|
||||||
with pkgs.vimPlugins;
|
|
||||||
with plugins; [
|
|
||||||
{plugin = cmp-buffer;}
|
|
||||||
{plugin = cmp-calc;}
|
|
||||||
{plugin = cmp-conventionalcommits;}
|
|
||||||
{plugin = cmp-latex-symbols;}
|
|
||||||
{plugin = cmp-nvim-lsp;}
|
|
||||||
{plugin = cmp-path;}
|
|
||||||
{plugin = cmp-treesitter;}
|
|
||||||
{plugin = cmp-vsnip;}
|
|
||||||
{plugin = editorconfig-nvim;}
|
|
||||||
{plugin = fennel-vim;}
|
|
||||||
{plugin = friendly-snippets;}
|
|
||||||
{plugin = fugitive;}
|
|
||||||
{plugin = lualine-lsp-progress;}
|
|
||||||
{plugin = nvim-cmp-vlime;}
|
|
||||||
{plugin = parinfer-rust;}
|
|
||||||
{plugin = pest-vim;}
|
|
||||||
{plugin = playground;}
|
|
||||||
{plugin = rust-vim;}
|
|
||||||
{plugin = tabular;}
|
|
||||||
{plugin = vim-nix;}
|
|
||||||
{plugin = vim-hy;}
|
|
||||||
{plugin = vim-repeat;}
|
|
||||||
{plugin = vlime;}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = cmp-git;
|
|
||||||
config = "lua require 'cmp_git'.setup {}";
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = crates-nvim;
|
|
||||||
config = ''
|
|
||||||
lua require 'crates'.setup {}
|
|
||||||
|
|
||||||
nnoremap <silent> ${leader}ct :lua require('crates').toggle()<cr>
|
|
||||||
nnoremap <silent> ${leader}cr :lua require('crates').reload()<cr>
|
|
||||||
|
|
||||||
nnoremap <silent> ${leader}cv :lua require('crates').show_versions_popup()<cr>
|
|
||||||
nnoremap <silent> ${leader}cf :lua require('crates').show_features_popup()<cr>
|
|
||||||
nnoremap <silent> ${leader}cd :lua require('crates').show_dependencies_popup()<cr>
|
|
||||||
|
|
||||||
nnoremap <silent> ${leader}cu :lua require('crates').update_crate()<cr>
|
|
||||||
vnoremap <silent> ${leader}cu :lua require('crates').update_crates()<cr>
|
|
||||||
nnoremap <silent> ${leader}ca :lua require('crates').update_all_crates()<cr>
|
|
||||||
nnoremap <silent> ${leader}cU :lua require('crates').upgrade_crate()<cr>
|
|
||||||
vnoremap <silent> ${leader}cU :lua require('crates').upgrade_crates()<cr>
|
|
||||||
nnoremap <silent> ${leader}cA :lua require('crates').upgrade_all_crates()<cr>
|
|
||||||
|
|
||||||
nnoremap <silent> ${leader}cH :lua require('crates').open_homepage()<cr>
|
|
||||||
nnoremap <silent> ${leader}cR :lua require('crates').open_repository()<cr>
|
|
||||||
nnoremap <silent> ${leader}cD :lua require('crates').open_documentation()<cr>
|
|
||||||
nnoremap <silent> ${leader}cC :lua require('crates').open_crates_io()<cr>
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = gh-nvim;
|
|
||||||
config = ''
|
|
||||||
lua <<EOF
|
|
||||||
require 'litee.lib'.setup {}
|
|
||||||
require 'litee.gh'.setup {}
|
|
||||||
EOF
|
|
||||||
|
|
||||||
nnoremap <silent> ${leader}qcc :GHCloseCommit<cr>
|
|
||||||
nnoremap <silent> ${leader}qce :GHExpandCommit<cr>
|
|
||||||
nnoremap <silent> ${leader}qct :GHOpenToCommit<cr>
|
|
||||||
nnoremap <silent> ${leader}qcp :GHPopOutCommit<cr>
|
|
||||||
nnoremap <silent> ${leader}qcz :GHCollapseCommit<cr>
|
|
||||||
|
|
||||||
nnoremap <silent> ${leader}qip :GHPreviewIssue<cr>
|
|
||||||
|
|
||||||
nnoremap <silent> ${leader}qrb :GHStartReview<cr>
|
|
||||||
nnoremap <silent> ${leader}qrc :GHCloseReview<cr>
|
|
||||||
nnoremap <silent> ${leader}qrd :GHDeleteReview<cr>
|
|
||||||
nnoremap <silent> ${leader}qre :GHExpandReview<cr>
|
|
||||||
nnoremap <silent> ${leader}qrs :GHSubmitReview<cr>
|
|
||||||
nnoremap <silent> ${leader}qrz :GHCollapseReview<cr>
|
|
||||||
|
|
||||||
nnoremap <silent> ${leader}qpc :GHClosePR<cr>
|
|
||||||
nnoremap <silent> ${leader}qpd :GHPRDetails<cr>
|
|
||||||
nnoremap <silent> ${leader}qpe :GHExpandPR<cr>
|
|
||||||
nnoremap <silent> ${leader}qpo :GHOpenPR<cr>
|
|
||||||
nnoremap <silent> ${leader}qpp :GHPopOutPR<cr>
|
|
||||||
nnoremap <silent> ${leader}qpr :GHRefreshPR<cr>
|
|
||||||
nnoremap <silent> ${leader}qpt :GHOpenToPR<cr>
|
|
||||||
nnoremap <silent> ${leader}qpz :GHCollapsePR<cr>
|
|
||||||
|
|
||||||
nnoremap <silent> ${leader}qtc :GHCreateThread<cr>
|
|
||||||
nnoremap <silent> ${leader}qtn :GHNextThread<cr>
|
|
||||||
nnoremap <silent> ${leader}qt :GHToggleThread<cr>
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = gitsigns-nvim;
|
|
||||||
config = ''
|
|
||||||
lua <<EOF
|
|
||||||
require 'gitsigns'.setup {
|
|
||||||
signs = {
|
|
||||||
add = { text = '┆' },
|
|
||||||
change = { text = '┆' },
|
|
||||||
},
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = litee-nvim;
|
|
||||||
config = ''
|
|
||||||
lua require 'litee.lib'.setup {}
|
|
||||||
|
|
||||||
nnoremap <silent> ${leader}lt :LTPanel<cr>
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = litee-calltree-nvim;
|
|
||||||
config = ''
|
|
||||||
lua require 'litee.calltree'.setup {}
|
|
||||||
|
|
||||||
nnoremap <silent> ${leader}lci :lua vim.lsp.buf.incoming_calls()<cr>
|
|
||||||
nnoremap <silent> ${leader}lco :lua vim.lsp.buf.outgoing_calls()<cr>
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = litee-symboltree-nvim;
|
|
||||||
config = ''
|
|
||||||
lua require 'litee.symboltree'.setup {}
|
|
||||||
|
|
||||||
nnoremap <silent> ${leader}ls :lua vim.lsp.buf.document_symbol()<cr>
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = lualine-nvim;
|
|
||||||
config = ''
|
|
||||||
lua <<EOF
|
|
||||||
require 'lualine'.setup {
|
|
||||||
options = {
|
|
||||||
icons_enabled = true,
|
|
||||||
theme = 'auto',
|
|
||||||
component_separators = {left = ''', right = '''},
|
|
||||||
section_separators = {left = ''', right = '''},
|
|
||||||
disabled_filetypes = {
|
|
||||||
statusline = {},
|
|
||||||
winbar = {},
|
|
||||||
},
|
|
||||||
ignore_focus = {},
|
|
||||||
always_divide_middle = true,
|
|
||||||
globalstatus = false,
|
|
||||||
refresh = {
|
|
||||||
statusline = 1000,
|
|
||||||
tabline = 1000,
|
|
||||||
winbar = 1000,
|
|
||||||
}
|
|
||||||
},
|
|
||||||
sections = {
|
|
||||||
lualine_a = {'mode'},
|
|
||||||
lualine_b = {'diff', 'diagnostics'},
|
|
||||||
lualine_c = {
|
|
||||||
'filename',
|
|
||||||
{
|
|
||||||
'lsp_progress',
|
|
||||||
display_components = {'lsp_client_name', 'spinner'},
|
|
||||||
spinner_symbols = {'⠋', '⠙', '⠸', '⠴', '⠦', '⠇'},
|
|
||||||
timer = {spinner = '75'}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
lualine_x = {'encoding', 'fileformat', 'filetype'},
|
|
||||||
lualine_y = {'progress'},
|
|
||||||
lualine_z = {'location'}
|
|
||||||
},
|
|
||||||
inactive_sections = {
|
|
||||||
lualine_a = {},
|
|
||||||
lualine_b = {},
|
|
||||||
lualine_c = {'filename'},
|
|
||||||
lualine_x = {'location'},
|
|
||||||
lualine_y = {},
|
|
||||||
lualine_z = {}
|
|
||||||
},
|
|
||||||
tabline = {},
|
|
||||||
winbar = {},
|
|
||||||
inactive_winbar = {},
|
|
||||||
extensions = {}
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = kanagawa-nvim;
|
|
||||||
config = ''
|
|
||||||
colorscheme kanagawa
|
|
||||||
lua <<EOF
|
|
||||||
local colors = require 'kanagawa.colors'.setup();
|
|
||||||
|
|
||||||
require 'kanagawa'.setup {
|
|
||||||
overrides = {
|
|
||||||
EndOfBuffer = { fg = colors.waveBlue2 },
|
|
||||||
},
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = lspsaga-nvim;
|
|
||||||
config = ''
|
|
||||||
lua require 'lspsaga'.init_lsp_saga()
|
|
||||||
|
|
||||||
nnoremap <silent> ${leader}a :Lspsaga code_action<cr>
|
|
||||||
nnoremap <silent> ${leader}r :Lspsaga rename<cr>
|
|
||||||
nnoremap <silent> gd :lua vim.lsp.buf.definition()<cr>
|
|
||||||
nnoremap <silent> gD :lua vim.lsp.buf.declaration()<cr>
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = nvim-cmp;
|
|
||||||
config = ''
|
|
||||||
set completeopt=menu,menuone,noselect
|
|
||||||
|
|
||||||
lua <<EOF
|
|
||||||
local cmp = require 'cmp'
|
|
||||||
|
|
||||||
cmp.setup {
|
|
||||||
snippet = {
|
|
||||||
expand = function(args)
|
|
||||||
vim.fn["vsnip#anonymous"](args.body)
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
window = {
|
|
||||||
completion = cmp.config.window.bordered(),
|
|
||||||
documentation = cmp.config.window.bordered(),
|
|
||||||
},
|
|
||||||
mapping = {
|
|
||||||
['<tab>'] = cmp.mapping.confirm({ select = true }),
|
|
||||||
['<c-p>'] = cmp.mapping.select_prev_item(select_opts),
|
|
||||||
['<c-n>'] = cmp.mapping.select_next_item(select_opts),
|
|
||||||
['<c-d>'] = cmp.mapping.scroll_docs(4),
|
|
||||||
['<c-u>'] = cmp.mapping.scroll_docs(-4),
|
|
||||||
['<c-e>'] = cmp.mapping.abort(),
|
|
||||||
},
|
|
||||||
sources = cmp.config.sources {
|
|
||||||
{ name = 'buffer' },
|
|
||||||
{ name = 'calc' },
|
|
||||||
{ name = 'conventionalcommits' },
|
|
||||||
{ name = 'crates' },
|
|
||||||
{ name = 'git' },
|
|
||||||
{ name = 'latex_symbols' },
|
|
||||||
{ name = 'nvim_lsp' },
|
|
||||||
{ name = 'path' },
|
|
||||||
{ name = 'treesitter' },
|
|
||||||
{ name = 'vlime' },
|
|
||||||
{ name = 'vsnip' },
|
|
||||||
},
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = nvim-dap;
|
|
||||||
config = ''
|
|
||||||
nnoremap <silent> <f5> <cmd>lua require 'dap'.continue()<cr>
|
|
||||||
nnoremap <silent> <f10> <cmd>lua require 'dap'.step_over()<cr>
|
|
||||||
nnoremap <silent> <f11> <cmd>lua require 'dap'.step_into()<cr>
|
|
||||||
nnoremap <silent> <f12> <cmd>lua require 'dap'.step_out()<cr>
|
|
||||||
nnoremap <silent> ${leader}db <cmd>lua require'dap'.toggle_breakpoint()<cr>
|
|
||||||
nnoremap <silent> ${leader}dB <cmd>lua require'dap'.set_breakpoint(vim.fn.input('Breakpoint condition: '))<cr>
|
|
||||||
nnoremap <silent> ${leader}dr <cmd>lua require'dap'.repl.open()<cr>
|
|
||||||
nnoremap <silent> ${leader}dl <cmd>lua require'dap'.run_last()<cr>
|
|
||||||
|
|
||||||
lua <<EOF
|
|
||||||
local dap = require 'dap'
|
|
||||||
|
|
||||||
dap.adapters.lldb = {
|
|
||||||
type = 'executable',
|
|
||||||
command = '${pkgs.lldb}/bin/lldb-vscode',
|
|
||||||
name = 'lldb',
|
|
||||||
}
|
|
||||||
|
|
||||||
local lldb = {
|
|
||||||
name = 'Launch lldb',
|
|
||||||
type = 'lldb',
|
|
||||||
request = 'launch',
|
|
||||||
program = function()
|
|
||||||
return vim.fn.input('Path to executable: ', vim.fn.getcwd() .. '/', 'file')
|
|
||||||
end,
|
|
||||||
cwd = "''${workspaceFolder}",
|
|
||||||
stopOnEntry = false,
|
|
||||||
runInTerminal = true,
|
|
||||||
args = {},
|
|
||||||
}
|
|
||||||
|
|
||||||
dap.configurations.rust = { lldb }
|
|
||||||
EOF
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = nvim-dap-ui;
|
|
||||||
config = ''
|
|
||||||
lua require 'dapui'.setup()
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = nvim-dap-virtual-text;
|
|
||||||
config = ''
|
|
||||||
lua <<EOF
|
|
||||||
require 'nvim-dap-virtual-text'.setup {
|
|
||||||
commented = true,
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = nvim-hlslens;
|
|
||||||
config = ''
|
|
||||||
lua require 'hlslens'.setup {}
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = nvim-lspconfig;
|
|
||||||
config = let
|
|
||||||
configure = srv: ''
|
|
||||||
lspconfig.${srv}.setup {
|
|
||||||
capabilities = caps,
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
servers = [
|
|
||||||
"clangd"
|
|
||||||
"fennel_ls"
|
|
||||||
"gopls"
|
|
||||||
"lua_ls"
|
|
||||||
"nil_ls"
|
|
||||||
"rust_analyzer"
|
|
||||||
];
|
|
||||||
serverConfigs = lib.strings.concatStringsSep "\n" (builtins.map configure servers);
|
|
||||||
in ''
|
|
||||||
lua <<EOF
|
|
||||||
local lspconfig = require 'lspconfig'
|
|
||||||
local caps = require 'cmp_nvim_lsp'.default_capabilities(
|
|
||||||
vim.lsp.protocol.make_client_capabilities()
|
|
||||||
)
|
|
||||||
${serverConfigs}
|
|
||||||
EOF
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = nvim-treesitter.withPlugins (plugins:
|
|
||||||
with plugins; [
|
|
||||||
tree-sitter-bash
|
|
||||||
tree-sitter-bibtex
|
|
||||||
tree-sitter-c
|
|
||||||
tree-sitter-c-sharp
|
|
||||||
tree-sitter-clojure
|
|
||||||
tree-sitter-cmake
|
|
||||||
tree-sitter-comment
|
|
||||||
tree-sitter-commonlisp
|
|
||||||
tree-sitter-cpp
|
|
||||||
tree-sitter-css
|
|
||||||
tree-sitter-devicetree
|
|
||||||
tree-sitter-dockerfile
|
|
||||||
tree-sitter-dot
|
|
||||||
tree-sitter-fennel
|
|
||||||
tree-sitter-glsl
|
|
||||||
tree-sitter-go
|
|
||||||
tree-sitter-java
|
|
||||||
tree-sitter-javascript
|
|
||||||
tree-sitter-json
|
|
||||||
tree-sitter-latex
|
|
||||||
tree-sitter-llvm
|
|
||||||
tree-sitter-lua
|
|
||||||
tree-sitter-make
|
|
||||||
tree-sitter-markdown
|
|
||||||
tree-sitter-markdown-inline
|
|
||||||
tree-sitter-nix
|
|
||||||
tree-sitter-perl
|
|
||||||
tree-sitter-python
|
|
||||||
tree-sitter-regex
|
|
||||||
tree-sitter-rst
|
|
||||||
tree-sitter-rust
|
|
||||||
tree-sitter-sql
|
|
||||||
tree-sitter-scheme
|
|
||||||
tree-sitter-svelte
|
|
||||||
tree-sitter-toml
|
|
||||||
tree-sitter-typescript
|
|
||||||
tree-sitter-vim
|
|
||||||
tree-sitter-yaml
|
|
||||||
tree-sitter-zig
|
|
||||||
]);
|
|
||||||
config = ''
|
|
||||||
lua <<EOF
|
|
||||||
require 'nvim-treesitter.configs'.setup {
|
|
||||||
highlight = {
|
|
||||||
enable = true,
|
|
||||||
additional_vim_regex_highlighting = false,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = rust-tools-nvim;
|
|
||||||
config = ''
|
|
||||||
lua require 'rust-tools'.setup {}
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = telescope-nvim;
|
|
||||||
config = ''
|
|
||||||
nnoremap <silent> ${leader}f :Telescope find_files<cr>
|
|
||||||
nnoremap <silent> ${leader}F :Telescope find_files hidden=true no_ignore=true<cr>
|
|
||||||
nnoremap <silent> ${leader}g :Telescope live_grep<cr>
|
|
||||||
nnoremap <silent> ${leader}b :Telescope buffers<cr>
|
|
||||||
nnoremap <silent> ${leader}: :Telescope commands<cr>
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = trouble-nvim;
|
|
||||||
config = ''
|
|
||||||
nnoremap <silent> ${leader}t :TroubleToggle<cr>
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = vim-vsnip;
|
|
||||||
config = ''
|
|
||||||
imap <expr> <c-k> vsnip#jumpable(1) ? '<Plug>(vsnip-jump-next)' : '<Tab>'
|
|
||||||
smap <expr> <c-k> vsnip#jumpable(1) ? '<Plug>(vsnip-jump-next)' : '<Tab>'
|
|
||||||
imap <expr> <c-j> vsnip#jumpable(-1) ? '<Plug>(vsnip-jump-prev)' : '<S-Tab>'
|
|
||||||
smap <expr> <c-j> vsnip#jumpable(-1) ? '<Plug>(vsnip-jump-prev)' : '<S-Tab>'
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
plugin = vimwiki;
|
|
||||||
# TODO: vimwiki config
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
extraConfig = let
|
|
||||||
theme = import ../theme.nix;
|
|
||||||
in ''
|
|
||||||
" keybinds
|
|
||||||
let mapleader = "${leader}"
|
|
||||||
let g:mapleader = "${leader}"
|
|
||||||
|
|
||||||
inoremap kj <esc>
|
|
||||||
|
|
||||||
vnoremap < <gv
|
|
||||||
vnoremap > >gv
|
|
||||||
|
|
||||||
nnoremap <c-h> <c-w>h
|
|
||||||
nnoremap <c-j> <c-w>j
|
|
||||||
nnoremap <c-k> <c-w>k
|
|
||||||
nnoremap <c-l> <c-w>l
|
|
||||||
|
|
||||||
nnoremap <leader>s :w<cr>
|
|
||||||
|
|
||||||
" misc
|
|
||||||
set termguicolors
|
|
||||||
set mouse=a
|
|
||||||
set undofile
|
|
||||||
set hidden
|
|
||||||
set encoding=utf-8
|
|
||||||
set hlsearch
|
|
||||||
set incsearch
|
|
||||||
set ignorecase
|
|
||||||
set smartcase
|
|
||||||
set lazyredraw
|
|
||||||
set splitbelow
|
|
||||||
set splitright
|
|
||||||
set matchtime=2
|
|
||||||
set showmatch
|
|
||||||
set wrap
|
|
||||||
set breakindent
|
|
||||||
set nowritebackup
|
|
||||||
set updatetime=250
|
|
||||||
set colorcolumn=+1
|
|
||||||
set cursorline
|
|
||||||
set signcolumn=yes
|
|
||||||
|
|
||||||
set shiftwidth=4
|
|
||||||
set tabstop=4
|
|
||||||
set expandtab
|
|
||||||
|
|
||||||
set shiftround
|
|
||||||
set autoindent
|
|
||||||
set smartindent
|
|
||||||
|
|
||||||
highlight! ExtraWhitespace guibg=${theme.normal.red}
|
|
||||||
match ExtraWhitespace /\s\+$/
|
|
||||||
|
|
||||||
autocmd FileType lisp setlocal shiftwidth=2 tabstop=2
|
|
||||||
autocmd FileType c setlocal noexpandtab shiftwidth=8 tabstop=8
|
|
||||||
|
|
||||||
lua <<EOF
|
|
||||||
vim.diagnostic.config {
|
|
||||||
severity_sort = true,
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,9 +0,0 @@
|
||||||
_: {
|
|
||||||
security.rtkit.enable = true;
|
|
||||||
services.pipewire = {
|
|
||||||
enable = true;
|
|
||||||
alsa.enable = true;
|
|
||||||
jack.enable = true;
|
|
||||||
pulse.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,14 +0,0 @@
|
||||||
{pkgs, ...}: {
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
home = {
|
|
||||||
packages = with pkgs; [
|
|
||||||
roswell
|
|
||||||
sbcl
|
|
||||||
];
|
|
||||||
|
|
||||||
file.".config/common-lisp/source-registry.conf.d/lisp.conf".text = ''
|
|
||||||
(:include (:home "proj" "cl-proj.lisp"))
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,11 +0,0 @@
|
||||||
_: {
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
programs.senpai = {
|
|
||||||
enable = true;
|
|
||||||
config = {
|
|
||||||
addr = "irc.buffet.sh";
|
|
||||||
nick = "buffet";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,11 +0,0 @@
|
||||||
_: {
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
programs.sioyek = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
#config = with import ../theme.nix; {
|
|
||||||
# background_color = makeRgbFloat primary.background;
|
|
||||||
#};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,224 +0,0 @@
|
||||||
{
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
# TODO: turn off primary selection
|
|
||||||
programs.sway.enable = true;
|
|
||||||
|
|
||||||
home-manager.users.buffet = {
|
|
||||||
wayland.windowManager.sway = {
|
|
||||||
enable = true;
|
|
||||||
wrapperFeatures.gtk = true;
|
|
||||||
xwayland = false;
|
|
||||||
|
|
||||||
config = let
|
|
||||||
browser = "firefox";
|
|
||||||
mod = "Mod4";
|
|
||||||
terminal = "foot";
|
|
||||||
theme = import ../theme.nix;
|
|
||||||
|
|
||||||
makeWorkspaceBinds = num: let
|
|
||||||
ws = toString num;
|
|
||||||
in {
|
|
||||||
"${mod}+${ws}" = "workspace ${ws}";
|
|
||||||
"${mod}+Shift+${ws}" = "move container to workspace ${ws}";
|
|
||||||
};
|
|
||||||
|
|
||||||
joinAttrSets = builtins.foldl' (x: y: x // y) {};
|
|
||||||
|
|
||||||
statusCommand = pkgs.writeScript "status_command" ''
|
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
while :; do
|
|
||||||
energy_full=
|
|
||||||
energy_now=
|
|
||||||
charge=
|
|
||||||
|
|
||||||
for bat in /sys/class/power_supply/*/capacity; do
|
|
||||||
bat="''${bat%/*}"
|
|
||||||
read -r full < $bat/energy_full
|
|
||||||
read -r now < $bat/energy_now
|
|
||||||
energy_full=$((energy_full + full))
|
|
||||||
energy_now=$((energy_now + now))
|
|
||||||
done
|
|
||||||
|
|
||||||
if cat /sys/class/power_supply/*/status | grep -q Charging; then
|
|
||||||
charge=+
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ${pkgs.mullvad}/bin/mullvad status | grep -q 'Connected to'; then
|
|
||||||
mullvad='&'
|
|
||||||
else
|
|
||||||
mullvad=
|
|
||||||
fi
|
|
||||||
|
|
||||||
printf '%s %s %s ' "$mullvad" "$charge$((energy_now * 100 / energy_full))%" "$(date +'%H:%M')"
|
|
||||||
|
|
||||||
sleep 3
|
|
||||||
done
|
|
||||||
'';
|
|
||||||
in {
|
|
||||||
modifier = mod;
|
|
||||||
window.border = 1;
|
|
||||||
focus.followMouse = true;
|
|
||||||
fonts = {
|
|
||||||
names = [theme.font.family];
|
|
||||||
style = "Regular";
|
|
||||||
size = theme.font.size * 1.0;
|
|
||||||
};
|
|
||||||
|
|
||||||
gaps = {
|
|
||||||
inner = 8;
|
|
||||||
outer = 0;
|
|
||||||
};
|
|
||||||
|
|
||||||
input."*" = {
|
|
||||||
xkb_layout = "us";
|
|
||||||
xkb_options = "compose:prsc";
|
|
||||||
};
|
|
||||||
|
|
||||||
output."*" = {bg = "${theme.primary.background} solid_color";};
|
|
||||||
|
|
||||||
floating.titlebar = false;
|
|
||||||
window.titlebar = false;
|
|
||||||
|
|
||||||
colors = with theme; rec {
|
|
||||||
focused = rec {
|
|
||||||
inherit (wm.focused) border text;
|
|
||||||
inherit (primary) background;
|
|
||||||
indicator = border;
|
|
||||||
childBorder = border;
|
|
||||||
};
|
|
||||||
|
|
||||||
unfocused = rec {
|
|
||||||
inherit (wm.unfocused) border text;
|
|
||||||
inherit (primary) background;
|
|
||||||
indicator = border;
|
|
||||||
childBorder = border;
|
|
||||||
};
|
|
||||||
|
|
||||||
focusedInactive = unfocused;
|
|
||||||
};
|
|
||||||
|
|
||||||
keybindings = let
|
|
||||||
swaylockConf = pkgs.writeText "swaylock.conf" ''
|
|
||||||
ignore-empty-password
|
|
||||||
color=${theme.primary.background}
|
|
||||||
bs-hl-color=${theme.normal.red}
|
|
||||||
caps-lock-bs-hl-color=${theme.normal.red}
|
|
||||||
caps-lock-key-hl-color=${theme.bright.green}
|
|
||||||
inside-color=${theme.primary.background}
|
|
||||||
inside-clear-color=${theme.normal.yellow}
|
|
||||||
inside-caps-lock-color=${theme.primary.background}
|
|
||||||
inside-ver-color=${theme.normal.blue}
|
|
||||||
inside-wrong-color=${theme.normal.red}
|
|
||||||
key-hl-color=${theme.bright.green}
|
|
||||||
ring-color=${theme.normal.green}
|
|
||||||
ring-clear-color=${theme.normal.yellow}
|
|
||||||
ring-caps-lock-color=${theme.bright.yellow}
|
|
||||||
ring-ver-color=${theme.bright.blue}
|
|
||||||
ring-wrong-color=${theme.bright.red}
|
|
||||||
'';
|
|
||||||
in
|
|
||||||
{
|
|
||||||
"${mod}+Shift+c" = "kill";
|
|
||||||
"${mod}+Control+r" = "reload";
|
|
||||||
"${mod}+Shift+e" = "exit";
|
|
||||||
|
|
||||||
"${mod}+Shift+Return" = "exec ${terminal}";
|
|
||||||
"${mod}+i" = "exec ${browser}";
|
|
||||||
"${mod}+Shift+y" = "exec ${pkgs.swaylock}/bin/swaylock -C '${swaylockConf}'";
|
|
||||||
"${mod}+z" = "exec ${pkgs.brightnessctl}/bin/brightnessctl s 1%-";
|
|
||||||
"${mod}+x" = "exec ${pkgs.brightnessctl}/bin/brightnessctl s 1%+";
|
|
||||||
"${mod}+Shift+z" = "exec ${pkgs.brightnessctl}/bin/brightnessctl s 5%-";
|
|
||||||
"${mod}+Shift+x" = "exec ${pkgs.brightnessctl}/bin/brightnessctl s 5%+";
|
|
||||||
|
|
||||||
"${mod}+p" = "exec ${pkgs.sway-contrib.grimshot}/bin/grimshot copy window";
|
|
||||||
"${mod}+Shift+p" = "exec ${pkgs.sway-contrib.grimshot}/bin/grimshot copy active";
|
|
||||||
|
|
||||||
"${mod}+o" = "splith";
|
|
||||||
"${mod}+u" = "splitv";
|
|
||||||
|
|
||||||
"${mod}+s" = "layout stacking";
|
|
||||||
"${mod}+t" = "layout tabbed";
|
|
||||||
"${mod}+e" = "layout toggle split";
|
|
||||||
"${mod}+f" = "fullscreen";
|
|
||||||
|
|
||||||
"${mod}+h" = "focus left";
|
|
||||||
"${mod}+j" = "focus down";
|
|
||||||
"${mod}+k" = "focus up";
|
|
||||||
"${mod}+l" = "focus right";
|
|
||||||
|
|
||||||
"${mod}+Left" = "focus left";
|
|
||||||
"${mod}+Down" = "focus down";
|
|
||||||
"${mod}+Up" = "focus up";
|
|
||||||
"${mod}+Right" = "focus right";
|
|
||||||
|
|
||||||
"${mod}+Shift+h" = "move left";
|
|
||||||
"${mod}+Shift+j" = "move down";
|
|
||||||
"${mod}+Shift+k" = "move up";
|
|
||||||
"${mod}+Shift+l" = "move right";
|
|
||||||
|
|
||||||
"${mod}+Ctrl+h" = "resize grow left 10 px or 10 ppt";
|
|
||||||
"${mod}+Ctrl+j" = "resize grow down 10 px or 10 ppt";
|
|
||||||
"${mod}+Ctrl+k" = "resize grow up 10 px or 10 ppt";
|
|
||||||
"${mod}+Ctrl+l" = "resize grow right 10 px or 10 ppt";
|
|
||||||
|
|
||||||
"${mod}+space" = "focus mode_toggle";
|
|
||||||
"${mod}+a" = "focus parent";
|
|
||||||
|
|
||||||
"${mod}+Shift+space" = "floating toggle";
|
|
||||||
}
|
|
||||||
// (joinAttrSets (map makeWorkspaceBinds (lib.range 1 9)));
|
|
||||||
|
|
||||||
seat."*" = {hide_cursor = "when-typing enable";};
|
|
||||||
|
|
||||||
bars = [
|
|
||||||
{
|
|
||||||
position = "top";
|
|
||||||
fonts = {
|
|
||||||
names = [theme.font.family];
|
|
||||||
style = "Regular";
|
|
||||||
size = theme.font.size * 1.0;
|
|
||||||
};
|
|
||||||
statusCommand = "${statusCommand}";
|
|
||||||
|
|
||||||
colors = with theme; {
|
|
||||||
statusline = primary.foreground;
|
|
||||||
inherit (primary) background;
|
|
||||||
|
|
||||||
focusedWorkspace = {
|
|
||||||
inherit (primary) background;
|
|
||||||
inherit (wm.focused) text;
|
|
||||||
inherit (wm.focused) border;
|
|
||||||
};
|
|
||||||
|
|
||||||
inactiveWorkspace = {
|
|
||||||
inherit (primary) background;
|
|
||||||
inherit (wm.unfocused) text;
|
|
||||||
border = primary.background;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
extraConfig = ''
|
|
||||||
gaps 5
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
extraConfig = ''
|
|
||||||
for_window [title="leftovers"] floating enable
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
xdg.portal = {
|
|
||||||
enable = true;
|
|
||||||
wlr.enable = true;
|
|
||||||
extraPortals = with pkgs; [
|
|
||||||
xdg-desktop-portal-gtk
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,5 +0,0 @@
|
||||||
let
|
|
||||||
buffet = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOA928bjB90FwkTLtQcPW1mP+QLViVfEVdMHg+7/8Fxh";
|
|
||||||
in {
|
|
||||||
"secrets/borgpassword.age".publicKeys = [buffet];
|
|
||||||
}
|
|
|
@ -1,10 +0,0 @@
|
||||||
age-encryption.org/v1
|
|
||||||
-> ssh-ed25519 zRvPWg kFRBhVsPwM0Y7d/to2HZlK3QYa+rrJS663unhFYAUl8
|
|
||||||
XqHrme+FUS3qEJODmbq3I5oNtUuIzD0KZZ84/HDoQrs
|
|
||||||
-> HZsYe9qT-grease T_?% t%Ew2u
|
|
||||||
Ib3oPsORNcIZYGWIyrDWH51rM2cWQJLz5U7oOVty+as+sFGGR5f/4EcD04B18jgC
|
|
||||||
egHRSNZkzQCDE2CUVJ8emfdHRl20oH0PzpElIHvKPwoyzrrmroFZs8nWnxmZkQ
|
|
||||||
--- 1OnkX3KPJ6tPSSUrQL22va6IQxq/wL5Q65//yX6+G88
|
|
||||||
M`ê?<Jˆ´l4V
<0A>ßN<C39F>”¡v#f1¾,0˃PàHÍÑÈòÃ/´™j¾ÅøºòŠK¢òÿCêaÛ&ô§,Rðc¼ùÙ½x†%ªÝaå[5¢`°r¨yè™»}àŸIõºF"ÆÀ¯w¯gUˆ?ÇÌÙmŽ>°†cª½ã|Ý/R9C|
|
|
||||||
MÝ”lÔɦ-Ë9
|
|
||||||
“
K³>S2û¦#;Ž
|
|
45
system.nix
45
system.nix
|
@ -1,45 +0,0 @@
|
||||||
{
|
|
||||||
nixpkgs,
|
|
||||||
nixpkgs-unstable,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
time.timeZone = "Europe/Berlin";
|
|
||||||
i18n.defaultLocale = "en_US.UTF-8";
|
|
||||||
|
|
||||||
boot.loader = {
|
|
||||||
systemd-boot.enable = true;
|
|
||||||
efi.canTouchEfiVariables = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems = {
|
|
||||||
"/".options = ["compress=zstd"];
|
|
||||||
"/nix".options = ["compress=zstd" "noatime"];
|
|
||||||
"/persist".options = ["compress=zstd"];
|
|
||||||
};
|
|
||||||
|
|
||||||
networking = {
|
|
||||||
networkmanager.enable = true;
|
|
||||||
nameservers = ["1.1.1.1"];
|
|
||||||
};
|
|
||||||
|
|
||||||
nix = {
|
|
||||||
registry = {
|
|
||||||
nixpkgs.flake = nixpkgs;
|
|
||||||
nixpkgs-unstable.flake = nixpkgs-unstable;
|
|
||||||
};
|
|
||||||
settings = {
|
|
||||||
auto-optimise-store = true;
|
|
||||||
trusted-users = ["root" "buffet"];
|
|
||||||
};
|
|
||||||
|
|
||||||
gc = {
|
|
||||||
automatic = true;
|
|
||||||
dates = "weekly";
|
|
||||||
options = "--delete-older-than 30d";
|
|
||||||
};
|
|
||||||
|
|
||||||
extraOptions = ''
|
|
||||||
experimental-features = nix-command flakes
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
|
52
theme.nix
52
theme.nix
|
@ -1,52 +0,0 @@
|
||||||
{
|
|
||||||
light = false;
|
|
||||||
|
|
||||||
font = {
|
|
||||||
family = "APL386 Unicode";
|
|
||||||
size = 7;
|
|
||||||
};
|
|
||||||
|
|
||||||
primary = {
|
|
||||||
background = "#1f1f28";
|
|
||||||
foreground = "#dcd7ba";
|
|
||||||
};
|
|
||||||
|
|
||||||
cursor = {
|
|
||||||
background = "#2d4f67";
|
|
||||||
foreground = "#c8c093";
|
|
||||||
};
|
|
||||||
|
|
||||||
normal = {
|
|
||||||
black = "#090618";
|
|
||||||
red = "#c34043";
|
|
||||||
green = "#76946a";
|
|
||||||
yellow = "#c0a36e";
|
|
||||||
blue = "#7e9cd8";
|
|
||||||
magenta = "#957fb8";
|
|
||||||
cyan = "#6a9589";
|
|
||||||
white = "#c8c093";
|
|
||||||
};
|
|
||||||
|
|
||||||
bright = {
|
|
||||||
black = "#727169";
|
|
||||||
red = "#e82424";
|
|
||||||
green = "#98bb6c";
|
|
||||||
yellow = "#e6c384";
|
|
||||||
blue = "#7fb4ca";
|
|
||||||
magenta = "#938aa9";
|
|
||||||
cyan = "#7aa89f";
|
|
||||||
white = "#dcd7ba";
|
|
||||||
};
|
|
||||||
|
|
||||||
wm = {
|
|
||||||
focused = {
|
|
||||||
text = "#dcd7ba";
|
|
||||||
border = "#54546d";
|
|
||||||
};
|
|
||||||
|
|
||||||
unfocused = {
|
|
||||||
text = "#c8c093";
|
|
||||||
border = "#363646";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
Loading…
Reference in a new issue