nixfmt everything
This commit is contained in:
parent
dbf843d70f
commit
d92420451d
30 changed files with 383 additions and 330 deletions
92
flake.nix
92
flake.nix
|
|
@ -5,39 +5,51 @@
|
||||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-22.11";
|
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-22.11";
|
||||||
|
|
||||||
home-manager = { url = "github:nix-community/home-manager/master"; inputs.nixpkgs.follows = "nixpkgs"; };
|
home-manager = {
|
||||||
home-manager-stable = { url = "github:nix-community/home-manager/release-22.11"; inputs.nixpkgs.follows = "nixpkgs-stable"; };
|
url = "github:nix-community/home-manager/master";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
home-manager-stable = {
|
||||||
|
url = "github:nix-community/home-manager/release-22.11";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs-stable";
|
||||||
|
};
|
||||||
|
|
||||||
baduhai-nur.url = "github:baduhai/nur";
|
baduhai-nur.url = "github:baduhai/nur";
|
||||||
|
|
||||||
kmonad = { url = "github:kmonad/kmonad?dir=nix"; inputs.nixpkgs.follows = "nixpkgs"; };
|
kmonad = {
|
||||||
|
url = "github:kmonad/kmonad?dir=nix";
|
||||||
deploy-rs = { url = "github:serokell/deploy-rs"; inputs.nixpkgs.follows = "nixpkgs"; };
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
agenix = { url = "github:ryantm/agenix"; inputs.nixpkgs.follows = "nixpkgs"; };
|
|
||||||
|
|
||||||
nixos-generators = { url = "github:nix-community/nixos-generators"; inputs.nixpkgs.follows = "nixpkgs-stable"; };
|
|
||||||
|
|
||||||
homepage = { url = "github:baduhai/homepage"; flake = false; };
|
|
||||||
|
|
||||||
dotfiles = { url = "github:baduhai/dotfiles"; flake = false; };
|
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs @ {
|
deploy-rs = {
|
||||||
self,
|
url = "github:serokell/deploy-rs";
|
||||||
nixpkgs,
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
home-manager,
|
};
|
||||||
baduhai-nur,
|
|
||||||
kmonad,
|
agenix = {
|
||||||
nixpkgs-stable,
|
url = "github:ryantm/agenix";
|
||||||
home-manager-stable,
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
deploy-rs,
|
};
|
||||||
agenix,
|
|
||||||
nixos-generators,
|
nixos-generators = {
|
||||||
homepage,
|
url = "github:nix-community/nixos-generators";
|
||||||
dotfiles,
|
inputs.nixpkgs.follows = "nixpkgs-stable";
|
||||||
...
|
};
|
||||||
}: {
|
|
||||||
|
homepage = {
|
||||||
|
url = "github:baduhai/homepage";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
dotfiles = {
|
||||||
|
url = "github:baduhai/dotfiles";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = inputs@{ self, nixpkgs, home-manager, baduhai-nur, kmonad
|
||||||
|
, nixpkgs-stable, home-manager-stable, deploy-rs, agenix, nixos-generators
|
||||||
|
, homepage, dotfiles, ... }: {
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
rotterdam = nixpkgs.lib.nixosSystem {
|
rotterdam = nixpkgs.lib.nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
|
|
@ -47,7 +59,10 @@
|
||||||
agenix.nixosModules.default
|
agenix.nixosModules.default
|
||||||
kmonad.nixosModules.default
|
kmonad.nixosModules.default
|
||||||
home-manager.nixosModules.default
|
home-manager.nixosModules.default
|
||||||
{ nixpkgs.overlays = [ baduhai-nur.overlay agenix.overlays.default ]; }
|
{
|
||||||
|
nixpkgs.overlays =
|
||||||
|
[ baduhai-nur.overlay agenix.overlays.default ];
|
||||||
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -59,7 +74,10 @@
|
||||||
agenix.nixosModules.default
|
agenix.nixosModules.default
|
||||||
kmonad.nixosModules.default
|
kmonad.nixosModules.default
|
||||||
home-manager.nixosModules.default
|
home-manager.nixosModules.default
|
||||||
{ nixpkgs.overlays = [ baduhai-nur.overlay agenix.overlays.default ]; }
|
{
|
||||||
|
nixpkgs.overlays =
|
||||||
|
[ baduhai-nur.overlay agenix.overlays.default ];
|
||||||
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -76,10 +94,7 @@
|
||||||
unstable-overlay = final: prev: {
|
unstable-overlay = final: prev: {
|
||||||
unstable = nixpkgs.legacyPackages.x86_64-linux;
|
unstable = nixpkgs.legacyPackages.x86_64-linux;
|
||||||
};
|
};
|
||||||
in {
|
in { nixpkgs.overlays = [ unstable-overlay ]; })
|
||||||
nixpkgs.overlays = [ unstable-overlay ];
|
|
||||||
}
|
|
||||||
)
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
@ -94,7 +109,8 @@
|
||||||
hostname = "alexandria";
|
hostname = "alexandria";
|
||||||
profiles.system = {
|
profiles.system = {
|
||||||
remoteBuild = true;
|
remoteBuild = true;
|
||||||
path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.alexandria;
|
path = deploy-rs.lib.x86_64-linux.activate.nixos
|
||||||
|
self.nixosConfigurations.alexandria;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
@ -105,9 +121,11 @@
|
||||||
packages.x86_64-linux = {
|
packages.x86_64-linux = {
|
||||||
install-iso = nixos-generators.nixosGenerate {
|
install-iso = nixos-generators.nixosGenerate {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
modules = [
|
modules = [{
|
||||||
{users.users.nixos.openssh.authorizedKeys.keys = [ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKcwF1yuWEfYGScNocEbs0AmGxyTIzGc4/IhpU587SJE" ];}
|
users.users.nixos.openssh.authorizedKeys.keys = [
|
||||||
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKcwF1yuWEfYGScNocEbs0AmGxyTIzGc4/IhpU587SJE"
|
||||||
];
|
];
|
||||||
|
}];
|
||||||
format = "install-iso";
|
format = "install-iso";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -18,9 +18,7 @@
|
||||||
tree
|
tree
|
||||||
wget
|
wget
|
||||||
# Package overrides
|
# Package overrides
|
||||||
(nnn.override {
|
(nnn.override { withNerdIcons = true; })
|
||||||
withNerdIcons = true;
|
|
||||||
})
|
|
||||||
];
|
];
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
|
|
|
||||||
|
|
@ -5,13 +5,12 @@
|
||||||
user = {
|
user = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
shell = pkgs.fish;
|
shell = pkgs.fish;
|
||||||
extraGroups = [
|
extraGroups = [ "networkmanager" "docker" "wheel" ];
|
||||||
"networkmanager"
|
openssh.authorizedKeys.keys = [
|
||||||
"docker"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKcwF1yuWEfYGScNocEbs0AmGxyTIzGc4/IhpU587SJE"
|
||||||
"wheel"
|
|
||||||
];
|
];
|
||||||
openssh.authorizedKeys.keys = [ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKcwF1yuWEfYGScNocEbs0AmGxyTIzGc4/IhpU587SJE" ];
|
hashedPassword =
|
||||||
hashedPassword = "$6$Pj7v/CpstyuWQQV0$cNujVDhfMBdwlGVEnnd8t71.kZPixbo0u25cd.874iaqLTH4V5fa1f98V5zGapjQCz5JyZmsR94xi00sUrntT0";
|
"$6$Pj7v/CpstyuWQQV0$cNujVDhfMBdwlGVEnnd8t71.kZPixbo0u25cd.874iaqLTH4V5fa1f98V5zGapjQCz5JyZmsR94xi00sUrntT0";
|
||||||
};
|
};
|
||||||
root = {
|
root = {
|
||||||
shell = pkgs.fish;
|
shell = pkgs.fish;
|
||||||
|
|
|
||||||
|
|
@ -10,9 +10,7 @@
|
||||||
extraModprobeConfig = ''
|
extraModprobeConfig = ''
|
||||||
options bluetooth disable_ertm=1
|
options bluetooth disable_ertm=1
|
||||||
'';
|
'';
|
||||||
kernel.sysctl = {
|
kernel.sysctl = { "net.ipv4.tcp_mtu_probing" = 1; };
|
||||||
"net.ipv4.tcp_mtu_probing" = 1;
|
|
||||||
};
|
|
||||||
kernelParams = [
|
kernelParams = [
|
||||||
"quiet"
|
"quiet"
|
||||||
"splash"
|
"splash"
|
||||||
|
|
|
||||||
|
|
@ -11,5 +11,6 @@
|
||||||
|
|
||||||
sound.enable = true;
|
sound.enable = true;
|
||||||
|
|
||||||
security.rtkit.enable = true; # Needed for pipewire to acquire realtime priority
|
security.rtkit.enable =
|
||||||
|
true; # Needed for pipewire to acquire realtime priority
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -19,10 +19,10 @@
|
||||||
fzf
|
fzf
|
||||||
gimp
|
gimp
|
||||||
gocryptfs
|
gocryptfs
|
||||||
# helvum
|
# helvum
|
||||||
heroic
|
heroic
|
||||||
inkscape
|
inkscape
|
||||||
# itch # Currently using unsafe electron version
|
# itch # Currently using unsafe electron version
|
||||||
jellyfin-media-player
|
jellyfin-media-player
|
||||||
junction
|
junction
|
||||||
kolourpaint
|
kolourpaint
|
||||||
|
|
@ -42,7 +42,7 @@
|
||||||
prismlauncher-qt5
|
prismlauncher-qt5
|
||||||
protontricks
|
protontricks
|
||||||
protonup
|
protonup
|
||||||
# prusa-slicer
|
# prusa-slicer
|
||||||
qbittorrent
|
qbittorrent
|
||||||
quickemu
|
quickemu
|
||||||
qview
|
qview
|
||||||
|
|
@ -62,9 +62,7 @@
|
||||||
wezterm
|
wezterm
|
||||||
yubikey-personalization-gui
|
yubikey-personalization-gui
|
||||||
# Package overrides
|
# Package overrides
|
||||||
(appimage-run.override {
|
(appimage-run.override { extraPkgs = pkgs: [ libthai ]; })
|
||||||
extraPkgs = pkgs: [ libthai ];
|
|
||||||
})
|
|
||||||
# Packages from 3rd party overlays
|
# Packages from 3rd party overlays
|
||||||
agenix
|
agenix
|
||||||
chatterino7
|
chatterino7
|
||||||
|
|
@ -95,11 +93,6 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.plasma5.excludePackages = ( with pkgs.plasma5Packages; [
|
environment.plasma5.excludePackages =
|
||||||
elisa
|
(with pkgs.plasma5Packages; [ elisa gwenview oxygen khelpcenter konsole ]);
|
||||||
gwenview
|
|
||||||
oxygen
|
|
||||||
khelpcenter
|
|
||||||
konsole
|
|
||||||
]);
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,9 +4,8 @@ let
|
||||||
plasma = pkgs.writeScriptBin "plasma" ''
|
plasma = pkgs.writeScriptBin "plasma" ''
|
||||||
${pkgs.plasma-workspace}/bin/startplasma-wayland &> /dev/null
|
${pkgs.plasma-workspace}/bin/startplasma-wayland &> /dev/null
|
||||||
'';
|
'';
|
||||||
in
|
|
||||||
|
|
||||||
{
|
in {
|
||||||
services = {
|
services = {
|
||||||
printing.enable = true;
|
printing.enable = true;
|
||||||
pipewire = {
|
pipewire = {
|
||||||
|
|
@ -23,14 +22,15 @@ in
|
||||||
layout = "us";
|
layout = "us";
|
||||||
xkbVariant = "altgr-intl";
|
xkbVariant = "altgr-intl";
|
||||||
exportConfiguration = true;
|
exportConfiguration = true;
|
||||||
excludePackages = ( with pkgs; [ xterm ]);
|
excludePackages = (with pkgs; [ xterm ]);
|
||||||
displayManager.startx.enable = true;
|
displayManager.startx.enable = true;
|
||||||
desktopManager.plasma5.enable = true;
|
desktopManager.plasma5.enable = true;
|
||||||
};
|
};
|
||||||
greetd = {
|
greetd = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
default_session.command = "${pkgs.greetd.tuigreet}/bin/tuigreet --remember --user-menu --asterisks --time --greeting \"Welcome to NixOS\" --cmd ${plasma}/bin/plasma";
|
default_session.command = ''
|
||||||
|
${pkgs.greetd.tuigreet}/bin/tuigreet --remember --user-menu --asterisks --time --greeting "Welcome to NixOS" --cmd ${plasma}/bin/plasma'';
|
||||||
initial_session = {
|
initial_session = {
|
||||||
command = "${plasma}/bin/plasma";
|
command = "${plasma}/bin/plasma";
|
||||||
user = "user";
|
user = "user";
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,10 @@
|
||||||
|
|
||||||
{
|
{
|
||||||
environment.sessionVariables = rec {
|
environment.sessionVariables = rec {
|
||||||
KDEHOME = "$XDG_CONFIG_HOME/kde4"; # Stops kde from placing a .kde4 folder in the home dir
|
KDEHOME =
|
||||||
NIXOS_OZONE_WL = "1"; # Forces chromium and most electron apps to run in wayland
|
"$XDG_CONFIG_HOME/kde4"; # Stops kde from placing a .kde4 folder in the home dir
|
||||||
|
NIXOS_OZONE_WL =
|
||||||
|
"1"; # Forces chromium and most electron apps to run in wayland
|
||||||
};
|
};
|
||||||
|
|
||||||
users.users.user = {
|
users.users.user = {
|
||||||
|
|
|
||||||
|
|
@ -20,11 +20,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
boot = {
|
boot = {
|
||||||
kernelParams = [
|
kernelParams = [ "nosgx" "i915.fastboot=1" "mem_sleep_default=deep" ];
|
||||||
"nosgx"
|
|
||||||
"i915.fastboot=1"
|
|
||||||
"mem_sleep_default=deep"
|
|
||||||
];
|
|
||||||
kernelModules = [
|
kernelModules = [
|
||||||
"i2c-dev" # Required for arduino dev
|
"i2c-dev" # Required for arduino dev
|
||||||
"i2c-piix4" # Required for arduino dev
|
"i2c-piix4" # Required for arduino dev
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,5 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [ ./hardware-configuration.nix ];
|
||||||
./hardware-configuration.nix
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,24 +4,24 @@
|
||||||
{ config, lib, pkgs, modulesPath, ... }:
|
{ config, lib, pkgs, modulesPath, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
|
||||||
];
|
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "sd_mod" "sdhci_pci" ];
|
boot.initrd.availableKernelModules =
|
||||||
|
[ "xhci_pci" "ahci" "usb_storage" "sd_mod" "sdhci_pci" ];
|
||||||
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/2321ee32-a952-4a4b-bba0-bb25f616a4a5";
|
device = "/dev/disk/by-uuid/2321ee32-a952-4a4b-bba0-bb25f616a4a5";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
boot.initrd.luks.devices."luks-008bb7cb-917c-4dda-93fe-542c2285bafb".device = "/dev/disk/by-uuid/008bb7cb-917c-4dda-93fe-542c2285bafb";
|
boot.initrd.luks.devices."luks-008bb7cb-917c-4dda-93fe-542c2285bafb".device =
|
||||||
|
"/dev/disk/by-uuid/008bb7cb-917c-4dda-93fe-542c2285bafb";
|
||||||
|
|
||||||
fileSystems."/boot/efi" =
|
fileSystems."/boot/efi" = {
|
||||||
{ device = "/dev/disk/by-uuid/36B4-C473";
|
device = "/dev/disk/by-uuid/36B4-C473";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -35,5 +35,6 @@
|
||||||
# networking.interfaces.wlp0s20f3.useDHCP = lib.mkDefault true;
|
# networking.interfaces.wlp0s20f3.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
hardware.cpu.intel.updateMicrocode =
|
||||||
|
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -18,13 +18,9 @@
|
||||||
|
|
||||||
systemd.targets.hibernate.enable = false; # disable non-functional hibernate
|
systemd.targets.hibernate.enable = false; # disable non-functional hibernate
|
||||||
|
|
||||||
nix.nixPath = [
|
nix.nixPath = [ "nixos-config=${./rotterdam.nix}" ];
|
||||||
"nixos-config=${./rotterdam.nix}"
|
|
||||||
];
|
|
||||||
|
|
||||||
users.users.user.extraGroups = [
|
users.users.user.extraGroups = [ "corectrl" ];
|
||||||
"corectrl"
|
|
||||||
];
|
|
||||||
|
|
||||||
boot.kernelParams = [
|
boot.kernelParams = [
|
||||||
"processor.max_cstate=1" # Fixes bug where ryzen cpus freeze when in highest C state
|
"processor.max_cstate=1" # Fixes bug where ryzen cpus freeze when in highest C state
|
||||||
|
|
@ -32,7 +28,8 @@
|
||||||
];
|
];
|
||||||
|
|
||||||
environment.sessionVariables = rec {
|
environment.sessionVariables = rec {
|
||||||
KWIN_DRM_NO_AMS = "1"; # RDNA2 colour/gamma modesetting bug workaround for kwin wayland
|
KWIN_DRM_NO_AMS =
|
||||||
|
"1"; # RDNA2 colour/gamma modesetting bug workaround for kwin wayland
|
||||||
};
|
};
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
|
|
@ -45,17 +42,17 @@
|
||||||
cemu
|
cemu
|
||||||
retroarchFull
|
retroarchFull
|
||||||
rpcs3
|
rpcs3
|
||||||
# yuzu-ea
|
# yuzu-ea
|
||||||
# Packages from 3rd party overlays
|
# Packages from 3rd party overlays
|
||||||
emulationstation-de
|
emulationstation-de
|
||||||
];
|
];
|
||||||
|
|
||||||
networking.firewall = {
|
networking.firewall = {
|
||||||
allowedTCPPorts =[
|
allowedTCPPorts = [
|
||||||
27036 # Steam remote play
|
27036 # Steam remote play
|
||||||
27037 # Steam remote play
|
27037 # Steam remote play
|
||||||
];
|
];
|
||||||
allowedUDPPorts =[
|
allowedUDPPorts = [
|
||||||
27031 # Steam remote play
|
27031 # Steam remote play
|
||||||
27036 # Steam remote play
|
27036 # Steam remote play
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,5 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [ ./hardware-configuration.nix ];
|
||||||
./hardware-configuration.nix
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,28 +4,26 @@
|
||||||
{ config, lib, pkgs, modulesPath, ... }:
|
{ config, lib, pkgs, modulesPath, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
|
||||||
];
|
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
|
boot.initrd.availableKernelModules =
|
||||||
|
[ "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/9ccbb9e3-addc-42a3-b5d8-1e81eed37548";
|
device = "/dev/disk/by-uuid/9ccbb9e3-addc-42a3-b5d8-1e81eed37548";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot/efi" =
|
fileSystems."/boot/efi" = {
|
||||||
{ device = "/dev/disk/by-uuid/7707-0E25";
|
device = "/dev/disk/by-uuid/7707-0E25";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices =
|
swapDevices =
|
||||||
[ { device = "/dev/disk/by-uuid/39005453-0ac9-4fee-bdd3-7ea9bb6f9ca6"; }
|
[{ device = "/dev/disk/by-uuid/39005453-0ac9-4fee-bdd3-7ea9bb6f9ca6"; }];
|
||||||
];
|
|
||||||
|
|
||||||
# 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
|
||||||
|
|
@ -35,5 +33,6 @@
|
||||||
# networking.interfaces.enp34s0.useDHCP = lib.mkDefault true;
|
# networking.interfaces.enp34s0.useDHCP = lib.mkDefault true;
|
||||||
# networking.interfaces.wlo1.useDHCP = lib.mkDefault true;
|
# networking.interfaces.wlo1.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
hardware.cpu.amd.updateMicrocode =
|
||||||
|
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -8,51 +8,27 @@
|
||||||
containers = {
|
containers = {
|
||||||
"actual" = {
|
"actual" = {
|
||||||
image = "jlongster/actual-server:latest";
|
image = "jlongster/actual-server:latest";
|
||||||
ports = [
|
ports = [ "${config.ports.actual}:5006" ];
|
||||||
"${config.ports.actual}:5006"
|
volumes = [ "/data/actual:/data" ];
|
||||||
];
|
extraOptions = [ "--pull=always" ];
|
||||||
volumes = [
|
|
||||||
"/data/actual:/data"
|
|
||||||
];
|
|
||||||
extraOptions = [
|
|
||||||
"--pull=always"
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
"cinny" = {
|
"cinny" = {
|
||||||
image = "ghcr.io/cinnyapp/cinny:latest";
|
image = "ghcr.io/cinnyapp/cinny:latest";
|
||||||
ports = [
|
ports = [ "${config.ports.cinny}:80" ];
|
||||||
"${config.ports.cinny}:80"
|
volumes = [ "/data/matrix/cinny-config.json:/app/config.json" ];
|
||||||
];
|
extraOptions = [ "--pull=always" ];
|
||||||
volumes = [
|
|
||||||
"/data/matrix/cinny-config.json:/app/config.json"
|
|
||||||
];
|
|
||||||
extraOptions = [
|
|
||||||
"--pull=always"
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
"cinny2" = {
|
"cinny2" = {
|
||||||
image = "ghcr.io/cinnyapp/cinny:latest";
|
image = "ghcr.io/cinnyapp/cinny:latest";
|
||||||
ports = [
|
ports = [ "${config.ports.cinny2}:80" ];
|
||||||
"${config.ports.cinny2}:80"
|
volumes = [ "/data/matrix/cinny-config.json:/app/config.json" ];
|
||||||
];
|
extraOptions = [ "--pull=always" ];
|
||||||
volumes = [
|
|
||||||
"/data/matrix/cinny-config.json:/app/config.json"
|
|
||||||
];
|
|
||||||
extraOptions = [
|
|
||||||
"--pull=always"
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
"librespeed" = {
|
"librespeed" = {
|
||||||
image = "lscr.io/linuxserver/librespeed:latest";
|
image = "lscr.io/linuxserver/librespeed:latest";
|
||||||
environment = {
|
environment = { TZ = "America/Bahia"; };
|
||||||
TZ = "America/Bahia";
|
ports = [ "${config.ports.librespeed}:80" ];
|
||||||
};
|
extraOptions = [ "--pull=always" ];
|
||||||
ports = [
|
|
||||||
"${config.ports.librespeed}:80"
|
|
||||||
];
|
|
||||||
extraOptions = [
|
|
||||||
"--pull=always"
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
"whoogle" = {
|
"whoogle" = {
|
||||||
image = "benbusby/whoogle-search:latest";
|
image = "benbusby/whoogle-search:latest";
|
||||||
|
|
@ -63,12 +39,8 @@
|
||||||
WHOOGLE_CONFIG_VIEW_IMAGE = "1";
|
WHOOGLE_CONFIG_VIEW_IMAGE = "1";
|
||||||
WHOOGLE_CONFIG_GET_ONLY = "1";
|
WHOOGLE_CONFIG_GET_ONLY = "1";
|
||||||
};
|
};
|
||||||
ports = [
|
ports = [ "${config.ports.whoogle}:5000" ];
|
||||||
"${config.ports.whoogle}:5000"
|
extraOptions = [ "--pull=always" ];
|
||||||
];
|
|
||||||
extraOptions = [
|
|
||||||
"--pull=always"
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -4,22 +4,21 @@
|
||||||
{ config, lib, pkgs, modulesPath, ... }:
|
{ config, lib, pkgs, modulesPath, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
|
||||||
];
|
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
|
boot.initrd.availableKernelModules =
|
||||||
|
[ "xhci_pci" "ahci" "usbhid" "usb_storage" "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/31289617-1d84-4432-a833-680b52e88525";
|
device = "/dev/disk/by-uuid/31289617-1d84-4432-a833-680b52e88525";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" =
|
fileSystems."/boot" = {
|
||||||
{ device = "/dev/disk/by-uuid/4130-BE54";
|
device = "/dev/disk/by-uuid/4130-BE54";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -33,7 +32,8 @@
|
||||||
# networking.interfaces.enp1s0.useDHCP = lib.mkDefault true;
|
# networking.interfaces.enp1s0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
hardware.cpu.intel.updateMicrocode =
|
||||||
|
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
# high-resolution display
|
# high-resolution display
|
||||||
hardware.video.hidpi.enable = lib.mkDefault true;
|
hardware.video.hidpi.enable = lib.mkDefault true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,9 +3,7 @@
|
||||||
{
|
{
|
||||||
services.matrix-conduit = {
|
services.matrix-conduit = {
|
||||||
enable = true;
|
enable = true;
|
||||||
extraEnvironment = {
|
extraEnvironment = { RUST_MIN_STACK = "16777216"; };
|
||||||
RUST_MIN_STACK = "16777216";
|
|
||||||
};
|
|
||||||
package = pkgs.unstable.matrix-conduit;
|
package = pkgs.unstable.matrix-conduit;
|
||||||
settings.global = {
|
settings.global = {
|
||||||
server_name = "baduhai.me";
|
server_name = "baduhai.me";
|
||||||
|
|
|
||||||
|
|
@ -15,9 +15,7 @@
|
||||||
dnsProvider = "cloudflare";
|
dnsProvider = "cloudflare";
|
||||||
credentialsFile = config.age.secrets.cloudflare-creds.path;
|
credentialsFile = config.age.secrets.cloudflare-creds.path;
|
||||||
};
|
};
|
||||||
certs."baduhai.me" = {
|
certs."baduhai.me" = { extraDomainNames = [ "*.baduhai.me" ]; };
|
||||||
extraDomainNames = [ "*.baduhai.me" ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
boot.kernel.sysctl = {
|
boot.kernel.sysctl = {
|
||||||
|
|
|
||||||
|
|
@ -64,22 +64,108 @@
|
||||||
kTLS = true;
|
kTLS = true;
|
||||||
root = inputs.homepage;
|
root = inputs.homepage;
|
||||||
};
|
};
|
||||||
"bazarr.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.bazaar}"; };
|
"bazarr.baduhai.me" = {
|
||||||
"bitwarden.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.vaultwarden}"; };
|
useACMEHost = "baduhai.me";
|
||||||
"cinny.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.cinny}"; };
|
forceSSL = true;
|
||||||
"detect.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.changedetection-io}"; };
|
kTLS = true;
|
||||||
"jackett.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.jackett}"; };
|
locations."/".proxyPass = "http://127.0.0.1:${config.ports.bazaar}";
|
||||||
"jellyfin.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.jellyfin}"; };
|
};
|
||||||
"actual.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.actual}"; };
|
"bitwarden.baduhai.me" = {
|
||||||
"librespeed.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.librespeed}"; };
|
useACMEHost = "baduhai.me";
|
||||||
"n8n.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.n8n}"; };
|
forceSSL = true;
|
||||||
"paperless.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.paperless}"; };
|
kTLS = true;
|
||||||
"qbittorrent.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.qbittorrent}"; };
|
locations."/".proxyPass =
|
||||||
"radarr.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.radarr}"; };
|
"http://127.0.0.1:${config.ports.vaultwarden}";
|
||||||
"shiori.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.shiori}"; };
|
};
|
||||||
"sonarr.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.sonarr}"; };
|
"cinny.baduhai.me" = {
|
||||||
"sync.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.syncthing}"; };
|
useACMEHost = "baduhai.me";
|
||||||
"whoogle.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.whoogle}"; };
|
forceSSL = true;
|
||||||
|
kTLS = true;
|
||||||
|
locations."/".proxyPass = "http://127.0.0.1:${config.ports.cinny}";
|
||||||
|
};
|
||||||
|
"detect.baduhai.me" = {
|
||||||
|
useACMEHost = "baduhai.me";
|
||||||
|
forceSSL = true;
|
||||||
|
kTLS = true;
|
||||||
|
locations."/".proxyPass =
|
||||||
|
"http://127.0.0.1:${config.ports.changedetection-io}";
|
||||||
|
};
|
||||||
|
"jackett.baduhai.me" = {
|
||||||
|
useACMEHost = "baduhai.me";
|
||||||
|
forceSSL = true;
|
||||||
|
kTLS = true;
|
||||||
|
locations."/".proxyPass = "http://127.0.0.1:${config.ports.jackett}";
|
||||||
|
};
|
||||||
|
"jellyfin.baduhai.me" = {
|
||||||
|
useACMEHost = "baduhai.me";
|
||||||
|
forceSSL = true;
|
||||||
|
kTLS = true;
|
||||||
|
locations."/".proxyPass = "http://127.0.0.1:${config.ports.jellyfin}";
|
||||||
|
};
|
||||||
|
"actual.baduhai.me" = {
|
||||||
|
useACMEHost = "baduhai.me";
|
||||||
|
forceSSL = true;
|
||||||
|
kTLS = true;
|
||||||
|
locations."/".proxyPass = "http://127.0.0.1:${config.ports.actual}";
|
||||||
|
};
|
||||||
|
"librespeed.baduhai.me" = {
|
||||||
|
useACMEHost = "baduhai.me";
|
||||||
|
forceSSL = true;
|
||||||
|
kTLS = true;
|
||||||
|
locations."/".proxyPass =
|
||||||
|
"http://127.0.0.1:${config.ports.librespeed}";
|
||||||
|
};
|
||||||
|
"n8n.baduhai.me" = {
|
||||||
|
useACMEHost = "baduhai.me";
|
||||||
|
forceSSL = true;
|
||||||
|
kTLS = true;
|
||||||
|
locations."/".proxyPass = "http://127.0.0.1:${config.ports.n8n}";
|
||||||
|
};
|
||||||
|
"paperless.baduhai.me" = {
|
||||||
|
useACMEHost = "baduhai.me";
|
||||||
|
forceSSL = true;
|
||||||
|
kTLS = true;
|
||||||
|
locations."/".proxyPass =
|
||||||
|
"http://127.0.0.1:${config.ports.paperless}";
|
||||||
|
};
|
||||||
|
"qbittorrent.baduhai.me" = {
|
||||||
|
useACMEHost = "baduhai.me";
|
||||||
|
forceSSL = true;
|
||||||
|
kTLS = true;
|
||||||
|
locations."/".proxyPass =
|
||||||
|
"http://127.0.0.1:${config.ports.qbittorrent}";
|
||||||
|
};
|
||||||
|
"radarr.baduhai.me" = {
|
||||||
|
useACMEHost = "baduhai.me";
|
||||||
|
forceSSL = true;
|
||||||
|
kTLS = true;
|
||||||
|
locations."/".proxyPass = "http://127.0.0.1:${config.ports.radarr}";
|
||||||
|
};
|
||||||
|
"shiori.baduhai.me" = {
|
||||||
|
useACMEHost = "baduhai.me";
|
||||||
|
forceSSL = true;
|
||||||
|
kTLS = true;
|
||||||
|
locations."/".proxyPass = "http://127.0.0.1:${config.ports.shiori}";
|
||||||
|
};
|
||||||
|
"sonarr.baduhai.me" = {
|
||||||
|
useACMEHost = "baduhai.me";
|
||||||
|
forceSSL = true;
|
||||||
|
kTLS = true;
|
||||||
|
locations."/".proxyPass = "http://127.0.0.1:${config.ports.sonarr}";
|
||||||
|
};
|
||||||
|
"sync.baduhai.me" = {
|
||||||
|
useACMEHost = "baduhai.me";
|
||||||
|
forceSSL = true;
|
||||||
|
kTLS = true;
|
||||||
|
locations."/".proxyPass =
|
||||||
|
"http://127.0.0.1:${config.ports.syncthing}";
|
||||||
|
};
|
||||||
|
"whoogle.baduhai.me" = {
|
||||||
|
useACMEHost = "baduhai.me";
|
||||||
|
forceSSL = true;
|
||||||
|
kTLS = true;
|
||||||
|
locations."/".proxyPass = "http://127.0.0.1:${config.ports.whoogle}";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -90,9 +176,7 @@
|
||||||
passwordFile = config.age.secrets.paperless-pass.path;
|
passwordFile = config.age.secrets.paperless-pass.path;
|
||||||
port = lib.toInt "${config.ports.paperless}";
|
port = lib.toInt "${config.ports.paperless}";
|
||||||
consumptionDirIsPublic = true;
|
consumptionDirIsPublic = true;
|
||||||
extraConfig = {
|
extraConfig = { PAPERLESS_OCR_LANGUAGE = "eng+por+deu"; };
|
||||||
PAPERLESS_OCR_LANGUAGE = "eng+por+deu";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
postgresql.enable = true;
|
postgresql.enable = true;
|
||||||
|
|
@ -132,5 +216,6 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.services.NetworkManager-wait-online.enable = false; # Workaround for upstream bug in NetworkManager-wait-online.service
|
systemd.services.NetworkManager-wait-online.enable =
|
||||||
|
false; # Workaround for upstream bug in NetworkManager-wait-online.service
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -9,13 +9,7 @@
|
||||||
groups = {
|
groups = {
|
||||||
hosted = {
|
hosted = {
|
||||||
gid = 1005;
|
gid = 1005;
|
||||||
members = [
|
members = [ "user" "shiori" "minecraft" "paperless" "vaultwarden" ];
|
||||||
"user"
|
|
||||||
"shiori"
|
|
||||||
"minecraft"
|
|
||||||
"paperless"
|
|
||||||
"vaultwarden"
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,13 @@
|
||||||
{ specialArgs, inputs, config, pkgs, lib, ... }:
|
{ specialArgs, inputs, config, pkgs, lib, ... }:
|
||||||
|
|
||||||
let
|
let
|
||||||
mkStringOption = default: lib.mkOption {
|
mkStringOption = default:
|
||||||
|
lib.mkOption {
|
||||||
inherit default;
|
inherit default;
|
||||||
type = lib.types.str;
|
type = lib.types.str;
|
||||||
};
|
};
|
||||||
in
|
|
||||||
|
|
||||||
{
|
in {
|
||||||
options.ports = {
|
options.ports = {
|
||||||
n8n = mkStringOption "5678";
|
n8n = mkStringOption "5678";
|
||||||
bazaar = mkStringOption "6767";
|
bazaar = mkStringOption "6767";
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,5 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [ ./boot.nix ./nix.nix ];
|
||||||
./boot.nix
|
|
||||||
./nix.nix
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,8 +4,7 @@ let
|
||||||
cfg = config.services.qbittorrent;
|
cfg = config.services.qbittorrent;
|
||||||
configDir = "${cfg.dataDir}/.config";
|
configDir = "${cfg.dataDir}/.config";
|
||||||
openFilesLimit = 4096;
|
openFilesLimit = 4096;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
options.services.qbittorrent = {
|
options.services.qbittorrent = {
|
||||||
enable = mkOption {
|
enable = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,5 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [ ./home.nix ./programs.nix ];
|
||||||
./home.nix
|
|
||||||
./programs.nix
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,13 +5,14 @@
|
||||||
username = "user";
|
username = "user";
|
||||||
homeDirectory = "/home/user";
|
homeDirectory = "/home/user";
|
||||||
stateVersion = "22.05";
|
stateVersion = "22.05";
|
||||||
sessionVariables = {
|
sessionVariables = { EDITOR = "micro"; };
|
||||||
EDITOR = "micro";
|
|
||||||
};
|
|
||||||
file = {
|
file = {
|
||||||
".config/btop/themes/catppuccin_mocha.theme".source = "${inputs.dotfiles}/.config/btop/themes/catppuccin_mocha.theme";
|
".config/btop/themes/catppuccin_mocha.theme".source =
|
||||||
".config/fish/themes/Catppuccin Mocha.theme".source = "${inputs.dotfiles}/.config/fish/themes/Catppuccin Mocha.theme";
|
"${inputs.dotfiles}/.config/btop/themes/catppuccin_mocha.theme";
|
||||||
".config/starship.toml".source = "${inputs.dotfiles}/.config/starship.toml";
|
".config/fish/themes/Catppuccin Mocha.theme".source =
|
||||||
|
"${inputs.dotfiles}/.config/fish/themes/Catppuccin Mocha.theme";
|
||||||
|
".config/starship.toml".source =
|
||||||
|
"${inputs.dotfiles}/.config/starship.toml";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -43,7 +43,7 @@
|
||||||
# loginShellInit = "nix-your-shell fish | source";
|
# loginShellInit = "nix-your-shell fish | source";
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
nano = "micro";
|
nano = "micro";
|
||||||
wget = "wget --hsts-file=\"$XDG_DATA_HOME/wget-hsts\"";
|
wget = ''wget --hsts-file="$XDG_DATA_HOME/wget-hsts"'';
|
||||||
};
|
};
|
||||||
functions = {
|
functions = {
|
||||||
fish_greeting = "";
|
fish_greeting = "";
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,5 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [ ./home.nix ./programs.nix ./services.nix ];
|
||||||
./home.nix
|
|
||||||
./programs.nix
|
|
||||||
./services.nix
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -10,13 +10,20 @@
|
||||||
package = pkgs.breeze-icons;
|
package = pkgs.breeze-icons;
|
||||||
};
|
};
|
||||||
file = {
|
file = {
|
||||||
".config/wezterm/wezterm.lua".source = "${inputs.dotfiles}/.config/wezterm/wezterm.lua";
|
".config/wezterm/wezterm.lua".source =
|
||||||
".config/MangoHud/MangoHud.conf".source = "${inputs.dotfiles}/.config/MangoHud/MangoHud.conf";
|
"${inputs.dotfiles}/.config/wezterm/wezterm.lua";
|
||||||
".config/solvespace/settings.json".source = "${inputs.dotfiles}/.config/solvespace/settings.json";
|
".config/MangoHud/MangoHud.conf".source =
|
||||||
".local/share/color-schemes/CatppuccinLatte.colors".source = "${inputs.dotfiles}/.local/share/color-schemes/CatppuccinLatte.colors";
|
"${inputs.dotfiles}/.config/MangoHud/MangoHud.conf";
|
||||||
".local/share/color-schemes/CatppuccinMocha.colors".source = "${inputs.dotfiles}/.local/share/color-schemes/CatppuccinMocha.colors";
|
".config/solvespace/settings.json".source =
|
||||||
|
"${inputs.dotfiles}/.config/solvespace/settings.json";
|
||||||
|
".local/share/color-schemes/CatppuccinLatte.colors".source =
|
||||||
|
"${inputs.dotfiles}/.local/share/color-schemes/CatppuccinLatte.colors";
|
||||||
|
".local/share/color-schemes/CatppuccinMocha.colors".source =
|
||||||
|
"${inputs.dotfiles}/.local/share/color-schemes/CatppuccinMocha.colors";
|
||||||
# Autostart programs
|
# Autostart programs
|
||||||
".config/autostart/koi.desktop".source = config.lib.file.mkOutOfStoreSymlink "/var/run/current-system/sw/share/applications/koi.desktop";
|
".config/autostart/koi.desktop".source =
|
||||||
|
config.lib.file.mkOutOfStoreSymlink
|
||||||
|
"/var/run/current-system/sw/share/applications/koi.desktop";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,9 +5,18 @@
|
||||||
|
|
||||||
gtk = {
|
gtk = {
|
||||||
enable = true;
|
enable = true;
|
||||||
font = { name = "Inter"; size = 10; };
|
font = {
|
||||||
theme = { package = pkgs.breeze-gtk; name = "Breeze"; };
|
name = "Inter";
|
||||||
iconTheme = { package = pkgs.breeze-icons; name = "Breeze"; };
|
size = 10;
|
||||||
|
};
|
||||||
|
theme = {
|
||||||
|
package = pkgs.breeze-gtk;
|
||||||
|
name = "Breeze";
|
||||||
|
};
|
||||||
|
iconTheme = {
|
||||||
|
package = pkgs.breeze-icons;
|
||||||
|
name = "Breeze";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
|
|
@ -30,10 +39,14 @@
|
||||||
interactiveShellInit = "nix-your-shell fish | source";
|
interactiveShellInit = "nix-your-shell fish | source";
|
||||||
loginShellInit = "nix-your-shell fish | source";
|
loginShellInit = "nix-your-shell fish | source";
|
||||||
functions = {
|
functions = {
|
||||||
rebuild = "rm ~/.gtkrc-2.0; sudo nixos-rebuild switch --flake '/home/user/Projects/personal/nix-config#'";
|
rebuild =
|
||||||
rebuild-boot = "rm ~/.gtkrc-2.0; sudo nixos-rebuild boot --flake '/home/user/Projects/personal/nix-config#'";
|
"rm ~/.gtkrc-2.0; sudo nixos-rebuild switch --flake '/home/user/Projects/personal/nix-config#'";
|
||||||
upgrade = "rm ~/.gtkrc-2.0; nix flake lock --update-input nixpkgs --commit-lock-file /home/user/Projects/personal/nix-config; sudo nixos-rebuild switch --upgrade --flake '/home/user/Projects/personal/nix-config#'";
|
rebuild-boot =
|
||||||
upgrade-boot = "rm ~/.gtkrc-2.0; nix flake lock --update-input nixpkgs --commit-lock-file /home/user/Projects/personal/nix-config; sudo nixos-rebuild boot --upgrade --flake '/home/user/Projects/personal/nix-config#'";
|
"rm ~/.gtkrc-2.0; sudo nixos-rebuild boot --flake '/home/user/Projects/personal/nix-config#'";
|
||||||
|
upgrade =
|
||||||
|
"rm ~/.gtkrc-2.0; nix flake lock --update-input nixpkgs --commit-lock-file /home/user/Projects/personal/nix-config; sudo nixos-rebuild switch --upgrade --flake '/home/user/Projects/personal/nix-config#'";
|
||||||
|
upgrade-boot =
|
||||||
|
"rm ~/.gtkrc-2.0; nix flake lock --update-input nixpkgs --commit-lock-file /home/user/Projects/personal/nix-config; sudo nixos-rebuild boot --upgrade --flake '/home/user/Projects/personal/nix-config#'";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,5 @@
|
||||||
{ specialArgs, inputs, config, pkgs, lib, ... }:
|
{ specialArgs, inputs, config, pkgs, lib, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
services = {
|
services = { kdeconnect.enable = true; };
|
||||||
kdeconnect.enable = true;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue