installed and ran alejandra as formatter
This commit is contained in:
parent
49452e89db
commit
8a1314b58f
47 changed files with 1362 additions and 1113 deletions
67
common.nix
67
common.nix
|
@ -1,12 +1,14 @@
|
||||||
# Edit this configuration file to define what should be installed on
|
# Edit this configuration file to define what should be installed on
|
||||||
# your system. Help is available in the configuration.nix(5) man page
|
# your system. Help is available in the configuration.nix(5) man page
|
||||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||||
|
|
||||||
{ config, pkgs, lib, ... }:
|
|
||||||
|
|
||||||
with lib;
|
|
||||||
with builtins;
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
with lib;
|
||||||
|
with builtins; {
|
||||||
nix = {
|
nix = {
|
||||||
package = pkgs.nixVersions.stable;
|
package = pkgs.nixVersions.stable;
|
||||||
extraOptions = ''
|
extraOptions = ''
|
||||||
|
@ -29,11 +31,45 @@ with builtins;
|
||||||
systemPackages = with pkgs; [
|
systemPackages = with pkgs; [
|
||||||
htmlq
|
htmlq
|
||||||
|
|
||||||
wget git neofetch pciutils zip unzip gnutar iw btop nodejs jdk8 jdk11
|
wget
|
||||||
jdk libsecret gh nix-prefetch-scripts fzf glab ripgrep
|
git
|
||||||
sl lolcat appimage-run git-crypt file whois p7zip file nmap cmatrix tree
|
neofetch
|
||||||
socat smartmontools mprocs
|
pciutils
|
||||||
dig aria2 usbutils numbat
|
zip
|
||||||
|
unzip
|
||||||
|
gnutar
|
||||||
|
iw
|
||||||
|
btop
|
||||||
|
nodejs
|
||||||
|
jdk8
|
||||||
|
jdk11
|
||||||
|
jdk
|
||||||
|
libsecret
|
||||||
|
gh
|
||||||
|
nix-prefetch-scripts
|
||||||
|
fzf
|
||||||
|
glab
|
||||||
|
ripgrep
|
||||||
|
sl
|
||||||
|
lolcat
|
||||||
|
appimage-run
|
||||||
|
git-crypt
|
||||||
|
file
|
||||||
|
whois
|
||||||
|
p7zip
|
||||||
|
file
|
||||||
|
nmap
|
||||||
|
cmatrix
|
||||||
|
tree
|
||||||
|
socat
|
||||||
|
smartmontools
|
||||||
|
mprocs
|
||||||
|
dig
|
||||||
|
aria2
|
||||||
|
usbutils
|
||||||
|
numbat
|
||||||
|
|
||||||
|
alejandra
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -82,12 +118,16 @@ with builtins;
|
||||||
|
|
||||||
time.timeZone = "Europe/Berlin";
|
time.timeZone = "Europe/Berlin";
|
||||||
|
|
||||||
home-manager.users.jade = { nixosConfig, pkgs, ... }: {
|
home-manager.users.jade = {
|
||||||
|
nixosConfig,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
home.sessionVariables.TZ = nixosConfig.time.timeZone;
|
home.sessionVariables.TZ = nixosConfig.time.timeZone;
|
||||||
};
|
};
|
||||||
|
|
||||||
nixpkgs.config.packageOverrides = pkgs: {
|
nixpkgs.config.packageOverrides = pkgs: {
|
||||||
sudo = pkgs.sudo.override { withInsults = true; };
|
sudo = pkgs.sudo.override {withInsults = true;};
|
||||||
};
|
};
|
||||||
security.sudo.extraConfig = "Defaults insults";
|
security.sudo.extraConfig = "Defaults insults";
|
||||||
|
|
||||||
|
@ -104,7 +144,7 @@ with builtins;
|
||||||
|
|
||||||
users.users.jade = {
|
users.users.jade = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
extraGroups = [ "wheel" "input" "uinput" "libvirtd" "adbusers" "dialout" "plugdev" "wireshark" ];
|
extraGroups = ["wheel" "input" "uinput" "libvirtd" "adbusers" "dialout" "plugdev" "wireshark"];
|
||||||
packages = [
|
packages = [
|
||||||
pkgs.marksman
|
pkgs.marksman
|
||||||
];
|
];
|
||||||
|
@ -117,4 +157,3 @@ with builtins;
|
||||||
|
|
||||||
users.defaultUserShell = pkgs.nushellFull;
|
users.defaultUserShell = pkgs.nushellFull;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
37
flake.nix
37
flake.nix
|
@ -24,7 +24,15 @@
|
||||||
gumseite.url = "git+https://gitlab.com/schrottkatze/gum-schulsachen.git";
|
gumseite.url = "git+https://gitlab.com/schrottkatze/gum-schulsachen.git";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, nixpkgs, nixpkgs-stable, home-manager, nixos-hardware, mac-brcm-fw, ... }@inputs: {
|
outputs = {
|
||||||
|
self,
|
||||||
|
nixpkgs,
|
||||||
|
nixpkgs-stable,
|
||||||
|
home-manager,
|
||||||
|
nixos-hardware,
|
||||||
|
mac-brcm-fw,
|
||||||
|
...
|
||||||
|
} @ inputs: {
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
monosodium-glutamate-g = nixpkgs.lib.nixosSystem {
|
monosodium-glutamate-g = nixpkgs.lib.nixosSystem {
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
|
@ -33,10 +41,15 @@
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
modules = [
|
modules = [
|
||||||
./hosts/monosodium-glutamate-g/configuration.nix
|
./hosts/monosodium-glutamate-g/configuration.nix
|
||||||
home-manager.nixosModules.home-manager {
|
home-manager.nixosModules.home-manager
|
||||||
|
{
|
||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.useUserPackages = true;
|
home-manager.useUserPackages = true;
|
||||||
home-manager.users.jade = { nixosConfig, pkgs, ... }: {
|
home-manager.users.jade = {
|
||||||
|
nixosConfig,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
home.sessionVariables.TZ = nixosConfig.time.timeZone;
|
home.sessionVariables.TZ = nixosConfig.time.timeZone;
|
||||||
home.stateVersion = "${nixosConfig.system.stateVersion}";
|
home.stateVersion = "${nixosConfig.system.stateVersion}";
|
||||||
};
|
};
|
||||||
|
@ -50,10 +63,15 @@
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
modules = [
|
modules = [
|
||||||
./hosts/catbook-j/configuration.nix
|
./hosts/catbook-j/configuration.nix
|
||||||
home-manager.nixosModules.home-manager {
|
home-manager.nixosModules.home-manager
|
||||||
|
{
|
||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.useUserPackages = true;
|
home-manager.useUserPackages = true;
|
||||||
home-manager.users.jade = { nixosConfig, pkgs, ... }: {
|
home-manager.users.jade = {
|
||||||
|
nixosConfig,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
home.sessionVariables.TZ = nixosConfig.time.timeZone;
|
home.sessionVariables.TZ = nixosConfig.time.timeZone;
|
||||||
home.stateVersion = "22.11";
|
home.stateVersion = "22.11";
|
||||||
};
|
};
|
||||||
|
@ -68,10 +86,15 @@
|
||||||
modules = [
|
modules = [
|
||||||
"${mac-brcm-fw}"
|
"${mac-brcm-fw}"
|
||||||
./hosts/potatobook-g/configuration.nix
|
./hosts/potatobook-g/configuration.nix
|
||||||
home-manager.nixosModules.home-manager {
|
home-manager.nixosModules.home-manager
|
||||||
|
{
|
||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.useUserPackages = true;
|
home-manager.useUserPackages = true;
|
||||||
home-manager.users.jade = { nixosConfig, pkgs, ... }: {
|
home-manager.users.jade = {
|
||||||
|
nixosConfig,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
home.sessionVariables.TZ = nixosConfig.time.timeZone;
|
home.sessionVariables.TZ = nixosConfig.time.timeZone;
|
||||||
home.stateVersion = "${nixosConfig.system.stateVersion}";
|
home.stateVersion = "${nixosConfig.system.stateVersion}";
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,10 +1,14 @@
|
||||||
# Edit this configuration file to define what should be installed on
|
# Edit this configuration file to define what should be installed on
|
||||||
# your system. Help is available in the configuration.nix(5) man page
|
# your system. Help is available in the configuration.nix(5) man page
|
||||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||||
|
{
|
||||||
{ config, pkgs, lib, ... }: {
|
config,
|
||||||
imports =
|
pkgs,
|
||||||
[ # Include the results of the hardware scan.
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [
|
||||||
|
# Include the results of the hardware scan.
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
../../common.nix
|
../../common.nix
|
||||||
../../modules
|
../../modules
|
||||||
|
@ -33,22 +37,22 @@
|
||||||
|
|
||||||
hardware.usb-modeswitch.enable = true;
|
hardware.usb-modeswitch.enable = true;
|
||||||
systemd.services."ModemManager".enable = true;
|
systemd.services."ModemManager".enable = true;
|
||||||
systemd.services."ModemManager".wants = [ "NetworkManager.service" ];
|
systemd.services."ModemManager".wants = ["NetworkManager.service"];
|
||||||
systemd.services."ModemManager".wantedBy = [ "multi-user.target" ];
|
systemd.services."ModemManager".wantedBy = ["multi-user.target"];
|
||||||
|
|
||||||
programs.wireshark.enable = true;
|
programs.wireshark.enable = true;
|
||||||
|
|
||||||
boot.resumeDevice = "/dev/disk/by-uuid/4f9e8afa-f8d7-40bf-b3ea-17e8e8fbb694";
|
boot.resumeDevice = "/dev/disk/by-uuid/4f9e8afa-f8d7-40bf-b3ea-17e8e8fbb694";
|
||||||
boot.kernelParams = [ "resume_offset=7380652" ];
|
boot.kernelParams = ["resume_offset=7380652"];
|
||||||
|
|
||||||
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
|
boot.binfmt.emulatedSystems = ["aarch64-linux"];
|
||||||
|
|
||||||
hardware.bluetooth.enable = true;
|
hardware.bluetooth.enable = true;
|
||||||
services.blueman.enable = true;
|
services.blueman.enable = true;
|
||||||
|
|
||||||
services.xserver.libinput.touchpad.tapping = false;
|
services.xserver.libinput.touchpad.tapping = false;
|
||||||
|
|
||||||
environment.systemPackages = [ pkgs.vivaldi pkgs.vivaldi-ffmpeg-codecs pkgs.plantuml pkgs.mqttui pkgs.mobile-broadband-provider-info pkgs.modem-manager-gui pkgs.wireshark];
|
environment.systemPackages = [pkgs.vivaldi pkgs.vivaldi-ffmpeg-codecs pkgs.plantuml pkgs.mqttui pkgs.mobile-broadband-provider-info pkgs.modem-manager-gui pkgs.wireshark];
|
||||||
|
|
||||||
# Bootloader.
|
# Bootloader.
|
||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
@ -119,5 +123,4 @@
|
||||||
# Before changing this value read the documentation for this option
|
# Before changing this value read the documentation for this option
|
||||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||||
system.stateVersion = "23.05"; # Did you read the comment?
|
system.stateVersion = "23.05"; # Did you read the comment?
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,47 +1,53 @@
|
||||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
# and may be overwritten by future invocations. Please make changes
|
# and may be overwritten by future invocations. Please make changes
|
||||||
# to /etc/nixos/configuration.nix instead.
|
# to /etc/nixos/configuration.nix instead.
|
||||||
{ config, lib, pkgs, modulesPath, ... }:
|
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
config,
|
||||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
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.availableKernelModules = ["xhci_pci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc"];
|
||||||
boot.initrd.kernelModules = [ ];
|
boot.initrd.kernelModules = [];
|
||||||
boot.kernelModules = [ "kvm-intel" ];
|
boot.kernelModules = ["kvm-intel"];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [];
|
||||||
|
|
||||||
fileSystems."/" =
|
fileSystems."/" = {
|
||||||
{ device = "/dev/disk/by-uuid/4f9e8afa-f8d7-40bf-b3ea-17e8e8fbb694";
|
device = "/dev/disk/by-uuid/4f9e8afa-f8d7-40bf-b3ea-17e8e8fbb694";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=@" "compress=zstd:3" "noatime" ];
|
options = ["subvol=@" "compress=zstd:3" "noatime"];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/home" =
|
fileSystems."/home" = {
|
||||||
{ device = "/dev/disk/by-uuid/4f9e8afa-f8d7-40bf-b3ea-17e8e8fbb694";
|
device = "/dev/disk/by-uuid/4f9e8afa-f8d7-40bf-b3ea-17e8e8fbb694";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=@home" "compress=zstd:3" ];
|
options = ["subvol=@home" "compress=zstd:3"];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/swap" =
|
fileSystems."/swap" = {
|
||||||
{ device = "/dev/disk/by-uuid/4f9e8afa-f8d7-40bf-b3ea-17e8e8fbb694";
|
device = "/dev/disk/by-uuid/4f9e8afa-f8d7-40bf-b3ea-17e8e8fbb694";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=@/@swap" "noatime" ];
|
options = ["subvol=@/@swap" "noatime"];
|
||||||
};
|
};
|
||||||
|
|
||||||
boot.initrd.luks.devices."luks-9cd75cce-6829-4db8-8c5c-a9fb9ec3e122".device = "/dev/disk/by-uuid/9cd75cce-6829-4db8-8c5c-a9fb9ec3e122";
|
boot.initrd.luks.devices."luks-9cd75cce-6829-4db8-8c5c-a9fb9ec3e122".device = "/dev/disk/by-uuid/9cd75cce-6829-4db8-8c5c-a9fb9ec3e122";
|
||||||
|
|
||||||
fileSystems."/boot" =
|
fileSystems."/boot" = {
|
||||||
{ device = "/dev/disk/by-uuid/C6CA-5DE8";
|
device = "/dev/disk/by-uuid/C6CA-5DE8";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices = [{
|
swapDevices = [
|
||||||
|
{
|
||||||
device = "/swap/swapfile";
|
device = "/swap/swapfile";
|
||||||
size = (1024 * 24);
|
size = 1024 * 24;
|
||||||
}];
|
}
|
||||||
|
];
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
# 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
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
# Edit this configuration file to define what should be installed on
|
# Edit this configuration file to define what should be installed on
|
||||||
# your system. Help is available in the configuration.nix(5) man page
|
# your system. Help is available in the configuration.nix(5) man page
|
||||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||||
|
{pkgs, ...}: {
|
||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
../../common.nix
|
../../common.nix
|
||||||
|
@ -44,7 +42,6 @@
|
||||||
};
|
};
|
||||||
boot = {
|
boot = {
|
||||||
loader = {
|
loader = {
|
||||||
|
|
||||||
# Use the systemd-boot EFI boot loader.
|
# Use the systemd-boot EFI boot loader.
|
||||||
systemd-boot.enable = true;
|
systemd-boot.enable = true;
|
||||||
efi.canTouchEfiVariables = true;
|
efi.canTouchEfiVariables = true;
|
||||||
|
@ -60,16 +57,14 @@
|
||||||
# }
|
# }
|
||||||
# ];
|
# ];
|
||||||
|
|
||||||
binfmt.emulatedSystems = [ "aarch64-linux" ];
|
binfmt.emulatedSystems = ["aarch64-linux"];
|
||||||
};
|
};
|
||||||
|
|
||||||
networking.hostName = "monosodium-glutamate-g";
|
networking.hostName = "monosodium-glutamate-g";
|
||||||
services = {
|
services = {
|
||||||
|
|
||||||
# monitor control
|
# monitor control
|
||||||
ddccontrol.enable = true;
|
ddccontrol.enable = true;
|
||||||
xserver = {
|
xserver = {
|
||||||
|
|
||||||
layout = "us";
|
layout = "us";
|
||||||
xkbVariant = "altgr-intl";
|
xkbVariant = "altgr-intl";
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -82,7 +77,6 @@
|
||||||
gnome.gnome-keyring.enable = true;
|
gnome.gnome-keyring.enable = true;
|
||||||
};
|
};
|
||||||
hardware = {
|
hardware = {
|
||||||
|
|
||||||
bluetooth.enable = true;
|
bluetooth.enable = true;
|
||||||
keyboard.uhk.enable = true;
|
keyboard.uhk.enable = true;
|
||||||
enableRedistributableFirmware = true;
|
enableRedistributableFirmware = true;
|
||||||
|
@ -96,7 +90,8 @@
|
||||||
wireshark
|
wireshark
|
||||||
awesomebump
|
awesomebump
|
||||||
|
|
||||||
zenstates zenmonitor
|
zenstates
|
||||||
|
zenmonitor
|
||||||
nvtop-amd
|
nvtop-amd
|
||||||
radeontop
|
radeontop
|
||||||
rgp
|
rgp
|
||||||
|
@ -125,7 +120,7 @@
|
||||||
systemd.services = {
|
systemd.services = {
|
||||||
create-swapfile = {
|
create-swapfile = {
|
||||||
serviceConfig.Type = "oneshot";
|
serviceConfig.Type = "oneshot";
|
||||||
wantedBy = [ "swap-swapfile.swap" ];
|
wantedBy = ["swap-swapfile.swap"];
|
||||||
script = ''
|
script = ''
|
||||||
swapfile="/swap/swapfile"
|
swapfile="/swap/swapfile"
|
||||||
if [[ -f "$swapfile" ]]; then
|
if [[ -f "$swapfile" ]]; then
|
||||||
|
@ -142,6 +137,3 @@
|
||||||
# release channel
|
# release channel
|
||||||
system.stateVersion = "22.05"; # Did you read the comment?
|
system.stateVersion = "22.05"; # Did you read the comment?
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,39 +1,45 @@
|
||||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
# and may be overwritten by future invocations. Please make changes
|
# and may be overwritten by future invocations. Please make changes
|
||||||
# to /etc/nixos/configuration.nix instead.
|
# to /etc/nixos/configuration.nix instead.
|
||||||
{ config, lib, pkgs, modulesPath, ... }:
|
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
config,
|
||||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [
|
||||||
|
(modulesPath + "/installer/scan/not-detected.nix")
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
|
boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod"];
|
||||||
boot.initrd.kernelModules = [ ];
|
boot.initrd.kernelModules = [];
|
||||||
boot.kernelModules = [ "kvm-amd" ];
|
boot.kernelModules = ["kvm-amd"];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [];
|
||||||
|
|
||||||
fileSystems."/" =
|
fileSystems."/" = {
|
||||||
{ device = "/dev/disk/by-uuid/72ffbc9d-a319-42d7-8d26-13c921a679db";
|
device = "/dev/disk/by-uuid/72ffbc9d-a319-42d7-8d26-13c921a679db";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=@root" "compress=zstd:3" ];
|
options = ["subvol=@root" "compress=zstd:3"];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/home" =
|
fileSystems."/home" = {
|
||||||
{ device = "/dev/disk/by-uuid/72ffbc9d-a319-42d7-8d26-13c921a679db";
|
device = "/dev/disk/by-uuid/72ffbc9d-a319-42d7-8d26-13c921a679db";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=@home" "compress=zstd:3"];
|
options = ["subvol=@home" "compress=zstd:3"];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" =
|
fileSystems."/boot" = {
|
||||||
{ device = "/dev/disk/by-uuid/D63E-18C9";
|
device = "/dev/disk/by-uuid/D63E-18C9";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices = [{
|
swapDevices = [
|
||||||
|
{
|
||||||
device = "/swap/swapfile";
|
device = "/swap/swapfile";
|
||||||
size = (1024 * 64) + (1024 * 8); # 72G
|
size = (1024 * 64) + (1024 * 8); # 72G
|
||||||
} ];
|
}
|
||||||
|
];
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
# 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
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ pkgs, ... }: {
|
{pkgs, ...}: {
|
||||||
nix.settings = {
|
nix.settings = {
|
||||||
trusted-substituters = [
|
trusted-substituters = [
|
||||||
"https://t2linux.cachix.org"
|
"https://t2linux.cachix.org"
|
||||||
|
@ -38,7 +38,7 @@
|
||||||
#}
|
#}
|
||||||
#];
|
#];
|
||||||
|
|
||||||
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
|
boot.binfmt.emulatedSystems = ["aarch64-linux"];
|
||||||
|
|
||||||
jade = {
|
jade = {
|
||||||
flatpak.enable = true;
|
flatpak.enable = true;
|
||||||
|
@ -57,9 +57,9 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems = {
|
fileSystems = {
|
||||||
"/".options = [ "compress=zstd:3" ];
|
"/".options = ["compress=zstd:3"];
|
||||||
"/home".options = [ "compress=zstd:3" ];
|
"/home".options = ["compress=zstd:3"];
|
||||||
"/nix".options = [ "compress=zstd:3" "noatime" ];
|
"/nix".options = ["compress=zstd:3" "noatime"];
|
||||||
#"/swap".options = [ "noatime" ];
|
#"/swap".options = [ "noatime" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -70,9 +70,13 @@
|
||||||
|
|
||||||
networking.hostName = "potatobook-g";
|
networking.hostName = "potatobook-g";
|
||||||
|
|
||||||
|
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
resolutions = [ { x = 1920; y = 1200; } ];
|
resolutions = [
|
||||||
|
{
|
||||||
|
x = 1920;
|
||||||
|
y = 1200;
|
||||||
|
}
|
||||||
|
];
|
||||||
# dpi = 180;
|
# dpi = 180;
|
||||||
layout = "us";
|
layout = "us";
|
||||||
xkbVariant = "altgr-intl";
|
xkbVariant = "altgr-intl";
|
||||||
|
@ -95,9 +99,9 @@
|
||||||
hardware.keyboard.uhk.enable = true;
|
hardware.keyboard.uhk.enable = true;
|
||||||
hardware.enableRedistributableFirmware = true;
|
hardware.enableRedistributableFirmware = true;
|
||||||
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
android-tools evremap
|
android-tools
|
||||||
|
evremap
|
||||||
];
|
];
|
||||||
|
|
||||||
environment.pathsToLink = [
|
environment.pathsToLink = [
|
||||||
|
@ -154,7 +158,7 @@
|
||||||
systemd.services = {
|
systemd.services = {
|
||||||
create-swapfile = {
|
create-swapfile = {
|
||||||
serviceConfig.Type = "oneshot";
|
serviceConfig.Type = "oneshot";
|
||||||
wantedBy = [ "swap-swapfile.swap" ];
|
wantedBy = ["swap-swapfile.swap"];
|
||||||
script = ''
|
script = ''
|
||||||
swapfile="/swap/swapfile"
|
swapfile="/swap/swapfile"
|
||||||
if [[ -f "$swapfile" ]]; then
|
if [[ -f "$swapfile" ]]; then
|
||||||
|
@ -175,5 +179,3 @@
|
||||||
# i rly should put that important big comment back here
|
# i rly should put that important big comment back here
|
||||||
system.stateVersion = "22.11"; # Did you read the comment?
|
system.stateVersion = "22.11"; # Did you read the comment?
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,45 +1,51 @@
|
||||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
# and may be overwritten by future invocations. Please make changes
|
# and may be overwritten by future invocations. Please make changes
|
||||||
# to /etc/nixos/configuration.nix instead.
|
# to /etc/nixos/configuration.nix instead.
|
||||||
{ config, lib, pkgs, modulesPath, ... }:
|
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
config,
|
||||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [
|
||||||
|
(modulesPath + "/installer/scan/not-detected.nix")
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usbhid" "uas" "sd_mod" ];
|
boot.initrd.availableKernelModules = ["xhci_pci" "nvme" "usbhid" "uas" "sd_mod"];
|
||||||
boot.initrd.kernelModules = [ ];
|
boot.initrd.kernelModules = [];
|
||||||
boot.kernelModules = [ "kvm-intel" ];
|
boot.kernelModules = ["kvm-intel"];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [];
|
||||||
|
|
||||||
fileSystems."/" =
|
fileSystems."/" = {
|
||||||
{ device = "/dev/disk/by-uuid/f6d243ec-6be9-4551-8cbb-aefb7b691a62";
|
device = "/dev/disk/by-uuid/f6d243ec-6be9-4551-8cbb-aefb7b691a62";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=root" ];
|
options = ["subvol=root"];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/home" =
|
fileSystems."/home" = {
|
||||||
{ device = "/dev/disk/by-uuid/f6d243ec-6be9-4551-8cbb-aefb7b691a62";
|
device = "/dev/disk/by-uuid/f6d243ec-6be9-4551-8cbb-aefb7b691a62";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=home" ];
|
options = ["subvol=home"];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/nix" =
|
fileSystems."/nix" = {
|
||||||
{ device = "/dev/disk/by-uuid/f6d243ec-6be9-4551-8cbb-aefb7b691a62";
|
device = "/dev/disk/by-uuid/f6d243ec-6be9-4551-8cbb-aefb7b691a62";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=nix" ];
|
options = ["subvol=nix"];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" =
|
fileSystems."/boot" = {
|
||||||
{ device = "/dev/disk/by-uuid/5F66-17ED";
|
device = "/dev/disk/by-uuid/5F66-17ED";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices = [{
|
swapDevices = [
|
||||||
|
{
|
||||||
device = "/swap/swapfile";
|
device = "/swap/swapfile";
|
||||||
size = (1024 * 12); # 12GB
|
size = 1024 * 12; # 12GB
|
||||||
}];
|
}
|
||||||
|
];
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
# 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
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
{config, pkgs, ...}:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
<nixpkgs/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix>
|
<nixpkgs/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix>
|
||||||
<nixpkgs/nixos/modules/installer/cd-dvd/channel.nix>
|
<nixpkgs/nixos/modules/installer/cd-dvd/channel.nix>
|
||||||
./configuration.nix
|
./configuration.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
{ ... }: {}
|
{...}: {}
|
||||||
|
|
||||||
# dummy
|
# dummy
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
{ ... }:
|
{...}: {
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
./shell
|
./shell
|
||||||
./desktop
|
./desktop
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
{ config, lib, pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
config = {
|
config = {
|
||||||
programs = {
|
programs = {
|
||||||
noisetorch.enable = true;
|
noisetorch.enable = true;
|
||||||
|
@ -15,7 +18,7 @@
|
||||||
};
|
};
|
||||||
hardware.pulseaudio.enable = pkgs.lib.mkForce false;
|
hardware.pulseaudio.enable = pkgs.lib.mkForce false;
|
||||||
sound.mediaKeys.enable = true;
|
sound.mediaKeys.enable = true;
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
pavucontrol
|
pavucontrol
|
||||||
pulseaudioFull
|
pulseaudioFull
|
||||||
|
|
|
@ -1,12 +1,17 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
let cfg = config.jade.desktop.cloud;
|
lib,
|
||||||
in with lib; {
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
cfg = config.jade.desktop.cloud;
|
||||||
|
in
|
||||||
|
with lib; {
|
||||||
options.jade.desktop.cloud = {
|
options.jade.desktop.cloud = {
|
||||||
enable = mkEnableOption "Enable cloud things";
|
enable = mkEnableOption "Enable cloud things";
|
||||||
};
|
};
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
fluent-reader
|
fluent-reader
|
||||||
bitwarden
|
bitwarden
|
||||||
|
@ -14,4 +19,4 @@ in with lib; {
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,12 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
let
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
cfg = config.jade.desktop.compositing;
|
cfg = config.jade.desktop.compositing;
|
||||||
in with lib; {
|
in
|
||||||
|
with lib; {
|
||||||
options.jade.desktop.compositing = {
|
options.jade.desktop.compositing = {
|
||||||
enable = mkEnableOption "Enable compositing with picom";
|
enable = mkEnableOption "Enable compositing with picom";
|
||||||
};
|
};
|
||||||
|
@ -12,7 +16,7 @@ in with lib; {
|
||||||
backend = "glx";
|
backend = "glx";
|
||||||
|
|
||||||
shadow = true;
|
shadow = true;
|
||||||
shadowOffsets = [ (-40) (-30) ];
|
shadowOffsets = [(-40) (-30)];
|
||||||
shadowOpacity = 0.2;
|
shadowOpacity = 0.2;
|
||||||
shadowExclude = [
|
shadowExclude = [
|
||||||
"class_g ?= 'Notify-osd'"
|
"class_g ?= 'Notify-osd'"
|
||||||
|
@ -28,11 +32,11 @@ in with lib; {
|
||||||
"fade-in-step" = 0.25;
|
"fade-in-step" = 0.25;
|
||||||
"fade-out-step" = 0.2;
|
"fade-out-step" = 0.2;
|
||||||
"fade-delta" = 20;
|
"fade-delta" = 20;
|
||||||
"fade-exclude" = [ "class_g != 'Rofi'" ];
|
"fade-exclude" = ["class_g != 'Rofi'"];
|
||||||
# use damage information
|
# use damage information
|
||||||
"use-damage" = true;
|
"use-damage" = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
# }}}
|
# }}}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ pkgs, ... }: {
|
{pkgs, ...}: {
|
||||||
fonts.packages = with pkgs; [
|
fonts.packages = with pkgs; [
|
||||||
(nerdfonts.override { fonts = [ "FiraCode" ]; })
|
(nerdfonts.override {fonts = ["FiraCode"];})
|
||||||
montserrat
|
montserrat
|
||||||
noto-fonts
|
noto-fonts
|
||||||
atkinson-hyperlegible
|
atkinson-hyperlegible
|
||||||
|
@ -12,7 +12,7 @@
|
||||||
ocr-a
|
ocr-a
|
||||||
];
|
];
|
||||||
fonts.fontDir.enable = true;
|
fonts.fontDir.enable = true;
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
audacity
|
audacity
|
||||||
krita
|
krita
|
||||||
|
|
|
@ -1,15 +1,19 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
let
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
# window-screenshot = pkgs.writeTextFile "window-screenshot.nu" (builtins.readFile ../../other/scripts/desktop/window-screenshot.nu);
|
# window-screenshot = pkgs.writeTextFile "window-screenshot.nu" (builtins.readFile ../../other/scripts/desktop/window-screenshot.nu);
|
||||||
window-screenshot = pkgs.writeShellScriptBin "window-screenshot.sh" (builtins.readFile ../../other/scripts/desktop/window-screenshot.sh);
|
window-screenshot = pkgs.writeShellScriptBin "window-screenshot.sh" (builtins.readFile ../../other/scripts/desktop/window-screenshot.sh);
|
||||||
# desktop-ctl = pkgs.writeShellScriptBin "desktop-ctl.sh" (builtins.readFile ../scripts/desktop/desktop-ctl.sh);
|
# desktop-ctl = pkgs.writeShellScriptBin "desktop-ctl.sh" (builtins.readFile ../scripts/desktop/desktop-ctl.sh);
|
||||||
desktop-ctl = import ../../other/scripts/desktop/desktopctl.nix { inherit pkgs; };
|
desktop-ctl = import ../../other/scripts/desktop/desktopctl.nix {inherit pkgs;};
|
||||||
# TODO: fix ocr screenshot script
|
# TODO: fix ocr screenshot script
|
||||||
ocr-screenshot = pkgs.writeShellScriptBin "ocr-screenshot.sh" (builtins.readFile ../../other/scripts/desktop/ocr-screenshot.sh);
|
ocr-screenshot = pkgs.writeShellScriptBin "ocr-screenshot.sh" (builtins.readFile ../../other/scripts/desktop/ocr-screenshot.sh);
|
||||||
# rofi calculator copied from https://github.com/barbuk/menu-qalc
|
# rofi calculator copied from https://github.com/barbuk/menu-qalc
|
||||||
menu-qalc = pkgs.writeShellScriptBin "menu-qalc" (builtins.readFile ../../other/scripts/desktop/menu-qalc.sh);
|
menu-qalc = pkgs.writeShellScriptBin "menu-qalc" (builtins.readFile ../../other/scripts/desktop/menu-qalc.sh);
|
||||||
in with lib; {
|
in
|
||||||
|
with lib; {
|
||||||
imports = [
|
imports = [
|
||||||
./audio.nix
|
./audio.nix
|
||||||
./gaming.nix
|
./gaming.nix
|
||||||
|
@ -71,8 +75,6 @@ in with lib; {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.xss-lock = {
|
programs.xss-lock = {
|
||||||
|
@ -89,7 +91,7 @@ in with lib; {
|
||||||
notifications.test = true;
|
notifications.test = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
programs.bat = {
|
programs.bat = {
|
||||||
# TODO: more config
|
# TODO: more config
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -99,35 +101,79 @@ in with lib; {
|
||||||
theme = ../../other/rofi-themes/applauncher.rasi;
|
theme = ../../other/rofi-themes/applauncher.rasi;
|
||||||
};
|
};
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
just bacon
|
just
|
||||||
|
bacon
|
||||||
|
|
||||||
magic-wormhole-rs
|
magic-wormhole-rs
|
||||||
|
|
||||||
yt-dlp
|
yt-dlp
|
||||||
|
|
||||||
i3lock rofimoji feh xorg.xinput arandr flameshot
|
i3lock
|
||||||
tesseract5 imagemagick xclip xmacro xorg.xev
|
rofimoji
|
||||||
|
feh
|
||||||
|
xorg.xinput
|
||||||
|
arandr
|
||||||
|
flameshot
|
||||||
|
tesseract5
|
||||||
|
imagemagick
|
||||||
|
xclip
|
||||||
|
xmacro
|
||||||
|
xorg.xev
|
||||||
|
|
||||||
syncplay
|
syncplay
|
||||||
|
|
||||||
# filemanager
|
# filemanager
|
||||||
xfce.thunar xfce.tumbler xfce.thunar-archive-plugin gnome.file-roller
|
xfce.thunar
|
||||||
|
xfce.tumbler
|
||||||
|
xfce.thunar-archive-plugin
|
||||||
|
gnome.file-roller
|
||||||
# media/file viewers
|
# media/file viewers
|
||||||
vlc mpv evince nomacs
|
vlc
|
||||||
|
mpv
|
||||||
|
evince
|
||||||
|
nomacs
|
||||||
|
|
||||||
# from environment.systemPackages cleanup
|
# from environment.systemPackages cleanup
|
||||||
font-manager xdotool xorg.xwininfo gparted uhk-agent
|
font-manager
|
||||||
cool-retro-term xdg-desktop-portal-gtk obsidian zettlr virt-manager
|
xdotool
|
||||||
ddccontrol-db firebird-emu gitg gpick qdirstat ffmpeg_5
|
xorg.xwininfo
|
||||||
|
gparted
|
||||||
|
uhk-agent
|
||||||
|
cool-retro-term
|
||||||
|
xdg-desktop-portal-gtk
|
||||||
|
obsidian
|
||||||
|
zettlr
|
||||||
|
virt-manager
|
||||||
|
ddccontrol-db
|
||||||
|
firebird-emu
|
||||||
|
gitg
|
||||||
|
gpick
|
||||||
|
qdirstat
|
||||||
|
ffmpeg_5
|
||||||
|
|
||||||
# external
|
# external
|
||||||
libnotify i3lock rofi rofimoji feh xorg.xinput arandr
|
libnotify
|
||||||
flameshot tesseract5 imagemagick xclip kitty xmacro
|
i3lock
|
||||||
brightnessctl drawing libqalculate
|
rofi
|
||||||
|
rofimoji
|
||||||
|
feh
|
||||||
|
xorg.xinput
|
||||||
|
arandr
|
||||||
|
flameshot
|
||||||
|
tesseract5
|
||||||
|
imagemagick
|
||||||
|
xclip
|
||||||
|
kitty
|
||||||
|
xmacro
|
||||||
|
brightnessctl
|
||||||
|
drawing
|
||||||
|
libqalculate
|
||||||
|
|
||||||
# custom scripts
|
# custom scripts
|
||||||
window-screenshot desktop-ctl
|
window-screenshot
|
||||||
ocr-screenshot menu-qalc
|
desktop-ctl
|
||||||
|
ocr-screenshot
|
||||||
|
menu-qalc
|
||||||
|
|
||||||
# meow
|
# meow
|
||||||
oneko
|
oneko
|
||||||
|
@ -136,4 +182,4 @@ in with lib; {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ ... }: {
|
{...}: {
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
services.dunst = {
|
services.dunst = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
{ pkgs, config, lib, ... }:
|
{
|
||||||
let
|
pkgs,
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
cfg = config.jade.desktop.evremap;
|
cfg = config.jade.desktop.evremap;
|
||||||
evremap = pkgs.rustPlatform.buildRustPackage {
|
evremap = pkgs.rustPlatform.buildRustPackage {
|
||||||
pname = "evremap";
|
pname = "evremap";
|
||||||
|
@ -15,20 +19,21 @@ let
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
cp ${../../other/evremap.Cargo.lock} Cargo.lock
|
cp ${../../other/evremap.Cargo.lock} Cargo.lock
|
||||||
'';
|
'';
|
||||||
nativeBuildInputs = [ pkgs.pkg-config ];
|
nativeBuildInputs = [pkgs.pkg-config];
|
||||||
buildInputs = [ pkgs.libevdev ];
|
buildInputs = [pkgs.libevdev];
|
||||||
};
|
};
|
||||||
in with lib; {
|
in
|
||||||
|
with lib; {
|
||||||
options.jade.desktop.evremap = {
|
options.jade.desktop.evremap = {
|
||||||
enable = mkEnableOption "Enable evremap";
|
enable = mkEnableOption "Enable evremap";
|
||||||
};
|
};
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
systemd.services.evremap = {
|
systemd.services.evremap = {
|
||||||
script = "${evremap}/bin/evremap remap ${../../other/remaps-${config.networking.hostName}.toml}";
|
script = "${evremap}/bin/evremap remap ${../../other/remaps-${config.networking.hostName}.toml}";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = ["multi-user.target"];
|
||||||
unitConfig = {
|
unitConfig = {
|
||||||
Restart = "on-failure";
|
Restart = "on-failure";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ ... }: {
|
{...}: {
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
home.file = {
|
home.file = {
|
||||||
".tridactylrc" = {
|
".tridactylrc" = {
|
||||||
text = ''
|
text = ''
|
||||||
|
@ -46,49 +46,49 @@
|
||||||
bookmarks = [
|
bookmarks = [
|
||||||
{
|
{
|
||||||
name = "Katzencafé";
|
name = "Katzencafé";
|
||||||
tags = [ "fedi" "social" ];
|
tags = ["fedi" "social"];
|
||||||
keyword = "ck";
|
keyword = "ck";
|
||||||
url = "https://ck.katzen.cafe";
|
url = "https://ck.katzen.cafe";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "Mastodon.de";
|
name = "Mastodon.de";
|
||||||
tags = [ "fedi" "social" ];
|
tags = ["fedi" "social"];
|
||||||
keyword = "mde";
|
keyword = "mde";
|
||||||
url = "https://mastodon.de";
|
url = "https://mastodon.de";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "Nekoverse";
|
name = "Nekoverse";
|
||||||
tags = [ "fedi" "social" ];
|
tags = ["fedi" "social"];
|
||||||
keyword = "neko";
|
keyword = "neko";
|
||||||
url = "https://social.nekover.se";
|
url = "https://social.nekover.se";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "Katzenschmiede";
|
name = "Katzenschmiede";
|
||||||
tags = [ "fedi" "git" ];
|
tags = ["fedi" "git"];
|
||||||
keyword = "forge";
|
keyword = "forge";
|
||||||
url = "https://forge.katzen.cafe";
|
url = "https://forge.katzen.cafe";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "Katzenwolke";
|
name = "Katzenwolke";
|
||||||
tags = [ "cloud" ];
|
tags = ["cloud"];
|
||||||
keyword = "wolke";
|
keyword = "wolke";
|
||||||
url = "https://wolke.katzen.cafe";
|
url = "https://wolke.katzen.cafe";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "Penpot";
|
name = "Penpot";
|
||||||
tags = [ "design" ];
|
tags = ["design"];
|
||||||
keyword = "pp";
|
keyword = "pp";
|
||||||
url = "https://design.katzen.cafe";
|
url = "https://design.katzen.cafe";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "Pad";
|
name = "Pad";
|
||||||
tags = [ "pad" ];
|
tags = ["pad"];
|
||||||
keyword = "pad";
|
keyword = "pad";
|
||||||
url = "https://pad.katzen.cafe";
|
url = "https://pad.katzen.cafe";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "Auth";
|
name = "Auth";
|
||||||
tags = [ "keycloak" ];
|
tags = ["keycloak"];
|
||||||
keyword = "auth";
|
keyword = "auth";
|
||||||
url = "https://auth.katzen.cafe/realms/katzen.cafe/account";
|
url = "https://auth.katzen.cafe/realms/katzen.cafe/account";
|
||||||
}
|
}
|
||||||
|
@ -133,71 +133,103 @@
|
||||||
default = "DuckDuckGo";
|
default = "DuckDuckGo";
|
||||||
engines = {
|
engines = {
|
||||||
"Nix Packages" = {
|
"Nix Packages" = {
|
||||||
urls = [{
|
urls = [
|
||||||
|
{
|
||||||
template = "https://search.nixos.org/packages";
|
template = "https://search.nixos.org/packages";
|
||||||
params = [
|
params = [
|
||||||
{ name = "query"; value = "{searchTerms}"; }
|
{
|
||||||
|
name = "query";
|
||||||
|
value = "{searchTerms}";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
];
|
];
|
||||||
}];
|
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
definedAliases = [ "pkgs" ];
|
definedAliases = ["pkgs"];
|
||||||
};
|
};
|
||||||
"Nix Options" = {
|
"Nix Options" = {
|
||||||
urls = [{
|
urls = [
|
||||||
|
{
|
||||||
template = "https://search.nixos.org/options";
|
template = "https://search.nixos.org/options";
|
||||||
params = [
|
params = [
|
||||||
{ name = "query"; value = "{searchTerms}"; }
|
{
|
||||||
|
name = "query";
|
||||||
|
value = "{searchTerms}";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
];
|
];
|
||||||
}];
|
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
definedAliases = [ "opts" ];
|
definedAliases = ["opts"];
|
||||||
};
|
};
|
||||||
"Home manager Options" = {
|
"Home manager Options" = {
|
||||||
urls = [{
|
urls = [
|
||||||
|
{
|
||||||
template = "https://mipmip.github.io/home-manager-option-search/";
|
template = "https://mipmip.github.io/home-manager-option-search/";
|
||||||
params = [
|
params = [
|
||||||
{ name = "query"; value = "{searchTerms}"; }
|
{
|
||||||
|
name = "query";
|
||||||
|
value = "{searchTerms}";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
];
|
];
|
||||||
}];
|
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
definedAliases = [ "hm" ];
|
definedAliases = ["hm"];
|
||||||
};
|
};
|
||||||
"NixOS Wiki" = {
|
"NixOS Wiki" = {
|
||||||
urls = [{
|
urls = [
|
||||||
|
{
|
||||||
template = "https://nixos.wiki/index.php?title=Special:Search&search={searchTerms}&namespace=0";
|
template = "https://nixos.wiki/index.php?title=Special:Search&search={searchTerms}&namespace=0";
|
||||||
}];
|
}
|
||||||
|
];
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
definedAliases = [ "nxwk" ];
|
definedAliases = ["nxwk"];
|
||||||
};
|
};
|
||||||
"lib.rs" = {
|
"lib.rs" = {
|
||||||
urls = [{
|
urls = [
|
||||||
|
{
|
||||||
template = "https://lib.rs/search";
|
template = "https://lib.rs/search";
|
||||||
params = [
|
params = [
|
||||||
{ name = "q"; value = "{searchTerms}"; }
|
{
|
||||||
|
name = "q";
|
||||||
|
value = "{searchTerms}";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
];
|
];
|
||||||
}];
|
|
||||||
icon = "https://lib.rs/favicon.png";
|
icon = "https://lib.rs/favicon.png";
|
||||||
definedAliases = [ "libs" ];
|
definedAliases = ["libs"];
|
||||||
};
|
};
|
||||||
"rust docs" = {
|
"rust docs" = {
|
||||||
urls = [{
|
urls = [
|
||||||
|
{
|
||||||
template = "https://docs.rs/releases/search";
|
template = "https://docs.rs/releases/search";
|
||||||
params = [
|
params = [
|
||||||
{ name = "query"; value = "{searchTerms}"; }
|
{
|
||||||
|
name = "query";
|
||||||
|
value = "{searchTerms}";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
];
|
];
|
||||||
}];
|
|
||||||
icon = "https://docs.rs/-/static/favicon.ico";
|
icon = "https://docs.rs/-/static/favicon.ico";
|
||||||
definedAliases = [ "docs" ];
|
definedAliases = ["docs"];
|
||||||
};
|
};
|
||||||
"rust std docs" = {
|
"rust std docs" = {
|
||||||
urls = [{
|
urls = [
|
||||||
|
{
|
||||||
template = "https://docs.rust-lang.org/std/index.html";
|
template = "https://docs.rust-lang.org/std/index.html";
|
||||||
params = [
|
params = [
|
||||||
{ name = "search"; value = "{searchTerms}"; }
|
{
|
||||||
|
name = "search";
|
||||||
|
value = "{searchTerms}";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
];
|
];
|
||||||
}];
|
|
||||||
icon = "https://doc.rust-lang.org/favicon.ico";
|
icon = "https://doc.rust-lang.org/favicon.ico";
|
||||||
definedAliases = [ "std" ];
|
definedAliases = ["std"];
|
||||||
};
|
};
|
||||||
"Bing".metaData.hidden = true;
|
"Bing".metaData.hidden = true;
|
||||||
"Google".metaData.hidden = true;
|
"Google".metaData.hidden = true;
|
||||||
|
|
|
@ -1,18 +1,22 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
let
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
cfg = config.jade.desktop.gaming;
|
cfg = config.jade.desktop.gaming;
|
||||||
in with lib; {
|
in
|
||||||
|
with lib; {
|
||||||
options.jade.desktop.gaming = {
|
options.jade.desktop.gaming = {
|
||||||
enable = mkEnableOption "Enable gaming stuff";
|
enable = mkEnableOption "Enable gaming stuff";
|
||||||
};
|
};
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
programs.steam.enable = true;
|
programs.steam.enable = true;
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
lutris
|
lutris
|
||||||
prismlauncher
|
prismlauncher
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
let cfg = config.jade.desktop.ios-compat;
|
lib,
|
||||||
in with lib; {
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
cfg = config.jade.desktop.ios-compat;
|
||||||
|
in
|
||||||
|
with lib; {
|
||||||
options.jade.desktop.ios-compat = {
|
options.jade.desktop.ios-compat = {
|
||||||
enable = mkEnableOption "Enable the ios compatability programs";
|
enable = mkEnableOption "Enable the ios compatability programs";
|
||||||
};
|
};
|
||||||
|
@ -10,7 +15,7 @@ in with lib; {
|
||||||
usbmuxd.enable = true;
|
usbmuxd.enable = true;
|
||||||
gvfs.enable = true;
|
gvfs.enable = true;
|
||||||
};
|
};
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
libimobiledevice
|
libimobiledevice
|
||||||
libimobiledevice-glue
|
libimobiledevice-glue
|
||||||
|
@ -21,4 +26,4 @@ in with lib; {
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,17 +1,22 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
let cfg = config.jade.desktop.kdeconnect;
|
lib,
|
||||||
in with lib; {
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
cfg = config.jade.desktop.kdeconnect;
|
||||||
|
in
|
||||||
|
with lib; {
|
||||||
options.jade.desktop.kdeconnect = {
|
options.jade.desktop.kdeconnect = {
|
||||||
enable = mkEnableOption "Enable KDE connect";
|
enable = mkEnableOption "Enable KDE connect";
|
||||||
};
|
};
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
programs.kdeconnect.enable = true;
|
programs.kdeconnect.enable = true;
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
services.kdeconnect = {
|
services.kdeconnect = {
|
||||||
enable = true;
|
enable = true;
|
||||||
indicator = true;
|
indicator = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
let
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
cfg = config.jade.desktop.mail;
|
cfg = config.jade.desktop.mail;
|
||||||
imap = {
|
imap = {
|
||||||
host = "imap.migadu.com";
|
host = "imap.migadu.com";
|
||||||
|
@ -11,12 +14,13 @@ let
|
||||||
port = 465;
|
port = 465;
|
||||||
tls.enable = true;
|
tls.enable = true;
|
||||||
};
|
};
|
||||||
in with lib; {
|
in
|
||||||
|
with lib; {
|
||||||
options.jade.desktop.mail = {
|
options.jade.desktop.mail = {
|
||||||
enable = mkEnableOption "Enable thunderbird mail stuff";
|
enable = mkEnableOption "Enable thunderbird mail stuff";
|
||||||
};
|
};
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
accounts.email.accounts = {
|
accounts.email.accounts = {
|
||||||
"Jade" = rec {
|
"Jade" = rec {
|
||||||
inherit imap smtp;
|
inherit imap smtp;
|
||||||
|
@ -70,4 +74,4 @@ in with lib; {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,11 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
let
|
lib,
|
||||||
addNuShebang = path: builtins.concatStringsSep "\n\n" [
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
addNuShebang = path:
|
||||||
|
builtins.concatStringsSep "\n\n" [
|
||||||
"#!${pkgs.nushellFull}/bin/nu"
|
"#!${pkgs.nushellFull}/bin/nu"
|
||||||
(builtins.readFile path)
|
(builtins.readFile path)
|
||||||
];
|
];
|
||||||
|
@ -40,7 +44,7 @@ in {
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
environment.etc = (with builtins; (
|
environment.etc = with builtins; (
|
||||||
listToAttrs (
|
listToAttrs (
|
||||||
map (v: {
|
map (v: {
|
||||||
name = "networkhooks/${v}";
|
name = "networkhooks/${v}";
|
||||||
|
@ -51,10 +55,10 @@ in {
|
||||||
})
|
})
|
||||||
(attrNames (readDir ../../other/scripts/networkhooks))
|
(attrNames (readDir ../../other/scripts/networkhooks))
|
||||||
)
|
)
|
||||||
));
|
);
|
||||||
systemd.services."NetworkManager-wait-online".enable = false;
|
systemd.services."NetworkManager-wait-online".enable = false;
|
||||||
services.mullvad-vpn.enable = true;
|
services.mullvad-vpn.enable = true;
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
networkmanagerapplet
|
networkmanagerapplet
|
||||||
mullvad-vpn
|
mullvad-vpn
|
||||||
|
|
|
@ -1,8 +1,11 @@
|
||||||
{ config, lib, pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
config = {
|
config = {
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
#xsession.windowManager.i3.config.startup = [
|
#xsession.windowManager.i3.config.startup = [
|
||||||
#{
|
#{
|
||||||
#command = "pkill polybar; polybar";
|
#command = "pkill polybar; polybar";
|
||||||
|
|
|
@ -1,12 +1,17 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
let cfg = config.jade.desktop.social;
|
lib,
|
||||||
in with lib; {
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
cfg = config.jade.desktop.social;
|
||||||
|
in
|
||||||
|
with lib; {
|
||||||
options.jade.desktop.social = {
|
options.jade.desktop.social = {
|
||||||
enable = mkEnableOption "Enable social apps";
|
enable = mkEnableOption "Enable social apps";
|
||||||
};
|
};
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
evolutionWithPlugins
|
evolutionWithPlugins
|
||||||
schildichat-desktop
|
schildichat-desktop
|
||||||
|
@ -14,4 +19,4 @@ in with lib; {
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
{ config, lib, pkgs, ... }:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
./spacenav.nix
|
./spacenav.nix
|
||||||
./wacom.nix
|
./wacom.nix
|
||||||
|
|
|
@ -1,11 +1,10 @@
|
||||||
{ pkgs, ... }:
|
{pkgs, ...}: {
|
||||||
{
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
spacenavd
|
spacenavd
|
||||||
libspnav
|
libspnav
|
||||||
];
|
];
|
||||||
systemd.services.spacenavd = {
|
systemd.services.spacenavd = {
|
||||||
wantedBy = [ "graphical.target" ];
|
wantedBy = ["graphical.target"];
|
||||||
script = "${pkgs.spacenavd}/bin/spacenavd -d";
|
script = "${pkgs.spacenavd}/bin/spacenavd -d";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ ... }: {
|
{...}: {
|
||||||
services.xserver.wacom.enable = true;
|
services.xserver.wacom.enable = true;
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
home.packages = [
|
home.packages = [
|
||||||
# TODO: figure out if the previous enabled option depends on these anyway
|
# TODO: figure out if the previous enabled option depends on these anyway
|
||||||
pkgs.libwacom
|
pkgs.libwacom
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
let cfg = config.jade.desktop.syncthing;
|
lib,
|
||||||
in with lib; {
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
cfg = config.jade.desktop.syncthing;
|
||||||
|
in
|
||||||
|
with lib; {
|
||||||
options.jade.desktop.syncthing = {
|
options.jade.desktop.syncthing = {
|
||||||
enable = mkEnableOption "Enable syncing via syncthing";
|
enable = mkEnableOption "Enable syncing via syncthing";
|
||||||
};
|
};
|
||||||
|
@ -13,4 +18,4 @@ in with lib; {
|
||||||
configDir = "/home/${user}/Documents/.config/syncthing";
|
configDir = "/home/${user}/Documents/.config/syncthing";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,14 @@
|
||||||
{ config, lib, pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
config = {
|
config = {
|
||||||
fonts.packages = with pkgs; [
|
fonts.packages = with pkgs; [
|
||||||
atkinson-hyperlegible
|
atkinson-hyperlegible
|
||||||
];
|
];
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
gtk-engine-murrine
|
gtk-engine-murrine
|
||||||
gruvbox-dark-gtk
|
gruvbox-dark-gtk
|
||||||
|
|
|
@ -1,6 +1,11 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
with lib; {
|
with lib; {
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
xsession.windowManager.xmonad = {
|
xsession.windowManager.xmonad = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableContribAndExtras = true;
|
enableContribAndExtras = true;
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
{ config, lib, pkgs, ... }:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
config = {
|
config = {
|
||||||
networking = {
|
networking = {
|
||||||
firewall = {
|
firewall = {
|
||||||
|
@ -9,7 +13,8 @@
|
||||||
22
|
22
|
||||||
|
|
||||||
# http, https
|
# http, https
|
||||||
80 443
|
80
|
||||||
|
443
|
||||||
|
|
||||||
# syncthing web ui
|
# syncthing web ui
|
||||||
8384
|
8384
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
let cfg = config.jade.flatpak;
|
lib,
|
||||||
in with lib; {
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
cfg = config.jade.flatpak;
|
||||||
|
in
|
||||||
|
with lib; {
|
||||||
options.jade.flatpak = {
|
options.jade.flatpak = {
|
||||||
enable = mkEnableOption "Enable flatpak";
|
enable = mkEnableOption "Enable flatpak";
|
||||||
};
|
};
|
||||||
|
@ -14,4 +19,4 @@ in with lib; {
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ ... }: {
|
{...}: {
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
programs.git = {
|
programs.git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
userName = "Schrottkatze";
|
userName = "Schrottkatze";
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ ... }: {
|
{...}: {
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
programs.carapace = {
|
programs.carapace = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ ... }: {
|
{...}: {
|
||||||
imports = [
|
imports = [
|
||||||
./helix.nix
|
./helix.nix
|
||||||
./nu.nix
|
./nu.nix
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ ... }: {
|
{...}: {
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
programs.direnv = {
|
programs.direnv = {
|
||||||
enable = true;
|
enable = true;
|
||||||
nix-direnv.enable = true;
|
nix-direnv.enable = true;
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
{ config, ... }:
|
{config, ...}: {
|
||||||
{
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
|
||||||
home = {
|
home = {
|
||||||
sessionVariables.EDITOR = "hx";
|
sessionVariables.EDITOR = "hx";
|
||||||
packages = [
|
packages = [
|
||||||
|
@ -43,7 +42,7 @@
|
||||||
languages = {
|
languages = {
|
||||||
language-server."nu-builtin-lsp" = {
|
language-server."nu-builtin-lsp" = {
|
||||||
command = "${config.users.defaultUserShell}/bin/nu";
|
command = "${config.users.defaultUserShell}/bin/nu";
|
||||||
args = [ "--lsp" ];
|
args = ["--lsp"];
|
||||||
};
|
};
|
||||||
language-server."rust-analyzer" = {
|
language-server."rust-analyzer" = {
|
||||||
config = {
|
config = {
|
||||||
|
@ -61,7 +60,7 @@
|
||||||
language = [
|
language = [
|
||||||
{
|
{
|
||||||
name = "nu";
|
name = "nu";
|
||||||
language-servers = [ "nu-builtin-lsp" ];
|
language-servers = ["nu-builtin-lsp"];
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ config, ... }: {
|
{config, ...}: {
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
programs.nushell = {
|
programs.nushell = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = config.users.defaultUserShell;
|
package = config.users.defaultUserShell;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ ... }: {
|
{...}: {
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
programs.starship = {
|
programs.starship = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
{ config, lib, ... }:
|
|
||||||
{
|
{
|
||||||
home-manager.users.jade = { pkgs, ... }: {
|
config,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
home.file = {
|
home.file = {
|
||||||
zellij-forgot = {
|
zellij-forgot = {
|
||||||
target = ".config/zellij/plugins/zellij-forgot.wasm";
|
target = ".config/zellij/plugins/zellij-forgot.wasm";
|
||||||
|
|
|
@ -1,10 +1,16 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
let cfg = config.jade.NAME;
|
lib,
|
||||||
in with lib; {
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
cfg = config.jade.NAME;
|
||||||
|
in
|
||||||
|
with lib; {
|
||||||
options.jade.NAME = {
|
options.jade.NAME = {
|
||||||
enable = mkEnableOption "Enable the module";
|
enable = mkEnableOption "Enable the module";
|
||||||
};
|
};
|
||||||
config = mkIf cfg.enable {
|
config =
|
||||||
|
mkIf cfg.enable {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
let cfg = config.jade.terminal;
|
lib,
|
||||||
in with lib; {
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
cfg = config.jade.terminal;
|
||||||
|
in
|
||||||
|
with lib; {
|
||||||
options.jade.terminal = {
|
options.jade.terminal = {
|
||||||
enable = mkEnableOption "Enable Kitty";
|
enable = mkEnableOption "Enable Kitty";
|
||||||
};
|
};
|
||||||
|
@ -9,7 +14,7 @@ in with lib; {
|
||||||
environment.sessionVariables = rec {
|
environment.sessionVariables = rec {
|
||||||
TERMINAL = "kitty";
|
TERMINAL = "kitty";
|
||||||
};
|
};
|
||||||
home-manager.users.jade = { pkgs,... } : {
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
programs.kitty = {
|
programs.kitty = {
|
||||||
enable = true;
|
enable = true;
|
||||||
font = {
|
font = {
|
||||||
|
@ -41,4 +46,4 @@ in with lib; {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,14 @@
|
||||||
{ pkgs, lib }: rec {
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
}: rec {
|
||||||
# taken from https://github.com/NixOS/nixpkgs/blob/3650808d85dccbfa3be3d785dfd3ce33a757bd2c/pkgs/build-support/trivial-builders/default.nix#L335
|
# taken from https://github.com/NixOS/nixpkgs/blob/3650808d85dccbfa3be3d785dfd3ce33a757bd2c/pkgs/build-support/trivial-builders/default.nix#L335
|
||||||
writeNuShellApplication =
|
writeNuShellApplication = {
|
||||||
{ name
|
name,
|
||||||
, text
|
text,
|
||||||
, runtimeInputs ? [ ]
|
runtimeInputs ? [],
|
||||||
, meta ? { }
|
meta ? {},
|
||||||
, checkPhase ? null
|
checkPhase ? null,
|
||||||
}:
|
}:
|
||||||
writeTextFile {
|
writeTextFile {
|
||||||
inherit name meta;
|
inherit name meta;
|
||||||
|
@ -13,12 +16,15 @@
|
||||||
destination = "/bin/${name}";
|
destination = "/bin/${name}";
|
||||||
allowSubstitutes = true;
|
allowSubstitutes = true;
|
||||||
preferLocalBuild = false;
|
preferLocalBuild = false;
|
||||||
text = ''
|
text =
|
||||||
|
''
|
||||||
#!${pkgs.nushell}
|
#!${pkgs.nushell}
|
||||||
'' + lib.optionalString (runtimeInputs != [ ]) ''
|
''
|
||||||
|
+ lib.optionalString (runtimeInputs != []) ''
|
||||||
|
|
||||||
$env.PATH = ($env.PATH | split row (char esep) | prepend '${lib.makeBinPath runtimeInputs}');
|
$env.PATH = ($env.PATH | split row (char esep) | prepend '${lib.makeBinPath runtimeInputs}');
|
||||||
'' + ''
|
''
|
||||||
|
+ ''
|
||||||
|
|
||||||
${text}
|
${text}
|
||||||
'';
|
'';
|
||||||
|
@ -26,7 +32,8 @@
|
||||||
checkPhase =
|
checkPhase =
|
||||||
# GHC (=> shellcheck) isn't supported on some platforms (such as risc-v)
|
# GHC (=> shellcheck) isn't supported on some platforms (such as risc-v)
|
||||||
# but we still want to use writeShellApplication on those platforms
|
# but we still want to use writeShellApplication on those platforms
|
||||||
if checkPhase == null then ''
|
if checkPhase == null
|
||||||
|
then ''
|
||||||
runHook preCheck
|
runHook preCheck
|
||||||
|
|
||||||
nu -c "nu-check -d $target"
|
nu -c "nu-check -d $target"
|
||||||
|
@ -35,12 +42,12 @@
|
||||||
''
|
''
|
||||||
else checkPhase;
|
else checkPhase;
|
||||||
};
|
};
|
||||||
packageNushellApplication =
|
packageNushellApplication = {
|
||||||
{ name
|
name,
|
||||||
, path
|
path,
|
||||||
, runtimeInputs ? [ ]
|
runtimeInputs ? [],
|
||||||
, meta ? { }
|
meta ? {},
|
||||||
, checkPhase ? null
|
checkPhase ? null,
|
||||||
}:
|
}:
|
||||||
writeNuShellApplication {
|
writeNuShellApplication {
|
||||||
inherit name runtimeInputs meta checkPhase;
|
inherit name runtimeInputs meta checkPhase;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ pkgs, ... }:
|
{pkgs, ...}:
|
||||||
pkgs.writeShellScriptBin "desktopctl" ''
|
pkgs.writeShellScriptBin "desktopctl" ''
|
||||||
case $@ in
|
case $@ in
|
||||||
"Lock Screen")
|
"Lock Screen")
|
||||||
loginctl lock-session
|
loginctl lock-session
|
||||||
exit 0
|
exit 0
|
||||||
|
@ -17,19 +17,19 @@ case $@ in
|
||||||
systemctl reboot
|
systemctl reboot
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
# resizes grid
|
# resizes grid
|
||||||
echo -en "\0theme\x1flistview,inputbar,message{columns:4;lines:1;}\n"
|
echo -en "\0theme\x1flistview,inputbar,message{columns:4;lines:1;}\n"
|
||||||
# resizes window, moves it to top of screen, adjusts rounded corners
|
# resizes window, moves it to top of screen, adjusts rounded corners
|
||||||
echo -en "\0theme\x1fwindow{width:800px;location:north;y-offset:24px;border-radius:0 0 12px 12px;}\n"
|
echo -en "\0theme\x1fwindow{width:800px;location:north;y-offset:24px;border-radius:0 0 12px 12px;}\n"
|
||||||
# swaps grid and input bar
|
# swaps grid and input bar
|
||||||
echo -en "\0theme\x1fmainbox{children:[listview,inputbar];}\n"
|
echo -en "\0theme\x1fmainbox{children:[listview,inputbar];}\n"
|
||||||
# fixes brown line below input bar
|
# fixes brown line below input bar
|
||||||
echo -en "\0theme\x1finputbar{margin:0;}\n"
|
echo -en "\0theme\x1finputbar{margin:0;}\n"
|
||||||
|
|
||||||
echo -en "Lock Screen\0icon\x1f${../../../other/assets/desktopctl/lock-screen.svg}\n"
|
echo -en "Lock Screen\0icon\x1f${../../../other/assets/desktopctl/lock-screen.svg}\n"
|
||||||
echo -en "Log Out\0icon\x1f${../../../other/assets/desktopctl/logout.svg}\n"
|
echo -en "Log Out\0icon\x1f${../../../other/assets/desktopctl/logout.svg}\n"
|
||||||
echo -en "Shut Down\0icon\x1f${../../../other/assets/desktopctl/shutdown.svg}\n"
|
echo -en "Shut Down\0icon\x1f${../../../other/assets/desktopctl/shutdown.svg}\n"
|
||||||
echo -en "Reboot\0icon\x1f${../../../other/assets/desktopctl/reboot.svg}\n"
|
echo -en "Reboot\0icon\x1f${../../../other/assets/desktopctl/reboot.svg}\n"
|
||||||
''
|
''
|
||||||
|
|
Loading…
Reference in a new issue