code: nixpkgs-fmt to format code
This commit is contained in:
parent
8ecb892244
commit
04ad6ac1cd
|
@ -14,7 +14,7 @@ let
|
|||
value = let host = builtins.elemAt hosts i; in
|
||||
materusFlake.nixosConfigurations.${host}.materusCfg.hm.lib.homeManagerConfiguration {
|
||||
pkgs = materusFlake.nixosConfigurations.${host}.pkgs;
|
||||
extraSpecialArgs = { materusCfg = materusFlake.nixosConfigurations.${host}.materusCfg // {homePath = materusFlake.selfPath + "/configurations/home/${username}"; isHm = true;}; };
|
||||
extraSpecialArgs = { materusCfg = materusFlake.nixosConfigurations.${host}.materusCfg // { homePath = materusFlake.selfPath + "/configurations/home/${username}"; isHm = true; }; };
|
||||
modules = [
|
||||
./${username}
|
||||
../host/${host}/extraHome.nix
|
||||
|
@ -30,17 +30,19 @@ let
|
|||
(builtins.listToAttrs (_for 0)) // {
|
||||
#Make generic x86_64-linux user profile "username"
|
||||
${username} =
|
||||
let materusCfg = {
|
||||
stable = false;
|
||||
inherit materusFlake;
|
||||
host = "Generic";
|
||||
hm = inputs.configInputs.home-manager;
|
||||
nixerus = inputs.configInputs.nixerus;
|
||||
configInputs = inputs.configInputs;
|
||||
path = materusFlake.selfPath;
|
||||
homePath = materusFlake.selfPath + "/configurations/home/${username}";
|
||||
isHm = true;
|
||||
}; in
|
||||
let
|
||||
materusCfg = {
|
||||
stable = false;
|
||||
inherit materusFlake;
|
||||
host = "Generic";
|
||||
hm = inputs.configInputs.home-manager;
|
||||
nixerus = inputs.configInputs.nixerus;
|
||||
configInputs = inputs.configInputs;
|
||||
path = materusFlake.selfPath;
|
||||
homePath = materusFlake.selfPath + "/configurations/home/${username}";
|
||||
isHm = true;
|
||||
};
|
||||
in
|
||||
inputs.configInputs.home-manager.lib.homeManagerConfiguration {
|
||||
pkgs = import inputs.nixpkgs { system = "x86_64-linux"; config = { allowUnfree = true; }; };
|
||||
extraSpecialArgs = { inherit materusCfg; };
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
{
|
||||
|
||||
home.username = "materus";
|
||||
home.username = "materus";
|
||||
home.packages = [ ];
|
||||
|
||||
programs.git.signing.key = lib.mkDefault "28D140BCA60B4FD1";
|
||||
|
|
|
@ -136,8 +136,8 @@ in
|
|||
|
||||
services.fstrim = {
|
||||
enable = true;
|
||||
interval = "weekly";
|
||||
};
|
||||
interval = "weekly";
|
||||
};
|
||||
# Configure network proxy if necessary
|
||||
# networking.proxy.default = "http://user:password@proxy:port/";
|
||||
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||
|
@ -163,12 +163,12 @@ in
|
|||
|
||||
hardware.opengl.enable = true;
|
||||
hardware.opengl.driSupport32Bit = true;
|
||||
/* hardware.opengl.extraPackages = with pkgs; [
|
||||
/* hardware.opengl.extraPackages = with pkgs; [
|
||||
vaapiVdpau
|
||||
nvidia-vaapi-driver
|
||||
libvdpau-va-gl
|
||||
];
|
||||
hardware.opengl.extraPackages32 = with pkgs.pkgsi686Linux; [
|
||||
];
|
||||
hardware.opengl.extraPackages32 = with pkgs.pkgsi686Linux; [
|
||||
vaapiVdpau
|
||||
nvidia-vaapi-driver
|
||||
libvdpau-va-gl
|
||||
|
@ -177,26 +177,26 @@ in
|
|||
#hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.stable;
|
||||
|
||||
/*
|
||||
#GNOME
|
||||
services.xserver.displayManager.gdm.wayland = false;
|
||||
services.xserver.displayManager.gdm.enable = true;
|
||||
services.xserver.desktopManager.gnome.enable = true;
|
||||
security.pam.services.gdm.enableGnomeKeyring = true;
|
||||
#GNOME
|
||||
services.xserver.displayManager.gdm.wayland = false;
|
||||
services.xserver.displayManager.gdm.enable = true;
|
||||
services.xserver.desktopManager.gnome.enable = true;
|
||||
security.pam.services.gdm.enableGnomeKeyring = true;
|
||||
|
||||
|
||||
services.gnome.rygel.enable = true;
|
||||
services.gnome.sushi.enable = true;
|
||||
services.gnome.tracker.enable = true;
|
||||
services.gnome.gnome-online-accounts.enable = true;
|
||||
services.gnome.gnome-browser-connector.enable = true;
|
||||
services.gnome.gnome-settings-daemon.enable = true;
|
||||
services.gnome.core-utilities.enable = true;
|
||||
services.gnome.core-shell.enable = true;
|
||||
services.gnome.core-os-services.enable = true;
|
||||
services.gnome.rygel.enable = true;
|
||||
services.gnome.sushi.enable = true;
|
||||
services.gnome.tracker.enable = true;
|
||||
services.gnome.gnome-online-accounts.enable = true;
|
||||
services.gnome.gnome-browser-connector.enable = true;
|
||||
services.gnome.gnome-settings-daemon.enable = true;
|
||||
services.gnome.core-utilities.enable = true;
|
||||
services.gnome.core-shell.enable = true;
|
||||
services.gnome.core-os-services.enable = true;
|
||||
|
||||
programs.gnome-terminal.enable = true;
|
||||
services.gnome.gnome-keyring.enable = true;
|
||||
services.udev.packages = with pkgs; [ gnome.gnome-settings-daemon gnome2.GConf ];
|
||||
programs.gnome-terminal.enable = true;
|
||||
services.gnome.gnome-keyring.enable = true;
|
||||
services.udev.packages = with pkgs; [ gnome.gnome-settings-daemon gnome2.GConf ];
|
||||
*/
|
||||
|
||||
|
||||
|
@ -215,7 +215,7 @@ in
|
|||
|
||||
# Enable the Plasma 5 Desktop Environment.
|
||||
|
||||
|
||||
|
||||
|
||||
security.pam.services.sddm.enableKwallet = true;
|
||||
|
||||
|
@ -628,20 +628,20 @@ in
|
|||
|
||||
binutils
|
||||
/*
|
||||
gnome3.adwaita-icon-theme
|
||||
gnome3.gnome-tweaks
|
||||
gnome3.gnome-color-manager
|
||||
gnome3.gnome-shell-extensions
|
||||
gnome3.adwaita-icon-theme
|
||||
gnome3.gnome-tweaks
|
||||
gnome3.gnome-color-manager
|
||||
gnome3.gnome-shell-extensions
|
||||
|
||||
gnomeExtensions.appindicator
|
||||
gnomeExtensions.desktop-clock
|
||||
gnomeExtensions.gtk4-desktop-icons-ng-ding
|
||||
gnomeExtensions.compiz-windows-effect
|
||||
gnomeExtensions.burn-my-windows
|
||||
gnomeExtensions.user-themes
|
||||
gnomeExtensions.gsconnect
|
||||
gnomeExtensions.dash-to-panel
|
||||
gnomeExtensions.dash-to-dock
|
||||
gnomeExtensions.appindicator
|
||||
gnomeExtensions.desktop-clock
|
||||
gnomeExtensions.gtk4-desktop-icons-ng-ding
|
||||
gnomeExtensions.compiz-windows-effect
|
||||
gnomeExtensions.burn-my-windows
|
||||
gnomeExtensions.user-themes
|
||||
gnomeExtensions.gsconnect
|
||||
gnomeExtensions.dash-to-panel
|
||||
gnomeExtensions.dash-to-dock
|
||||
*/
|
||||
|
||||
|
||||
|
@ -665,7 +665,7 @@ in
|
|||
fonts.fontconfig.enable = true;
|
||||
fonts.fontconfig.cache32Bit = true;
|
||||
fonts.fontconfig.defaultFonts.sansSerif = [ "Noto Sans" "DejaVu Sans" "WenQuanYi Zen Hei" "Noto Color Emoji" ];
|
||||
fonts.fontconfig.defaultFonts.serif = [ "Noto Serif" "DejaVu Serif" "WenQuanYi Zen Hei" "Noto Color Emoji"];
|
||||
fonts.fontconfig.defaultFonts.serif = [ "Noto Serif" "DejaVu Serif" "WenQuanYi Zen Hei" "Noto Color Emoji" ];
|
||||
fonts.fontconfig.defaultFonts.emoji = [ "Noto Color Emoji" "OpenMoji Color" ];
|
||||
fonts.fontconfig.defaultFonts.monospace = [ "FiraCode Nerd Font Mono" "Noto Sans Mono" "WenQuanYi Zen Hei Mono" ];
|
||||
|
||||
|
@ -753,8 +753,8 @@ in
|
|||
};
|
||||
|
||||
# Open ports in the firewall.
|
||||
networking.firewall.allowedTCPPorts = [ 24800 5900 5357 4656];
|
||||
networking.firewall.allowedUDPPorts = [ 24800 5900 3702 4656];
|
||||
networking.firewall.allowedTCPPorts = [ 24800 5900 5357 4656 ];
|
||||
networking.firewall.allowedUDPPorts = [ 24800 5900 3702 4656 ];
|
||||
# Or disable the firewall altogether.
|
||||
networking.firewall.enable = true;
|
||||
|
||||
|
|
|
@ -4,14 +4,14 @@
|
|||
home.homeDirectory = "/home/materus";
|
||||
|
||||
programs.git = {
|
||||
userEmail = "materus@podkos.pl";
|
||||
userName = "materus";
|
||||
signing.signByDefault = true;
|
||||
signing.key = "${materusArg.cfg.path}/extraFiles/keys/ssh/materus.pub";
|
||||
extraConfig = {
|
||||
commit.gpgsign = true;
|
||||
gpg.format = "ssh";
|
||||
};
|
||||
userEmail = "materus@podkos.pl";
|
||||
userName = "materus";
|
||||
signing.signByDefault = true;
|
||||
signing.key = "${materusArg.cfg.path}/extraFiles/keys/ssh/materus.pub";
|
||||
extraConfig = {
|
||||
commit.gpgsign = true;
|
||||
gpg.format = "ssh";
|
||||
};
|
||||
};
|
||||
materus.profile = {
|
||||
fonts.enable = lib.mkDefault true;
|
||||
|
@ -21,7 +21,7 @@
|
|||
enableTerminalExtra = lib.mkDefault true;
|
||||
enableNixDevel = lib.mkDefault true;
|
||||
editor.code.fhs.enable = true;
|
||||
editor.code.fhs.packages = (ps: with ps; let llvmpkgs = llvmPackages_16; in[
|
||||
editor.code.fhs.packages = (ps: with ps; let llvmpkgs = llvmPackages_16; in [
|
||||
llvmpkgs.clang
|
||||
llvmpkgs.llvm
|
||||
llvmpkgs.bintools
|
||||
|
@ -36,7 +36,7 @@
|
|||
|
||||
cmake
|
||||
gnumake
|
||||
ninja
|
||||
ninja
|
||||
binutils
|
||||
coreutils
|
||||
util-linux
|
||||
|
@ -70,7 +70,7 @@
|
|||
]);
|
||||
|
||||
editor.emacs.enable = false;
|
||||
|
||||
|
||||
};
|
||||
|
||||
home.packages = [
|
||||
|
|
|
@ -5,14 +5,15 @@
|
|||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
[
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
boot.kernel.sysctl = {"vm.swappiness" = 10;};
|
||||
boot.kernel.sysctl = { "vm.swappiness" = 10; };
|
||||
swapDevices = [
|
||||
{
|
||||
device = "/swapfile";
|
||||
|
@ -20,42 +21,49 @@
|
|||
}
|
||||
];
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-label/NixOS_Root";
|
||||
{
|
||||
device = "/dev/disk/by-label/NixOS_Root";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=@" "noatime" "ssd" "space_cache=v2" ];
|
||||
};
|
||||
|
||||
fileSystems."/nix" =
|
||||
{ device = "/dev/disk/by-label/NixOS_Root";
|
||||
{
|
||||
device = "/dev/disk/by-label/NixOS_Root";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=@nix" "noatime" "compress=zstd" "ssd" "space_cache=v2" ];
|
||||
};
|
||||
|
||||
fileSystems."/materus" =
|
||||
{ device = "/dev/disk/by-label/NixOS_Root";
|
||||
{
|
||||
device = "/dev/disk/by-label/NixOS_Root";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=@materus" "noatime" "compress=zstd" "ssd" "space_cache=v2"];
|
||||
options = [ "subvol=@materus" "noatime" "compress=zstd" "ssd" "space_cache=v2" ];
|
||||
};
|
||||
|
||||
fileSystems."/etc/nixos" =
|
||||
{ device = "/materus/config/nixos-config";
|
||||
fileSystems."/etc/nixos" =
|
||||
{
|
||||
device = "/materus/config/nixos-config";
|
||||
fsType = "none";
|
||||
options = [ "bind" ];
|
||||
};
|
||||
|
||||
fileSystems."/home" =
|
||||
{ device = "/dev/disk/by-label/NixOS_Home";
|
||||
{
|
||||
device = "/dev/disk/by-label/NixOS_Home";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=@home" "nossd" "noatime" "compress=zstd" "space_cache=v2" "autodefrag" ];
|
||||
};
|
||||
fileSystems."/materus/data" =
|
||||
{ device = "/dev/disk/by-label/NixOS_Home";
|
||||
fileSystems."/materus/data" =
|
||||
{
|
||||
device = "/dev/disk/by-label/NixOS_Home";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=@data" "nossd" "noatime" "compress=zstd" "space_cache=v2" "autodefrag" ];
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-label/NixOS_Root";
|
||||
{
|
||||
device = "/dev/disk/by-label/NixOS_Root";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=@boot" "ssd" ];
|
||||
};
|
||||
|
@ -63,7 +71,8 @@
|
|||
|
||||
|
||||
fileSystems."/boot/efi" =
|
||||
{ device = "/dev/disk/by-label/NixOS_EFI";
|
||||
{
|
||||
device = "/dev/disk/by-label/NixOS_EFI";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
|
|
|
@ -115,7 +115,7 @@
|
|||
isNormalUser = true;
|
||||
description = "Mateusz Słodkowicz";
|
||||
extraGroups = [ "networkmanager" "wheel" ];
|
||||
openssh.authorizedKeys.keyFiles = [ ("${materusArg.cfg.path}" + "/extraFiles/keys/ssh/materus.pub") ];
|
||||
openssh.authorizedKeys.keyFiles = [ ("${materusArg.cfg.path}" + "/extraFiles/keys/ssh/materus.pub") ];
|
||||
packages = with pkgs; [
|
||||
kate
|
||||
];
|
||||
|
@ -135,7 +135,7 @@
|
|||
lshw
|
||||
steamcmd
|
||||
distrobox
|
||||
|
||||
|
||||
|
||||
config.materus.profile.packages.firefox
|
||||
config.programs.java.package
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
fsType = "btrfs";
|
||||
options = [ "subvol=@" "noatime" "ssd" "space_cache=v2" "compress=zstd" ];
|
||||
};
|
||||
fileSystems."/nix" =
|
||||
fileSystems."/nix" =
|
||||
{
|
||||
device = "/dev/disk/by-label/NixOS_Root_Laptop";
|
||||
fsType = "btrfs";
|
||||
|
|
|
@ -14,34 +14,35 @@
|
|||
};
|
||||
hardware.pulseaudio.enable = false;
|
||||
|
||||
environment.sessionVariables = let
|
||||
makePluginPath = format:
|
||||
environment.sessionVariables =
|
||||
let
|
||||
makePluginPath = format:
|
||||
(lib.makeSearchPath format [
|
||||
"$HOME/.nix-profile/lib"
|
||||
"/run/current-system/sw/lib"
|
||||
"/etc/profiles/per-user/$USER/lib"
|
||||
])
|
||||
+ ":$HOME/.${format}";
|
||||
in
|
||||
{
|
||||
ALSOFT_DRIVERS = "pulse";
|
||||
in
|
||||
{
|
||||
ALSOFT_DRIVERS = "pulse";
|
||||
|
||||
DSSI_PATH = makePluginPath "dssi";
|
||||
LADSPA_PATH = makePluginPath "ladspa";
|
||||
LV2_PATH = makePluginPath "lv2";
|
||||
LXVST_PATH = makePluginPath "lxvst";
|
||||
VST_PATH = makePluginPath "vst";
|
||||
VST3_PATH = makePluginPath "vst3";
|
||||
DSSI_PATH = makePluginPath "dssi";
|
||||
LADSPA_PATH = makePluginPath "ladspa";
|
||||
LV2_PATH = makePluginPath "lv2";
|
||||
LXVST_PATH = makePluginPath "lxvst";
|
||||
VST_PATH = makePluginPath "vst";
|
||||
VST3_PATH = makePluginPath "vst3";
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
services.udev = {
|
||||
extraRules = ''
|
||||
KERNEL=="rtc0", GROUP="audio"
|
||||
KERNEL=="hpet", GROUP="audio"
|
||||
KERNEL=="rtc0", GROUP="audio"
|
||||
KERNEL=="hpet", GROUP="audio"
|
||||
'';
|
||||
};
|
||||
environment.systemPackages = with pkgs; [
|
||||
environment.systemPackages = with pkgs; [
|
||||
openal
|
||||
pulseaudio
|
||||
|
||||
|
@ -59,4 +60,4 @@
|
|||
|
||||
];
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
|
||||
./audio.nix
|
||||
];
|
||||
|
||||
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
system.copySystemConfiguration = false;
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
nixpkgs-fmt
|
||||
cmake
|
||||
gnumake
|
||||
ninja
|
||||
ninja
|
||||
binutils
|
||||
coreutils
|
||||
util-linux
|
||||
|
@ -54,12 +54,12 @@
|
|||
libGLU.dev
|
||||
vulkan-loader.dev
|
||||
xorg.xorgproto
|
||||
xorg.libX11.dev
|
||||
xorg.libX11.dev
|
||||
xorg.libXrandr.dev
|
||||
xorg.libXrender.dev
|
||||
rustup
|
||||
freetype.dev
|
||||
|
||||
|
||||
fpc
|
||||
openjdk21
|
||||
bison
|
||||
|
@ -71,7 +71,7 @@
|
|||
]);
|
||||
|
||||
editor.emacs.enable = false;
|
||||
|
||||
|
||||
};
|
||||
|
||||
home.packages = [
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
|
||||
{ config, pkgs, lib,... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
{
|
||||
|
||||
|
||||
|
@ -19,27 +18,27 @@
|
|||
services.gnome.core-os-services.enable = true;
|
||||
|
||||
programs.gnupg.agent.pinentryFlavor = "gnome3";
|
||||
|
||||
|
||||
|
||||
programs.gnome-terminal.enable = true;
|
||||
|
||||
|
||||
services.udev.packages = with pkgs; [ gnome.gnome-settings-daemon ];
|
||||
services.dbus.packages = with pkgs; [ gnome2.GConf ];
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
|
||||
gnome3.adwaita-icon-theme
|
||||
gnome3.gnome-tweaks
|
||||
gnome3.gnome-color-manager
|
||||
gnome3.gnome-shell-extensions
|
||||
gnome3.adwaita-icon-theme
|
||||
gnome3.gnome-tweaks
|
||||
gnome3.gnome-color-manager
|
||||
gnome3.gnome-shell-extensions
|
||||
|
||||
gnomeExtensions.appindicator
|
||||
gnomeExtensions.desktop-clock
|
||||
gnomeExtensions.gtk4-desktop-icons-ng-ding
|
||||
gnomeExtensions.compiz-windows-effect
|
||||
gnomeExtensions.burn-my-windows
|
||||
gnomeExtensions.user-themes
|
||||
gnomeExtensions.gsconnect
|
||||
|
||||
gnomeExtensions.appindicator
|
||||
gnomeExtensions.desktop-clock
|
||||
gnomeExtensions.gtk4-desktop-icons-ng-ding
|
||||
gnomeExtensions.compiz-windows-effect
|
||||
gnomeExtensions.burn-my-windows
|
||||
gnomeExtensions.user-themes
|
||||
gnomeExtensions.gsconnect
|
||||
|
||||
];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -29,7 +29,7 @@ in
|
|||
services.xserver.displayManager.sddm.settings = {
|
||||
General = {
|
||||
#DisplayServer = "wayland";
|
||||
InputMethod="";
|
||||
InputMethod = "";
|
||||
};
|
||||
Theme = {
|
||||
CursorTheme = "breeze_cursors";
|
||||
|
@ -37,25 +37,25 @@ in
|
|||
};
|
||||
Wayland = {
|
||||
#CompositorCommand = "${pkgs.weston}/bin/weston -c ${westonSddm}";
|
||||
|
||||
|
||||
};
|
||||
};
|
||||
services.xserver.desktopManager.plasma6.enable = true;
|
||||
services.xserver.desktopManager.plasma6.enableQt5Integration = true;
|
||||
programs.gnupg.agent.pinentryFlavor = "gnome3";
|
||||
environment.plasma6.excludePackages = with pkgs.kdePackages; [ kwallet kwalletmanager kwallet-pam ];
|
||||
|
||||
|
||||
environment.variables = {
|
||||
# Old fix for black cursor on amdgpu, seems to work fine now
|
||||
#KWIN_DRM_NO_AMS = "1";
|
||||
|
||||
#Fix for amdgpu crashes
|
||||
KWIN_DRM_USE_MODIFIERS="0";
|
||||
KWIN_DRM_NO_DIRECT_SCANOUT="1";
|
||||
KWIN_DRM_USE_MODIFIERS = "0";
|
||||
KWIN_DRM_NO_DIRECT_SCANOUT = "1";
|
||||
};
|
||||
environment.systemPackages = with pkgs; [
|
||||
|
||||
];
|
||||
|
||||
materus.profile.steam.extraPkgs = [pkgs.kdePackages.breeze pkgs.kdePackages.breeze-gtk pkgs.kdePackages.dolphin];
|
||||
materus.profile.steam.extraPkgs = [ pkgs.kdePackages.breeze pkgs.kdePackages.breeze-gtk pkgs.kdePackages.dolphin ];
|
||||
}
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
networking.networkmanager.enable = true;
|
||||
#networking.networkmanager.wifi.backend = "iwd";
|
||||
networking.firewall.enable = true;
|
||||
networking.firewall.allowedTCPPorts = [ 24800 5900 5357 4656 8080 9943 9944];
|
||||
networking.firewall.allowedUDPPorts = [ 24800 5900 3702 4656 6000 9943 9944];
|
||||
networking.firewall.allowedTCPPorts = [ 24800 5900 5357 4656 8080 9943 9944 ];
|
||||
networking.firewall.allowedUDPPorts = [ 24800 5900 3702 4656 6000 9943 9944 ];
|
||||
#Fix warning
|
||||
networking.networkmanager.extraConfig = lib.mkDefault ''
|
||||
[connectivity]
|
||||
|
|
|
@ -1,50 +1,50 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
let
|
||||
valkyrie-sync = pkgs.writeShellScriptBin "valkyrie-sync" ''
|
||||
${pkgs.rsync}/bin/rsync -avzrh --delete --exclude ".git*" --exclude "flake.lock" /materus/config/nixos-config materus@valkyrie:/materus/config/ && \
|
||||
${pkgs.rsync}/bin/rsync -avzrh --delete --exclude ".git*" /materus/config/private/valkyrie materus@valkyrie:/materus/config/private
|
||||
'';
|
||||
valkyrie-sync = pkgs.writeShellScriptBin "valkyrie-sync" ''
|
||||
${pkgs.rsync}/bin/rsync -avzrh --delete --exclude ".git*" --exclude "flake.lock" /materus/config/nixos-config materus@valkyrie:/materus/config/ && \
|
||||
${pkgs.rsync}/bin/rsync -avzrh --delete --exclude ".git*" /materus/config/private/valkyrie materus@valkyrie:/materus/config/private
|
||||
'';
|
||||
|
||||
valkyrie-flakelock = pkgs.writeShellScriptBin "valkyrie-flakelock" ''
|
||||
${pkgs.openssh}/bin/ssh materus@valkyrie "nix flake update /materus/config/nixos-config --override-input nixpkgs github:NixOS/nixpkgs/23.05 \
|
||||
--override-input home-manager github:nix-community/home-manager/release-23.05 \
|
||||
--override-input private /materus/config/private/valkyrie/flake"
|
||||
'';
|
||||
valkyrie-flakelock = pkgs.writeShellScriptBin "valkyrie-flakelock" ''
|
||||
${pkgs.openssh}/bin/ssh materus@valkyrie "nix flake update /materus/config/nixos-config --override-input nixpkgs github:NixOS/nixpkgs/23.05 \
|
||||
--override-input home-manager github:nix-community/home-manager/release-23.05 \
|
||||
--override-input private /materus/config/private/valkyrie/flake"
|
||||
'';
|
||||
|
||||
valkyrie-rebuild-boot = pkgs.writeShellScriptBin "valkyrie-rebuild-boot" ''
|
||||
${pkgs.openssh}/bin/ssh -t materus@valkyrie "sudo nixos-rebuild boot --flake /materus/config/nixos-config#valkyrie \
|
||||
--override-input private /materus/config/private/valkyrie/flake"
|
||||
'';
|
||||
valkyrie-rebuild-switch = pkgs.writeShellScriptBin "valkyrie-rebuild-switch" ''
|
||||
${pkgs.openssh}/bin/ssh -t materus@valkyrie "sudo nixos-rebuild switch --flake /materus/config/nixos-config#valkyrie \
|
||||
--override-input private /materus/config/private/valkyrie/flake"
|
||||
'';
|
||||
valkyrie-rebuild-boot = pkgs.writeShellScriptBin "valkyrie-rebuild-boot" ''
|
||||
${pkgs.openssh}/bin/ssh -t materus@valkyrie "sudo nixos-rebuild boot --flake /materus/config/nixos-config#valkyrie \
|
||||
--override-input private /materus/config/private/valkyrie/flake"
|
||||
'';
|
||||
valkyrie-rebuild-switch = pkgs.writeShellScriptBin "valkyrie-rebuild-switch" ''
|
||||
${pkgs.openssh}/bin/ssh -t materus@valkyrie "sudo nixos-rebuild switch --flake /materus/config/nixos-config#valkyrie \
|
||||
--override-input private /materus/config/private/valkyrie/flake"
|
||||
'';
|
||||
|
||||
|
||||
|
||||
flamaster-sync = pkgs.writeShellScriptBin "flamaster-sync" ''
|
||||
${pkgs.rsync}/bin/rsync -avzrh --delete --exclude ".git*" --exclude "flake.lock" /materus/config/nixos-config materus@flamaster:/materus/config/ && \
|
||||
${pkgs.rsync}/bin/rsync -avzrh --delete --exclude ".git*" /materus/config/private/flamaster materus@flamaster:/materus/config/private
|
||||
'';
|
||||
flamaster-sync = pkgs.writeShellScriptBin "flamaster-sync" ''
|
||||
${pkgs.rsync}/bin/rsync -avzrh --delete --exclude ".git*" --exclude "flake.lock" /materus/config/nixos-config materus@flamaster:/materus/config/ && \
|
||||
${pkgs.rsync}/bin/rsync -avzrh --delete --exclude ".git*" /materus/config/private/flamaster materus@flamaster:/materus/config/private
|
||||
'';
|
||||
|
||||
flamaster-flakelock = pkgs.writeShellScriptBin "flamaster-flakelock" ''
|
||||
${pkgs.openssh}/bin/ssh materus@flamaster "nix flake update /materus/config/nixos-config --override-input nixpkgs github:NixOS/nixpkgs/23.05 \
|
||||
--override-input home-manager github:nix-community/home-manager/release-23.05 \
|
||||
--override-input private /materus/config/private/flamaster/flake"
|
||||
'';
|
||||
flamaster-flakelock = pkgs.writeShellScriptBin "flamaster-flakelock" ''
|
||||
${pkgs.openssh}/bin/ssh materus@flamaster "nix flake update /materus/config/nixos-config --override-input nixpkgs github:NixOS/nixpkgs/23.05 \
|
||||
--override-input home-manager github:nix-community/home-manager/release-23.05 \
|
||||
--override-input private /materus/config/private/flamaster/flake"
|
||||
'';
|
||||
|
||||
flamaster-rebuild-boot = pkgs.writeShellScriptBin "flamaster-rebuild-boot" ''
|
||||
${pkgs.openssh}/bin/ssh -t materus@flamaster "sudo nixos-rebuild boot --flake /materus/config/nixos-config#flamaster \
|
||||
--override-input private /materus/config/private/flamaster/flake"
|
||||
'';
|
||||
flamaster-rebuild-switch = pkgs.writeShellScriptBin "flamaster-rebuild-switch" ''
|
||||
${pkgs.openssh}/bin/ssh -t materus@flamaster "sudo nixos-rebuild switch --flake /materus/config/nixos-config#flamaster \
|
||||
--override-input private /materus/config/private/flamaster/flake"
|
||||
'';
|
||||
flamaster-rebuild-boot = pkgs.writeShellScriptBin "flamaster-rebuild-boot" ''
|
||||
${pkgs.openssh}/bin/ssh -t materus@flamaster "sudo nixos-rebuild boot --flake /materus/config/nixos-config#flamaster \
|
||||
--override-input private /materus/config/private/flamaster/flake"
|
||||
'';
|
||||
flamaster-rebuild-switch = pkgs.writeShellScriptBin "flamaster-rebuild-switch" ''
|
||||
${pkgs.openssh}/bin/ssh -t materus@flamaster "sudo nixos-rebuild switch --flake /materus/config/nixos-config#flamaster \
|
||||
--override-input private /materus/config/private/flamaster/flake"
|
||||
'';
|
||||
|
||||
|
||||
in
|
||||
{
|
||||
{
|
||||
environment.systemPackages = [
|
||||
valkyrie-rebuild-boot
|
||||
valkyrie-rebuild-switch
|
||||
|
@ -55,5 +55,5 @@ in
|
|||
flamaster-rebuild-switch
|
||||
flamaster-sync
|
||||
flamaster-flakelock
|
||||
];
|
||||
];
|
||||
}
|
||||
|
|
|
@ -2,25 +2,25 @@
|
|||
{
|
||||
imports =
|
||||
[
|
||||
|
||||
] ++ (if (materusCfg.materusFlake.decrypted) then [ ./private ] else [] );
|
||||
|
||||
sops.age.generateKey = false;
|
||||
sops.gnupg.home = null;
|
||||
sops.gnupg.sshKeyPaths = [];
|
||||
sops.defaultSopsFile = materusCfg.hostPath + "/secrets/secrets.yaml";
|
||||
sops.secrets."users/materus" = {};
|
||||
] ++ (if (materusCfg.materusFlake.decrypted) then [ ./private ] else [ ]);
|
||||
|
||||
services.openssh.hostKeys = [
|
||||
{
|
||||
bits = 4096;
|
||||
path = "/materus/root/ssh_host_rsa_key";
|
||||
type = "rsa";
|
||||
}
|
||||
{
|
||||
path = "/materus/root/ssh_host_ed25519_key";
|
||||
type = "ed25519";
|
||||
}
|
||||
];
|
||||
sops.age.generateKey = false;
|
||||
sops.gnupg.home = null;
|
||||
sops.gnupg.sshKeyPaths = [ ];
|
||||
sops.defaultSopsFile = materusCfg.hostPath + "/secrets/secrets.yaml";
|
||||
sops.secrets."users/materus" = { };
|
||||
|
||||
services.openssh.hostKeys = [
|
||||
{
|
||||
bits = 4096;
|
||||
path = "/materus/root/ssh_host_rsa_key";
|
||||
type = "rsa";
|
||||
}
|
||||
{
|
||||
path = "/materus/root/ssh_host_ed25519_key";
|
||||
type = "ed25519";
|
||||
}
|
||||
];
|
||||
|
||||
}
|
||||
|
|
|
@ -103,10 +103,10 @@
|
|||
XDG_BIN_HOME = "\${HOME}/.local/bin";
|
||||
XDG_DATA_HOME = "\${HOME}/.local/share";
|
||||
QT_XKB_CONFIG_ROOT = "\${XKB_CONFIG_ROOT}";
|
||||
GTK_IM_MODULE="fcitx";
|
||||
QT_IM_MODULE="fcitx";
|
||||
XMODIFIERS="@im=fcitx";
|
||||
SDL_IM_MODULE="fcitx";
|
||||
GTK_IM_MODULE = "fcitx";
|
||||
QT_IM_MODULE = "fcitx";
|
||||
XMODIFIERS = "@im=fcitx";
|
||||
SDL_IM_MODULE = "fcitx";
|
||||
#SDL_AUDIODRIVER = "pipewire";
|
||||
|
||||
#SSH_ASKPASS_REQUIRE = "prefer";
|
||||
|
@ -122,7 +122,7 @@
|
|||
'';
|
||||
|
||||
i18n.inputMethod.enabled = "fcitx5";
|
||||
i18n.inputMethod.fcitx5.addons = [ pkgs.fcitx5-configtool pkgs.fcitx5-lua pkgs.fcitx5-mozc pkgs.fcitx5-gtk pkgs.kdePackages.fcitx5-qt];
|
||||
i18n.inputMethod.fcitx5.addons = [ pkgs.fcitx5-configtool pkgs.fcitx5-lua pkgs.fcitx5-mozc pkgs.fcitx5-gtk pkgs.kdePackages.fcitx5-qt ];
|
||||
|
||||
|
||||
# Some programs need SUID wrappers, can be configured further or are
|
||||
|
@ -260,7 +260,7 @@
|
|||
monkeysphere
|
||||
gparted
|
||||
|
||||
|
||||
|
||||
|
||||
virt-viewer
|
||||
|
||||
|
@ -274,7 +274,7 @@
|
|||
bubblewrap
|
||||
bindfs
|
||||
|
||||
|
||||
|
||||
|
||||
binutils
|
||||
config.materus.profile.packages.firefox
|
||||
|
|
|
@ -5,24 +5,27 @@
|
|||
];
|
||||
|
||||
systemd.mounts = [
|
||||
{ where = "/dev/hugepages";
|
||||
enable = false;
|
||||
}
|
||||
{ where = "/dev/hugepages/hugepages-2048kB";
|
||||
enable = true;
|
||||
what = "hugetlbfs";
|
||||
type = "hugetlbfs";
|
||||
options = "pagesize=2M";
|
||||
requiredBy = [ "basic.target" ];
|
||||
}
|
||||
{ where = "/dev/hugepages/hugepages-1048576kB";
|
||||
enable = true;
|
||||
what = "hugetlbfs";
|
||||
type = "hugetlbfs";
|
||||
options = "pagesize=1G";
|
||||
requiredBy = [ "basic.target" ];
|
||||
}
|
||||
];
|
||||
{
|
||||
where = "/dev/hugepages";
|
||||
enable = false;
|
||||
}
|
||||
{
|
||||
where = "/dev/hugepages/hugepages-2048kB";
|
||||
enable = true;
|
||||
what = "hugetlbfs";
|
||||
type = "hugetlbfs";
|
||||
options = "pagesize=2M";
|
||||
requiredBy = [ "basic.target" ];
|
||||
}
|
||||
{
|
||||
where = "/dev/hugepages/hugepages-1048576kB";
|
||||
enable = true;
|
||||
what = "hugetlbfs";
|
||||
type = "hugetlbfs";
|
||||
options = "pagesize=1G";
|
||||
requiredBy = [ "basic.target" ];
|
||||
}
|
||||
];
|
||||
|
||||
virtualisation.libvirtd = {
|
||||
enable = true;
|
||||
|
|
|
@ -14,36 +14,36 @@ let
|
|||
''
|
||||
+*/
|
||||
''
|
||||
# Make sure nothing renders on gpu to prevent "sysfs: cannot create duplicate filename" after rebinding to amdgpu
|
||||
chmod 0 /dev/dri/renderD128
|
||||
fuser -k /dev/dri/renderD128
|
||||
# Make sure nothing renders on gpu to prevent "sysfs: cannot create duplicate filename" after rebinding to amdgpu
|
||||
chmod 0 /dev/dri/renderD128
|
||||
fuser -k /dev/dri/renderD128
|
||||
|
||||
# Seems to fix reset bug for 7900 XTX
|
||||
echo "0" > "/sys/bus/pci/devices/''${VIRSH_GPU_VIDEO}/d3cold_allowed"
|
||||
# Seems to fix reset bug for 7900 XTX
|
||||
echo "0" > "/sys/bus/pci/devices/''${VIRSH_GPU_VIDEO}/d3cold_allowed"
|
||||
|
||||
systemctl stop mountWin10Share.service
|
||||
systemctl stop mountWin10Share.service
|
||||
|
||||
|
||||
echo ''$VIRSH_GPU_VIDEO > "/sys/bus/pci/devices/''${VIRSH_GPU_VIDEO}/driver/unbind"
|
||||
echo ''$VIRSH_GPU_AUDIO > "/sys/bus/pci/devices/''${VIRSH_GPU_AUDIO}/driver/unbind"
|
||||
echo ''$VIRSH_GPU_VIDEO > "/sys/bus/pci/devices/''${VIRSH_GPU_VIDEO}/driver/unbind"
|
||||
echo ''$VIRSH_GPU_AUDIO > "/sys/bus/pci/devices/''${VIRSH_GPU_AUDIO}/driver/unbind"
|
||||
|
||||
sleep 1s
|
||||
sleep 1s
|
||||
|
||||
echo "10" > "/sys/bus/pci/devices/''${VIRSH_GPU_VIDEO}/resource0_resize"
|
||||
echo "8" > "/sys/bus/pci/devices/''${VIRSH_GPU_VIDEO}/resource2_resize"
|
||||
echo "10" > "/sys/bus/pci/devices/''${VIRSH_GPU_VIDEO}/resource0_resize"
|
||||
echo "8" > "/sys/bus/pci/devices/''${VIRSH_GPU_VIDEO}/resource2_resize"
|
||||
|
||||
echo "3" > /proc/sys/vm/drop_caches
|
||||
echo "1" > /proc/sys/vm/compact_memory
|
||||
#echo "8192" > /sys/devices/system/node/node1/hugepages/hugepages-2048kB/nr_hugepages
|
||||
echo "3" > /proc/sys/vm/drop_caches
|
||||
echo "1" > /proc/sys/vm/compact_memory
|
||||
#echo "8192" > /sys/devices/system/node/node1/hugepages/hugepages-2048kB/nr_hugepages
|
||||
|
||||
|
||||
|
||||
systemctl set-property --runtime -- user.slice AllowedCPUs=0-7,16-23
|
||||
systemctl set-property --runtime -- system.slice AllowedCPUs=0-7,16-23
|
||||
systemctl set-property --runtime -- init.scope AllowedCPUs=0-7,16-23
|
||||
systemctl set-property --runtime -- user.slice AllowedCPUs=0-7,16-23
|
||||
systemctl set-property --runtime -- system.slice AllowedCPUs=0-7,16-23
|
||||
systemctl set-property --runtime -- init.scope AllowedCPUs=0-7,16-23
|
||||
|
||||
|
||||
'';
|
||||
'';
|
||||
stopHook = ''
|
||||
|
||||
# Debugging
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
# Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
./services
|
||||
];
|
||||
];
|
||||
|
||||
materus.profile.nix.enable = true;
|
||||
|
||||
|
|
|
@ -1,15 +1,15 @@
|
|||
{ config, pkgs, ... }:
|
||||
{
|
||||
imports =
|
||||
imports =
|
||||
[
|
||||
./pleroma.nix
|
||||
./pihole.nix
|
||||
];
|
||||
services.adguardhome.enable = true;
|
||||
services.adguardhome.enable = true;
|
||||
|
||||
valkyrieService.pihole.enable = false;
|
||||
valkyrieService.pleroma.enable = true;
|
||||
valkyrieService.pihole.enable = false;
|
||||
valkyrieService.pleroma.enable = true;
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,54 +1,56 @@
|
|||
{ config, pkgs, lib, materusArg, ... }:
|
||||
{
|
||||
options.valkyrieService.pihole.enable = materusArg.pkgs.lib.mkBoolOpt false "Enable pihole";
|
||||
options.valkyrieService.pihole.dnsIP = lib.mkOption { default = "127.0.0.1";};
|
||||
options.valkyrieService.pihole.webIP = lib.mkOption { default = "127.0.0.1";};
|
||||
options.valkyrieService.pihole.dnsIP = lib.mkOption { default = "127.0.0.1"; };
|
||||
options.valkyrieService.pihole.webIP = lib.mkOption { default = "127.0.0.1"; };
|
||||
|
||||
|
||||
|
||||
config = let
|
||||
cfg = config.valkyrieService.pihole;
|
||||
dnsmasqConf = pkgs.writeText "02-dnsmasq-custom.conf" ''
|
||||
no-hosts
|
||||
'';
|
||||
|
||||
in lib.mkIf config.valkyrieService.pihole.enable {
|
||||
systemd.tmpfiles.rules = [
|
||||
"d /var/lib/dnsmasq.d 0776 root root -"
|
||||
"d /var/lib/pihole 0776 root root -"
|
||||
"L+ /var/lib/dnsmasq.d/02-dnsmasq-custom.conf 0776 root root - ${dnsmasqConf}"
|
||||
];
|
||||
config =
|
||||
let
|
||||
cfg = config.valkyrieService.pihole;
|
||||
dnsmasqConf = pkgs.writeText "02-dnsmasq-custom.conf" ''
|
||||
no-hosts
|
||||
'';
|
||||
|
||||
virtualisation.oci-containers.containers.pihole = {
|
||||
image = "pihole/pihole:latest";
|
||||
ports =
|
||||
[
|
||||
"${cfg.dnsIP}:53:53/tcp"
|
||||
"${cfg.dnsIP}:53:53/udp"
|
||||
"${cfg.webIP}:3000:80"
|
||||
];
|
||||
environment = {
|
||||
TZ = "Europe/Warsaw";
|
||||
FTLCONF_LOCAL_IPV4="127.0.0.1";
|
||||
DNSMASQ_USER="root";
|
||||
VIRTUAL_HOST="pi.hole";
|
||||
PROXY_LOCATION="pi.hole";
|
||||
};
|
||||
volumes = [
|
||||
"/var/lib/pihole/:/etc/pihole/"
|
||||
"/var/lib/dnsmasq.d:/etc/dnsmasq.d/"
|
||||
"/nix/store:/nix/store"
|
||||
in
|
||||
lib.mkIf config.valkyrieService.pihole.enable {
|
||||
systemd.tmpfiles.rules = [
|
||||
"d /var/lib/dnsmasq.d 0776 root root -"
|
||||
"d /var/lib/pihole 0776 root root -"
|
||||
"L+ /var/lib/dnsmasq.d/02-dnsmasq-custom.conf 0776 root root - ${dnsmasqConf}"
|
||||
];
|
||||
extraOptions =
|
||||
[
|
||||
"--cap-add=NET_ADMIN"
|
||||
"--dns=127.0.0.1"
|
||||
"--dns=9.9.9.9"
|
||||
"--hostname=pi.hole"
|
||||
];
|
||||
};
|
||||
|
||||
};
|
||||
virtualisation.oci-containers.containers.pihole = {
|
||||
image = "pihole/pihole:latest";
|
||||
ports =
|
||||
[
|
||||
"${cfg.dnsIP}:53:53/tcp"
|
||||
"${cfg.dnsIP}:53:53/udp"
|
||||
"${cfg.webIP}:3000:80"
|
||||
];
|
||||
environment = {
|
||||
TZ = "Europe/Warsaw";
|
||||
FTLCONF_LOCAL_IPV4 = "127.0.0.1";
|
||||
DNSMASQ_USER = "root";
|
||||
VIRTUAL_HOST = "pi.hole";
|
||||
PROXY_LOCATION = "pi.hole";
|
||||
};
|
||||
volumes = [
|
||||
"/var/lib/pihole/:/etc/pihole/"
|
||||
"/var/lib/dnsmasq.d:/etc/dnsmasq.d/"
|
||||
"/nix/store:/nix/store"
|
||||
];
|
||||
extraOptions =
|
||||
[
|
||||
"--cap-add=NET_ADMIN"
|
||||
"--dns=127.0.0.1"
|
||||
"--dns=9.9.9.9"
|
||||
"--hostname=pi.hole"
|
||||
];
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -6,7 +6,8 @@
|
|||
|
||||
{
|
||||
imports =
|
||||
[ # Include the results of the hardware scan.
|
||||
[
|
||||
# Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
];
|
||||
environment.systemPackages = with pkgs; [
|
||||
|
@ -15,15 +16,15 @@
|
|||
git
|
||||
];
|
||||
sound.enable = false;
|
||||
boot.tmp.useTmpfs = true;
|
||||
services.xserver.enable = false;
|
||||
boot.tmp.useTmpfs = true;
|
||||
services.xserver.enable = false;
|
||||
networking.hostName = "waffentrager";
|
||||
services.openssh.enable = true;
|
||||
users.users.materus = {
|
||||
isNormalUser = true;
|
||||
extraGroups = [ "wheel" ];
|
||||
openssh.authorizedKeys.keys = [
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPEDY+H8Hc/RSLE064AAh8IojvqxPd8BE5gec2aOfYMh materus@podkos.pl"
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPEDY+H8Hc/RSLE064AAh8IojvqxPd8BE5gec2aOfYMh materus@podkos.pl"
|
||||
];
|
||||
};
|
||||
|
||||
|
@ -37,7 +38,7 @@
|
|||
"https://cache.nixos.org/"
|
||||
"https://nixerus.cachix.org/"
|
||||
];
|
||||
trusted-public-keys = [ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" "nixerus.cachix.org-1:2x7sIG7y1vAoxc8BNRJwsfapZsiX4hIl4aTi9V5ZDdE="];
|
||||
trusted-public-keys = [ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" "nixerus.cachix.org-1:2x7sIG7y1vAoxc8BNRJwsfapZsiX4hIl4aTi9V5ZDdE=" ];
|
||||
};
|
||||
};
|
||||
# Use the extlinux boot loader. (NixOS wants to enable GRUB by default)
|
||||
|
@ -69,7 +70,7 @@
|
|||
# services.xserver.enable = true;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# Configure keymap in X11
|
||||
# services.xserver.layout = "us";
|
||||
|
|
|
@ -5,4 +5,4 @@
|
|||
materusCfg.configInputs.nixos-hardware.nixosModules.raspberry-pi-4
|
||||
./configuration.nix
|
||||
];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,7 +5,8 @@
|
|||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
[
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
boot.kernelPackages = pkgs.linuxPackages_rpi4;
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "usb_storage" ];
|
||||
|
@ -16,7 +17,8 @@
|
|||
"vm.swappiness" = 10;
|
||||
};
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/44444444-4444-4444-8888-888888888888";
|
||||
{
|
||||
device = "/dev/disk/by-uuid/44444444-4444-4444-8888-888888888888";
|
||||
fsType = "ext4";
|
||||
};
|
||||
fileSystems."/etc/nixos" =
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
{ config, pkgs, lib, materusCfg, ... }:
|
||||
let
|
||||
materusArg = {
|
||||
pkgs = (import materusCfg.nixerus { inherit pkgs; }) //
|
||||
(if pkgs.system == "x86_64-linux" then { i686Linux = import materusCfg.nixerus { pkgs = pkgs.pkgsi686Linux; }; } else { });
|
||||
cfg = materusCfg;
|
||||
};
|
||||
materusArg = {
|
||||
pkgs = (import materusCfg.nixerus { inherit pkgs; }) //
|
||||
(if pkgs.system == "x86_64-linux" then { i686Linux = import materusCfg.nixerus { pkgs = pkgs.pkgsi686Linux; }; } else { });
|
||||
cfg = materusCfg;
|
||||
};
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
./nixpkgs.nix
|
||||
./packages
|
||||
];
|
||||
options.materus.materusArg = lib.mkOption {default = {};};
|
||||
options.materus.materusArg = lib.mkOption { default = { }; };
|
||||
config._module.args.materusArg = config.materus.materusArg // materusArg;
|
||||
config.warnings = lib.mkIf (!materusCfg.materusFlake.decrypted) ["Repository not decrypted, private configs not loaded, use crypt.sh to decrypt"];
|
||||
config.warnings = lib.mkIf (!materusCfg.materusFlake.decrypted) [ "Repository not decrypted, private configs not loaded, use crypt.sh to decrypt" ];
|
||||
}
|
||||
|
|
|
@ -14,78 +14,78 @@ in
|
|||
options.materus.profile.nixpkgs.enableOverlays = mkBoolOpt (cfg.enable) "Enable materus overlays";
|
||||
options.materus.profile.nix.enableRegistry = mkBoolOpt (!materusCfg.isHm) "Enable materus nix registry";
|
||||
|
||||
config.nixpkgs.config = lib.mkIf cfg.enable{
|
||||
config.nixpkgs.config = lib.mkIf cfg.enable {
|
||||
allowUnfree = lib.mkDefault true;
|
||||
joypixels.acceptLicense = lib.mkDefault true;
|
||||
firefox.enablePlasmaBrowserIntegration = true;
|
||||
};
|
||||
config.nixpkgs.overlays = lib.mkIf cfg.enableOverlays [materusArg.cfg.configInputs.emacs-overlay.overlay];
|
||||
config.nixpkgs.overlays = lib.mkIf cfg.enableOverlays [ materusArg.cfg.configInputs.emacs-overlay.overlay ];
|
||||
|
||||
config.nix.package = lib.mkDefault pkgs.nixUnstable;
|
||||
config.nix.registry = lib.mkIf config.materus.profile.nix.enableRegistry {
|
||||
nixpkgs-stable = {
|
||||
from = { type = "indirect"; id = "nixpkgs-stable"; };
|
||||
flake = materusCfg.materusFlake.inputs.nixpkgs-stable;
|
||||
};
|
||||
nixpkgs-unstable = {
|
||||
from = { type = "indirect"; id = "nixpkgs-unstable"; };
|
||||
flake = materusCfg.materusFlake.inputs.nixpkgs;
|
||||
};
|
||||
nixpkgs-stable = {
|
||||
from = { type = "indirect"; id = "nixpkgs-stable"; };
|
||||
flake = materusCfg.materusFlake.inputs.nixpkgs-stable;
|
||||
};
|
||||
nixpkgs-unstable = {
|
||||
from = { type = "indirect"; id = "nixpkgs-unstable"; };
|
||||
flake = materusCfg.materusFlake.inputs.nixpkgs;
|
||||
};
|
||||
|
||||
nixpkgs = {
|
||||
from = { type = "indirect"; id = "nixpkgs"; };
|
||||
flake = materusCfg.configInputs.nixpkgs;
|
||||
};
|
||||
nixpkgs = {
|
||||
from = { type = "indirect"; id = "nixpkgs"; };
|
||||
flake = materusCfg.configInputs.nixpkgs;
|
||||
};
|
||||
|
||||
emacs-overlay = {
|
||||
from = { type = "indirect"; id = "emacs-overlay"; };
|
||||
flake = materusCfg.configInputs.emacs-overlay;
|
||||
};
|
||||
emacs-overlay = {
|
||||
from = { type = "indirect"; id = "emacs-overlay"; };
|
||||
flake = materusCfg.configInputs.emacs-overlay;
|
||||
};
|
||||
|
||||
flake-utils = {
|
||||
from = { type = "indirect"; id = "flake-utils"; };
|
||||
flake = materusCfg.configInputs.flake-utils;
|
||||
};
|
||||
flake-utils = {
|
||||
from = { type = "indirect"; id = "flake-utils"; };
|
||||
flake = materusCfg.configInputs.flake-utils;
|
||||
};
|
||||
|
||||
nixos-hardware = {
|
||||
from = { type = "indirect"; id = "nixos-hardware"; };
|
||||
flake = materusCfg.configInputs.nixos-hardware;
|
||||
};
|
||||
nixos-hardware = {
|
||||
from = { type = "indirect"; id = "nixos-hardware"; };
|
||||
flake = materusCfg.configInputs.nixos-hardware;
|
||||
};
|
||||
|
||||
nixerus = {
|
||||
from = { type = "indirect"; id = "nixerus"; };
|
||||
flake = materusCfg.configInputs.nixerus;
|
||||
};
|
||||
nixerus = {
|
||||
from = { type = "indirect"; id = "nixerus"; };
|
||||
flake = materusCfg.configInputs.nixerus;
|
||||
};
|
||||
|
||||
devshell = {
|
||||
from = { type = "indirect"; id = "devshell"; };
|
||||
flake = materusCfg.configInputs.devshell;
|
||||
};
|
||||
devshell = {
|
||||
from = { type = "indirect"; id = "devshell"; };
|
||||
flake = materusCfg.configInputs.devshell;
|
||||
};
|
||||
|
||||
home-manager = {
|
||||
from = { type = "indirect"; id = "home-manager"; };
|
||||
flake = materusCfg.configInputs.home-manager;
|
||||
};
|
||||
home-manager = {
|
||||
from = { type = "indirect"; id = "home-manager"; };
|
||||
flake = materusCfg.configInputs.home-manager;
|
||||
};
|
||||
|
||||
sops-nix = {
|
||||
from = { type = "indirect"; id = "sops-nix"; };
|
||||
flake = materusCfg.configInputs.sops-nix;
|
||||
};
|
||||
sops-nix = {
|
||||
from = { type = "indirect"; id = "sops-nix"; };
|
||||
flake = materusCfg.configInputs.sops-nix;
|
||||
};
|
||||
|
||||
base16 = {
|
||||
from = { type = "indirect"; id = "base16"; };
|
||||
flake = materusCfg.configInputs.base16;
|
||||
};
|
||||
base16 = {
|
||||
from = { type = "indirect"; id = "base16"; };
|
||||
flake = materusCfg.configInputs.base16;
|
||||
};
|
||||
|
||||
git-agecrypt = {
|
||||
from = { type = "indirect"; id = "git-agecrypt"; };
|
||||
flake = materusCfg.configInputs.git-agecrypt;
|
||||
};
|
||||
git-agecrypt = {
|
||||
from = { type = "indirect"; id = "git-agecrypt"; };
|
||||
flake = materusCfg.configInputs.git-agecrypt;
|
||||
};
|
||||
|
||||
nur = {
|
||||
from = { type = "indirect"; id = "nur"; };
|
||||
flake = materusCfg.configInputs.nur;
|
||||
};
|
||||
nur = {
|
||||
from = { type = "indirect"; id = "nur"; };
|
||||
flake = materusCfg.configInputs.nur;
|
||||
};
|
||||
|
||||
|
||||
};
|
||||
|
|
|
@ -16,8 +16,8 @@ let
|
|||
pkgs.noto-fonts-cjk-serif
|
||||
pkgs.wqy_zenhei
|
||||
pkgs.corefonts
|
||||
(pkgs.nerdfonts.override { fonts = [ "FiraCode"]; })
|
||||
|
||||
(pkgs.nerdfonts.override { fonts = [ "FiraCode" ]; })
|
||||
|
||||
] ++ defaultFonts;
|
||||
|
||||
moreFonts = [
|
||||
|
|
|
@ -1,21 +1,21 @@
|
|||
{ config, lib, pkgs, materusArg, ... }:
|
||||
let
|
||||
cfg = config.materus.profile.browser;
|
||||
let
|
||||
cfg = config.materus.profile.browser;
|
||||
in
|
||||
{
|
||||
|
||||
options= let mkBoolOpt = materusArg.pkgs.lib.mkBoolOpt; in{
|
||||
|
||||
options = let mkBoolOpt = materusArg.pkgs.lib.mkBoolOpt; in {
|
||||
materus.profile.browser.firefox.enable = mkBoolOpt config.materus.profile.enableDesktop "Enable Firefox with materus cfg";
|
||||
materus.profile.browser.vivaldi.enable = mkBoolOpt config.materus.profile.enableDesktop "Enable Vivaldi with materus cfg";
|
||||
materus.profile.browser.brave.enable = mkBoolOpt false "Enable Brave with materus cfg";
|
||||
materus.profile.browser.brave.enable = mkBoolOpt false "Enable Brave with materus cfg";
|
||||
|
||||
};
|
||||
#TODO: Make some config
|
||||
config.home.packages = [
|
||||
(lib.mkIf cfg.firefox.enable config.materus.profile.packages.firefox)
|
||||
(lib.mkIf cfg.vivaldi.enable pkgs.vivaldi)
|
||||
(lib.mkIf cfg.brave.enable pkgs.brave)
|
||||
(lib.mkIf cfg.firefox.enable config.materus.profile.packages.firefox)
|
||||
(lib.mkIf cfg.vivaldi.enable pkgs.vivaldi)
|
||||
(lib.mkIf cfg.brave.enable pkgs.brave)
|
||||
];
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -20,9 +20,9 @@ in
|
|||
config =
|
||||
{
|
||||
|
||||
home.packages = (if cfg.enableDesktop then packages.list.desktopApps else []) ++
|
||||
(if cfg.enableNixDevel then packages.list.nixRelated else []) ++
|
||||
(if cfg.enableTerminal then packages.list.terminalApps else []);
|
||||
home.packages = (if cfg.enableDesktop then packages.list.desktopApps else [ ]) ++
|
||||
(if cfg.enableNixDevel then packages.list.nixRelated else [ ]) ++
|
||||
(if cfg.enableTerminal then packages.list.terminalApps else [ ]);
|
||||
#Desktop
|
||||
programs.feh.enable = lib.mkDefault cfg.enableDesktop;
|
||||
|
||||
|
|
|
@ -5,11 +5,11 @@ in
|
|||
{
|
||||
options.materus.profile.editor.code.enable = materusArg.pkgs.lib.mkBoolOpt config.materus.profile.enableDesktop "Enable VSCodium with materus cfg";
|
||||
options.materus.profile.editor.code.fhs.enable = materusArg.pkgs.lib.mkBoolOpt false "Use fhs vscodium";
|
||||
options.materus.profile.editor.code.fhs.packages = lib.mkOption { default = (ps: []);};
|
||||
options.materus.profile.editor.code.fhs.packages = lib.mkOption { default = (ps: [ ]); };
|
||||
config = lib.mkIf cfg.enable {
|
||||
programs.vscode = {
|
||||
enable = lib.mkDefault true;
|
||||
package = lib.mkDefault (if (cfg.fhs.enable) then (pkgs.vscodium.fhsWithPackages cfg.fhs.packages) else pkgs.vscodium);
|
||||
package = lib.mkDefault (if (cfg.fhs.enable) then (pkgs.vscodium.fhsWithPackages cfg.fhs.packages) else pkgs.vscodium);
|
||||
mutableExtensionsDir = lib.mkDefault true;
|
||||
};
|
||||
materus.profile.fonts.enable = lib.mkDefault true;
|
||||
|
|
|
@ -5,4 +5,4 @@
|
|||
./neovim.nix
|
||||
./emacs
|
||||
];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,74 +1,74 @@
|
|||
{ config, lib, pkgs, materusArg, ... }:
|
||||
let
|
||||
configPath = "${materusArg.cfg.path}" + "/extraFiles/config/emacs/";
|
||||
configPath = "${materusArg.cfg.path}" + "/extraFiles/config/emacs/";
|
||||
|
||||
inits = import ./init.nix {path = configPath; inherit pkgs;};
|
||||
packages = epkgs: with epkgs; [
|
||||
load-relative
|
||||
elcord
|
||||
persp-mode
|
||||
dashboard
|
||||
magit
|
||||
helm
|
||||
avy
|
||||
corfu
|
||||
vterm
|
||||
centaur-tabs
|
||||
projectile
|
||||
company
|
||||
clipetty
|
||||
inits = import ./init.nix { path = configPath; inherit pkgs; };
|
||||
packages = epkgs: with epkgs; [
|
||||
load-relative
|
||||
elcord
|
||||
persp-mode
|
||||
dashboard
|
||||
magit
|
||||
helm
|
||||
avy
|
||||
corfu
|
||||
vterm
|
||||
centaur-tabs
|
||||
projectile
|
||||
company
|
||||
clipetty
|
||||
|
||||
treemacs
|
||||
treemacs-nerd-icons
|
||||
treemacs-perspective
|
||||
treemacs-icons-dired
|
||||
treemacs-magit
|
||||
treemacs-projectile
|
||||
tree-edit
|
||||
vertico
|
||||
nerd-icons
|
||||
nerd-icons-completion
|
||||
perspective
|
||||
minions
|
||||
telephone-line
|
||||
rainbow-delimiters
|
||||
use-package
|
||||
treemacs
|
||||
treemacs-nerd-icons
|
||||
treemacs-perspective
|
||||
treemacs-icons-dired
|
||||
treemacs-magit
|
||||
treemacs-projectile
|
||||
tree-edit
|
||||
vertico
|
||||
nerd-icons
|
||||
nerd-icons-completion
|
||||
perspective
|
||||
minions
|
||||
telephone-line
|
||||
rainbow-delimiters
|
||||
use-package
|
||||
|
||||
cmake-mode
|
||||
lsp-mode
|
||||
lsp-java
|
||||
lsp-jedi
|
||||
lsp-haskell
|
||||
lsp-ui
|
||||
lsp-treemacs
|
||||
dap-mode
|
||||
d-mode
|
||||
multiple-cursors
|
||||
org
|
||||
org-rainbow-tags
|
||||
org-roam
|
||||
org-roam-ui
|
||||
org-review
|
||||
markdown-mode
|
||||
json-mode
|
||||
nix-mode
|
||||
|
||||
minimap
|
||||
cmake-mode
|
||||
lsp-mode
|
||||
lsp-java
|
||||
lsp-jedi
|
||||
lsp-haskell
|
||||
lsp-ui
|
||||
lsp-treemacs
|
||||
dap-mode
|
||||
d-mode
|
||||
multiple-cursors
|
||||
org
|
||||
org-rainbow-tags
|
||||
org-roam
|
||||
org-roam-ui
|
||||
org-review
|
||||
markdown-mode
|
||||
json-mode
|
||||
nix-mode
|
||||
|
||||
|
||||
moe-theme
|
||||
doom-themes
|
||||
];
|
||||
minimap
|
||||
|
||||
|
||||
moe-theme
|
||||
doom-themes
|
||||
];
|
||||
|
||||
|
||||
default-config = ''
|
||||
(defvar materus/nix-packages t)
|
||||
(defvar materus/init-from-home nil)
|
||||
(unless materus/init-from-home
|
||||
(message "Config loading not from homeDir, need \"materus/init-from-home\" variable in init.el")
|
||||
${setNixInit}
|
||||
${inits.initText}
|
||||
)
|
||||
(defvar materus/nix-packages t)
|
||||
(defvar materus/init-from-home nil)
|
||||
(unless materus/init-from-home
|
||||
(message "Config loading not from homeDir, need \"materus/init-from-home\" variable in init.el")
|
||||
${setNixInit}
|
||||
${inits.initText}
|
||||
)
|
||||
'';
|
||||
|
||||
emacsPkgs = with pkgs;[
|
||||
|
@ -93,29 +93,29 @@ in
|
|||
|
||||
config = lib.mkIf cfg.enable {
|
||||
home.activation.emacsCompile = lib.hm.dag.entryAfter [ "linkGeneration" ] ''
|
||||
${config.programs.emacs.finalPackage}/bin/emacs --batch \
|
||||
--eval '(setq warning-minimum-log-level :error)' \
|
||||
--eval '(byte-compile-file "${config.xdg.configHome}/emacs/early-init.el")' \
|
||||
--eval '(byte-compile-file "${config.xdg.configHome}/emacs/init.el")'
|
||||
${config.programs.emacs.finalPackage}/bin/emacs --batch \
|
||||
--eval '(setq warning-minimum-log-level :error)' \
|
||||
--eval '(byte-compile-file "${config.xdg.configHome}/emacs/early-init.el")' \
|
||||
--eval '(byte-compile-file "${config.xdg.configHome}/emacs/init.el")'
|
||||
'';
|
||||
xdg.configFile."emacs/init.el".text = ''
|
||||
(defvar materus/nix-packages nil)
|
||||
(defvar materus/init-from-home t)
|
||||
(setq-default materus/init-from-home t)
|
||||
(defvar materus/nix-packages nil)
|
||||
(defvar materus/init-from-home t)
|
||||
(setq-default materus/init-from-home t)
|
||||
|
||||
${setNixInit}
|
||||
${inits.initText}
|
||||
${setNixInit}
|
||||
${inits.initText}
|
||||
'';
|
||||
|
||||
xdg.configFile."emacs/early-init.el".text = ''
|
||||
${inits.earlyInitText}
|
||||
${inits.earlyInitText}
|
||||
'';
|
||||
|
||||
programs.emacs = {
|
||||
enable = true;
|
||||
package = with pkgs; lib.mkDefault (emacs29.override { withX = true; withGTK3 = true; withAlsaLib = true; withGconf = true; withImageMagick = true; withXwidgets = true; });
|
||||
extraPackages = epkgs: ((packages epkgs));
|
||||
extraConfig = default-config;
|
||||
extraConfig = default-config;
|
||||
};
|
||||
|
||||
};
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{path, pkgs}:
|
||||
{ path, pkgs }:
|
||||
{
|
||||
|
||||
earlyInitText = ''
|
||||
${builtins.readFile (path + "early-init.el")}
|
||||
${builtins.readFile (path + "early-init.el")}
|
||||
'';
|
||||
initText = ''
|
||||
(defvar materus/init-from-home nil)
|
||||
|
@ -13,5 +13,5 @@
|
|||
${builtins.readFile (path + "packages.el")}
|
||||
${builtins.readFile (path + "init.el")}
|
||||
'';
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ config, lib, pkgs, materusArg, ... }:
|
||||
let
|
||||
cfg = config.materus.profile.editor.neovim;
|
||||
cfg = config.materus.profile.editor.neovim;
|
||||
in
|
||||
{
|
||||
options.materus.profile.editor.neovim.enable = materusArg.pkgs.lib.mkBoolOpt config.materus.profile.enableTerminalExtra "Enable neovim with materus cfg";
|
||||
|
@ -14,21 +14,21 @@ in
|
|||
|
||||
|
||||
extraConfig = ''
|
||||
set number
|
||||
set number
|
||||
'';
|
||||
|
||||
|
||||
plugins = with pkgs.vimPlugins;[
|
||||
syntastic
|
||||
|
||||
vim-fugitive
|
||||
vim-airline
|
||||
vim-nix
|
||||
plugins = with pkgs.vimPlugins;[
|
||||
syntastic
|
||||
|
||||
nvim-fzf
|
||||
nvim-treesitter.withAllGrammars
|
||||
|
||||
];
|
||||
vim-fugitive
|
||||
vim-airline
|
||||
vim-nix
|
||||
|
||||
nvim-fzf
|
||||
nvim-treesitter.withAllGrammars
|
||||
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -5,9 +5,9 @@ let
|
|||
in
|
||||
{
|
||||
options.materus.profile.fonts.enable = materusArg.pkgs.lib.mkBoolOpt config.materus.profile.enableDesktop "Enable materus font settings";
|
||||
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
fonts.fontconfig.enable = lib.mkDefault true;
|
||||
home.packages = packages.list.fonts;
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,20 +1,20 @@
|
|||
{ config, pkgs, lib, materusArg, ... }:
|
||||
let
|
||||
cfg = config.materus.profile.bash;
|
||||
let
|
||||
cfg = config.materus.profile.bash;
|
||||
in
|
||||
{
|
||||
options.materus.profile.bash.enable = materusArg.pkgs.lib.mkBoolOpt config.materus.profile.enableTerminal "Enable materus bash config";
|
||||
options.materus.profile.bash.enable = materusArg.pkgs.lib.mkBoolOpt config.materus.profile.enableTerminal "Enable materus bash config";
|
||||
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
config = lib.mkIf cfg.enable {
|
||||
|
||||
programs.bash = {
|
||||
enable = lib.mkDefault true;
|
||||
enableCompletion = lib.mkDefault true;
|
||||
enableVteIntegration = lib.mkDefault true;
|
||||
historyControl = lib.mkDefault ["erasedups" "ignorespace"];
|
||||
shellOptions = lib.mkDefault [ "autocd" "checkwinsize" "cmdhist" "expand_aliases" "extglob" "globstar" "checkjobs" "nocaseglob" ];
|
||||
};
|
||||
programs.bash = {
|
||||
enable = lib.mkDefault true;
|
||||
enableCompletion = lib.mkDefault true;
|
||||
enableVteIntegration = lib.mkDefault true;
|
||||
historyControl = lib.mkDefault [ "erasedups" "ignorespace" ];
|
||||
shellOptions = lib.mkDefault [ "autocd" "checkwinsize" "cmdhist" "expand_aliases" "extglob" "globstar" "checkjobs" "nocaseglob" ];
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
|
||||
imports = [
|
||||
imports = [
|
||||
./zsh.nix
|
||||
./bash.nix
|
||||
./fish.nix
|
||||
./starship.nix
|
||||
];
|
||||
}
|
||||
];
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ config, pkgs, lib, materusArg, ... }:
|
||||
let
|
||||
cfg = config.materus.profile.fish;
|
||||
let
|
||||
cfg = config.materus.profile.fish;
|
||||
in
|
||||
{
|
||||
options.materus.profile.fish.enable = materusArg.pkgs.lib.mkBoolOpt config.materus.profile.enableTerminalExtra "Enable materus fish config";
|
||||
|
@ -9,4 +9,4 @@ in
|
|||
enable = lib.mkDefault true;
|
||||
};
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -17,7 +17,7 @@ in
|
|||
|
||||
format = "$username@$hostname$all";
|
||||
right_format = "$cmd_duration $time";
|
||||
|
||||
|
||||
time = {
|
||||
disabled = false;
|
||||
style = "bold bright-black";
|
||||
|
@ -28,8 +28,8 @@ in
|
|||
shell = {
|
||||
disabled = false;
|
||||
fish_indicator = "fish";
|
||||
bash_indicator= "bash";
|
||||
zsh_indicator= "zsh";
|
||||
bash_indicator = "bash";
|
||||
zsh_indicator = "zsh";
|
||||
style = "blue bold";
|
||||
};
|
||||
|
||||
|
|
|
@ -2,8 +2,9 @@
|
|||
let
|
||||
|
||||
relToDotDir = file: (lib.optionalString (config.programs.zsh.dotDir != null) (config.programs.zsh.dotDir + "/")) + file;
|
||||
pluginsDir = if config.programs.zsh.dotDir != null then
|
||||
relToDotDir "plugins" else ".zsh/plugins";
|
||||
pluginsDir =
|
||||
if config.programs.zsh.dotDir != null then
|
||||
relToDotDir "plugins" else ".zsh/plugins";
|
||||
|
||||
|
||||
|
||||
|
@ -14,16 +15,16 @@ let
|
|||
|
||||
makeEnv = name: val: ''${name}=''${${name}:-"${val}"}'';
|
||||
makeIfVar = var: val: ret: ''
|
||||
if [ ''$${var} = "${val}" ]; then
|
||||
${ret}
|
||||
fi'';
|
||||
if [ ''$${var} = "${val}" ]; then
|
||||
${ret}
|
||||
fi'';
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
makePlugin = nameArg: fileArg: srcArg: rec {
|
||||
makePlugin = nameArg: fileArg: srcArg: rec {
|
||||
name = nameArg;
|
||||
src = srcArg;
|
||||
path = pluginsDir + "/" + name;
|
||||
|
@ -33,20 +34,20 @@ let
|
|||
|
||||
extraPlugins = {
|
||||
powerlevel10k = makePlugin "powerlevel10k" "powerlevel10k.zsh-theme" (pkgs.fetchFromGitHub {
|
||||
owner = "romkatv";
|
||||
repo = "powerlevel10k";
|
||||
rev = "v1.20.0";
|
||||
sha256 = "sha256-ES5vJXHjAKw/VHjWs8Au/3R+/aotSbY7PWnWAMzCR8E=";
|
||||
});
|
||||
owner = "romkatv";
|
||||
repo = "powerlevel10k";
|
||||
rev = "v1.20.0";
|
||||
sha256 = "sha256-ES5vJXHjAKw/VHjWs8Au/3R+/aotSbY7PWnWAMzCR8E=";
|
||||
});
|
||||
|
||||
};
|
||||
in
|
||||
{
|
||||
options.materus.profile.zsh.enable = materusArg.pkgs.lib.mkBoolOpt config.materus.profile.enableTerminalExtra "Enable materus zsh config";
|
||||
options.materus.profile.zsh.prompt = lib.mkOption {
|
||||
type = lib.types.enum ["p10k" "starship"];
|
||||
example = "p10k";
|
||||
default = "p10k";
|
||||
type = lib.types.enum [ "p10k" "starship" ];
|
||||
example = "p10k";
|
||||
default = "p10k";
|
||||
};
|
||||
|
||||
|
||||
|
@ -54,8 +55,8 @@ in
|
|||
home.packages = [
|
||||
pkgs.ripgrep
|
||||
];
|
||||
|
||||
home.file = builtins.foldl' (a: b: a // b) {} (builtins.map (plugin: {${plugin.path}.source = plugin.src;})(builtins.attrValues extraPlugins));
|
||||
|
||||
home.file = builtins.foldl' (a: b: a // b) { } (builtins.map (plugin: { ${plugin.path}.source = plugin.src; }) (builtins.attrValues extraPlugins));
|
||||
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
|
@ -68,8 +69,8 @@ in
|
|||
|
||||
|
||||
envExtra = ''
|
||||
${makeEnv "__MATERUS_HM_ZSH" "1"}
|
||||
${makeEnv "__MATERUS_HM_ZSH_PROMPT" cfg.prompt}
|
||||
${makeEnv "__MATERUS_HM_ZSH" "1"}
|
||||
${makeEnv "__MATERUS_HM_ZSH_PROMPT" cfg.prompt}
|
||||
'';
|
||||
|
||||
|
||||
|
@ -88,7 +89,7 @@ in
|
|||
|
||||
plugins = [
|
||||
];
|
||||
|
||||
|
||||
history = {
|
||||
extended = true;
|
||||
save = 100000;
|
||||
|
@ -106,8 +107,8 @@ in
|
|||
bindkey -r "^["
|
||||
bindkey ";5C" forward-word
|
||||
bindkey ";5D" backward-word
|
||||
'' +
|
||||
makeIfVar "__MATERUS_HM_ZSH_PROMPT" "p10k" ''
|
||||
'' +
|
||||
makeIfVar "__MATERUS_HM_ZSH_PROMPT" "p10k" ''
|
||||
if zmodload zsh/terminfo && (( terminfo[colors] >= 256 )); then
|
||||
[[ ! -f ${p10kcfg}/fullcolor.zsh ]] || source ${p10kcfg}/fullcolor.zsh
|
||||
else
|
||||
|
@ -117,7 +118,7 @@ in
|
|||
|
||||
};
|
||||
|
||||
programs.starship.enableZshIntegration = lib.mkForce false;
|
||||
programs.starship.enableZshIntegration = lib.mkForce false;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
|
||||
./games
|
||||
];
|
||||
/*
|
||||
users.users.nixos-rebuild = {
|
||||
/*
|
||||
users.users.nixos-rebuild = {
|
||||
#isSystemUser = true;
|
||||
isNormalUser = true;
|
||||
group = "nixos-rebuild";
|
||||
|
@ -15,9 +15,9 @@
|
|||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPEDY+H8Hc/RSLE064AAh8IojvqxPd8BE5gec2aOfYMh materus@podkos.pl"
|
||||
];
|
||||
home = "/tmp/nixos-rebuild";
|
||||
};
|
||||
users.groups.nixos-rebuild = { };
|
||||
security.sudo.extraRules = [
|
||||
};
|
||||
users.groups.nixos-rebuild = { };
|
||||
security.sudo.extraRules = [
|
||||
{
|
||||
users = [ "nixos-rebuild" ];
|
||||
commands = let path = "/run/current-system/sw/bin/"; in
|
||||
|
@ -56,7 +56,7 @@
|
|||
|
||||
|
||||
}
|
||||
];
|
||||
];
|
||||
*/
|
||||
}
|
||||
|
|
@ -10,14 +10,14 @@ in
|
|||
|
||||
fonts.fonts = packages.list.fonts ++ packages.list.moreFonts;
|
||||
fonts.enableDefaultFonts = lib.mkForce true;
|
||||
|
||||
fonts.fontconfig.enable = lib.mkForce true;
|
||||
fonts.fontconfig.cache32Bit = lib.mkForce true;
|
||||
|
||||
fonts.fontconfig.defaultFonts.sansSerif = [ "Noto Sans" "DejaVu Sans" "WenQuanYi Zen Hei" "Noto Color Emoji" ];
|
||||
fonts.fontconfig.defaultFonts.serif = [ "Noto Serif" "DejaVu Serif" "WenQuanYi Zen Hei" "Noto Color Emoji" ];
|
||||
fonts.fontconfig.defaultFonts.emoji = [ "Noto Color Emoji" "OpenMoji Color" ];
|
||||
fonts.fontconfig.defaultFonts.monospace = [ "FiraCode Nerd Font Mono" "Noto Sans Mono" "WenQuanYi Zen Hei Mono" ];
|
||||
fonts.fontconfig.enable = lib.mkForce true;
|
||||
fonts.fontconfig.cache32Bit = lib.mkForce true;
|
||||
|
||||
fonts.fontconfig.defaultFonts.sansSerif = [ "Noto Sans" "DejaVu Sans" "WenQuanYi Zen Hei" "Noto Color Emoji" ];
|
||||
fonts.fontconfig.defaultFonts.serif = [ "Noto Serif" "DejaVu Serif" "WenQuanYi Zen Hei" "Noto Color Emoji" ];
|
||||
fonts.fontconfig.defaultFonts.emoji = [ "Noto Color Emoji" "OpenMoji Color" ];
|
||||
fonts.fontconfig.defaultFonts.monospace = [ "FiraCode Nerd Font Mono" "Noto Sans Mono" "WenQuanYi Zen Hei Mono" ];
|
||||
|
||||
fonts.fontDir.enable = lib.mkForce true;
|
||||
};
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{ config, pkgs, ... }:
|
||||
{
|
||||
{
|
||||
imports = [
|
||||
./steam.nix
|
||||
];
|
||||
|
|
|
@ -1,24 +1,24 @@
|
|||
{ config, pkgs, lib, materusArg, inputs, ... }:
|
||||
let
|
||||
optHip = pkgs.stdenv.mkDerivation rec {
|
||||
pname = "optHip";
|
||||
version = pkgs.rocmPackages.clr.version;
|
||||
pname = "optHip";
|
||||
version = pkgs.rocmPackages.clr.version;
|
||||
|
||||
|
||||
dontFixup = true;
|
||||
dontBuild = true;
|
||||
dontPatchELF = true;
|
||||
dontUnpack = true;
|
||||
sourceRoot = ".";
|
||||
dontFixup = true;
|
||||
dontBuild = true;
|
||||
dontPatchELF = true;
|
||||
dontUnpack = true;
|
||||
sourceRoot = ".";
|
||||
|
||||
buildInputs = [
|
||||
pkgs.rocmPackages.clr
|
||||
];
|
||||
buildInputs = [
|
||||
pkgs.rocmPackages.clr
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/opt/rocm
|
||||
ln -s ${pkgs.rocmPackages.clr} $out/opt/rocm/hip
|
||||
'';
|
||||
installPhase = ''
|
||||
mkdir -p $out/opt/rocm
|
||||
ln -s ${pkgs.rocmPackages.clr} $out/opt/rocm/hip
|
||||
'';
|
||||
};
|
||||
|
||||
steamPkg = pkgs.steam.override {
|
||||
|
@ -83,7 +83,7 @@ let
|
|||
pkgs.fontconfig
|
||||
pkgs.libxcrypt
|
||||
pkgs.gnutls
|
||||
pkgs.samba
|
||||
pkgs.samba
|
||||
pkgs.tdb
|
||||
pkgs.jemalloc
|
||||
pkgs.gperftools
|
||||
|
@ -109,7 +109,7 @@ in
|
|||
description = "Package used by steam";
|
||||
};
|
||||
options.materus.profile.steam.extraPkgs = lib.mkOption {
|
||||
default = [];
|
||||
default = [ ];
|
||||
description = "Extra packages for steam";
|
||||
};
|
||||
|
||||
|
|
|
@ -16,7 +16,7 @@ in
|
|||
"https://cache.nixos.org/"
|
||||
"https://nixerus.cachix.org/"
|
||||
];
|
||||
trusted-public-keys = [ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" "nixerus.cachix.org-1:2x7sIG7y1vAoxc8BNRJwsfapZsiX4hIl4aTi9V5ZDdE="];
|
||||
trusted-public-keys = [ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" "nixerus.cachix.org-1:2x7sIG7y1vAoxc8BNRJwsfapZsiX4hIl4aTi9V5ZDdE=" ];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue