rebuild not working
This commit is contained in:
parent
46d79f6f18
commit
f514c9b1b4
13 changed files with 280 additions and 12 deletions
|
@ -62,6 +62,7 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
services = {
|
services = {
|
||||||
|
locate.enable = true;
|
||||||
media.mpd = {
|
media.mpd = {
|
||||||
enable = true;
|
enable = true;
|
||||||
musicDirectory = "/home/${config.modules.other.system.username}/Nextcloud/Media/Music";
|
musicDirectory = "/home/${config.modules.other.system.username}/Nextcloud/Media/Music";
|
||||||
|
|
|
@ -95,7 +95,7 @@ in {
|
||||||
texliveFull
|
texliveFull
|
||||||
tldr
|
tldr
|
||||||
thunderbird
|
thunderbird
|
||||||
tor-browser-bundle-bin
|
tor-browser
|
||||||
trash-cli
|
trash-cli
|
||||||
tree
|
tree
|
||||||
ttyper
|
ttyper
|
||||||
|
|
|
@ -10,5 +10,6 @@ _: {
|
||||||
./runners
|
./runners
|
||||||
./styling
|
./styling
|
||||||
./options
|
./options
|
||||||
|
#./system/nix/module.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,7 +21,7 @@ in {
|
||||||
gamescopeSession.enable = mkIf cfg.gamescope true;
|
gamescopeSession.enable = mkIf cfg.gamescope true;
|
||||||
};
|
};
|
||||||
programs.gamemode.enable = true;
|
programs.gamemode.enable = true;
|
||||||
environment.systemPackages = [pkgs.protonup];
|
environment.systemPackages = [pkgs.protonup-ng];
|
||||||
environment.sessionVariables = {
|
environment.sessionVariables = {
|
||||||
STEAM_EXTRA_COMPAT_TOOLS_PATHS = "/home/${username}/.steam/root/compatibilitytoolds.d";
|
STEAM_EXTRA_COMPAT_TOOLS_PATHS = "/home/${username}/.steam/root/compatibilitytoolds.d";
|
||||||
};
|
};
|
||||||
|
|
|
@ -2,7 +2,9 @@
|
||||||
inherit (lib.options) mkOption mkEnableOption;
|
inherit (lib.options) mkOption mkEnableOption;
|
||||||
inherit (lib) types;
|
inherit (lib) types;
|
||||||
in {
|
in {
|
||||||
options.modules.usrEnv.services.media = {
|
options.modules.usrEnv.services = {
|
||||||
|
locate.enable = mkEnableOption "Locate service";
|
||||||
|
media = {
|
||||||
mpd = {
|
mpd = {
|
||||||
enable = mkEnableOption "mpd service";
|
enable = mkEnableOption "mpd service";
|
||||||
musicDirectory = mkOption {
|
musicDirectory = mkOption {
|
||||||
|
@ -11,4 +13,5 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1 +1,12 @@
|
||||||
_: {imports = [./pipewire.nix ./ssh.nix ./greetd.nix ./dunst.nix ./mpd.nix ./firewall.nix ./vpn.nix];}
|
_: {
|
||||||
|
imports = [
|
||||||
|
./pipewire.nix
|
||||||
|
./locate.nix
|
||||||
|
./ssh.nix
|
||||||
|
./greetd.nix
|
||||||
|
./dunst.nix
|
||||||
|
./mpd.nix
|
||||||
|
./firewall.nix
|
||||||
|
./vpn.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
19
modules/services/locate.nix
Normal file
19
modules/services/locate.nix
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
cfg = config.modules.usrEnv.services.locate;
|
||||||
|
inherit (lib) mkIf;
|
||||||
|
in {
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
environment.systemPackages = with pkgs; [plocate];
|
||||||
|
services.locate = {
|
||||||
|
enable = true;
|
||||||
|
interval = "hourly";
|
||||||
|
package = pkgs.plocate;
|
||||||
|
localuser = null;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -51,7 +51,7 @@ in {
|
||||||
# };
|
# };
|
||||||
|
|
||||||
emoji = {
|
emoji = {
|
||||||
package = pkgs.noto-fonts-emoji;
|
package = pkgs.noto-fonts-color-emoji;
|
||||||
name = "Noto Color Emoji";
|
name = "Noto Color Emoji";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
28
modules/system/nix/documentation.nix
Normal file
28
modules/system/nix/documentation.nix
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
{
|
||||||
|
# faster rebuilding
|
||||||
|
documentation = {
|
||||||
|
# whether to enable the `doc` output of packages
|
||||||
|
# generally in ${pkg}/share/ as plaintext or html
|
||||||
|
# # can shave off a few megabytes
|
||||||
|
# doc.enable = false;
|
||||||
|
#
|
||||||
|
# # whether to install the `info` command and the `info`
|
||||||
|
# # output of packages
|
||||||
|
# info.enable = false;
|
||||||
|
#
|
||||||
|
# man = {
|
||||||
|
# # Whether to install manual pages
|
||||||
|
# # this means packages that provide a `man` output will have said output
|
||||||
|
# # included in the final closure
|
||||||
|
# enable = true;
|
||||||
|
#
|
||||||
|
# # Whether to generate the manual page index caches
|
||||||
|
# # if true, it becomes possible to search for a page or keyword
|
||||||
|
# # using utilities like apropos(1) and the -k option of man(1).
|
||||||
|
# generateCaches = true;
|
||||||
|
#
|
||||||
|
# # Whether to enable mandoc as the default man page viewer.
|
||||||
|
# mandoc.enable = false; # my default manpage viewer is Neovim, so this isn't necessary
|
||||||
|
# };
|
||||||
|
};
|
||||||
|
}
|
152
modules/system/nix/module.nix
Normal file
152
modules/system/nix/module.nix
Normal file
|
@ -0,0 +1,152 @@
|
||||||
|
{pkgs, ...}: {
|
||||||
|
imports = [
|
||||||
|
./documentation.nix # nixos documentation
|
||||||
|
./nixpkgs.nix # global nixpkgs configuration.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
nix = {
|
||||||
|
# Lix, Nix but gay!
|
||||||
|
# package = pkgs.lix;
|
||||||
|
#
|
||||||
|
# # Run the Nix daemon on lowest possible priority so that my system
|
||||||
|
# # stays responsive during demanding tasks such as GC and builds.
|
||||||
|
# # This is especially useful while auto-gc and auto-upgrade are enabled
|
||||||
|
# # as they can be quite demanding on the CPU.
|
||||||
|
# daemonCPUSchedPolicy = "idle";
|
||||||
|
# daemonIOSchedClass = "idle";
|
||||||
|
# daemonIOSchedPriority = 7;
|
||||||
|
#
|
||||||
|
# # Collect garbage
|
||||||
|
# gc = {
|
||||||
|
# automatic = true;
|
||||||
|
# dates = "20:00";
|
||||||
|
# options = "--delete-older-than 7d";
|
||||||
|
# persistent = false; # don't try to catch up on missed GC runs
|
||||||
|
# };
|
||||||
|
#
|
||||||
|
# # Automatically optimize nix store by removing hard links
|
||||||
|
# # do it after the gc.
|
||||||
|
# optimise = {
|
||||||
|
# automatic = true;
|
||||||
|
# dates = ["21:00"];
|
||||||
|
# };
|
||||||
|
#
|
||||||
|
settings = {
|
||||||
|
# Tell nix to use the xdg spec for base directories
|
||||||
|
# while transitioning, any state must be carried over
|
||||||
|
# manually, as Nix won't do it for us.
|
||||||
|
# use-xdg-base-directories = true;
|
||||||
|
#
|
||||||
|
# # Automatically optimise symlinks
|
||||||
|
# auto-optimise-store = true;
|
||||||
|
#
|
||||||
|
# # Allow sudo users to mark the following values as trusted
|
||||||
|
# allowed-users = ["root" "@wheel" "nix-builder"];
|
||||||
|
#
|
||||||
|
# # Only allow sudo users to manage the nix store
|
||||||
|
# trusted-users = ["root" "@wheel" "nix-builder"];
|
||||||
|
#
|
||||||
|
# # Let the system decide the number of max jobs
|
||||||
|
# # based on available system specs. Usually this is
|
||||||
|
# # the same as the number of cores your CPU has.
|
||||||
|
# max-jobs = "auto";
|
||||||
|
#
|
||||||
|
# # Always build inside sandboxed environments
|
||||||
|
# sandbox = true;
|
||||||
|
# sandbox-fallback = false;
|
||||||
|
#
|
||||||
|
# # Continue building derivations even if one fails
|
||||||
|
# keep-going = true;
|
||||||
|
#
|
||||||
|
# # Fallback to local builds after remote builders are unavailable.
|
||||||
|
# # Setting this too low on a slow network may cause remote builders
|
||||||
|
# # to be discarded before a connection can be established.
|
||||||
|
# connect-timeout = 5;
|
||||||
|
#
|
||||||
|
# # If we haven't received data for >= 20s, retry the download
|
||||||
|
# stalled-download-timeout = 20;
|
||||||
|
#
|
||||||
|
# # Show more logs when a build fails and decides to display
|
||||||
|
# # a bunch of lines. `nix log` would normally provide more
|
||||||
|
# # information, but this may save us some time and keystrokes.
|
||||||
|
# log-lines = 30;
|
||||||
|
#
|
||||||
|
# # Extra features of Nix that are considered unstable
|
||||||
|
# # and experimental. By default we should always include
|
||||||
|
# # `flakes` and `nix-command`, while others are usually
|
||||||
|
# optional.
|
||||||
|
extra-experimental-features = [
|
||||||
|
"flakes" # flakes
|
||||||
|
"nix-command" # experimental nix commands
|
||||||
|
"cgroups" # allow nix to execute builds inside cgroups
|
||||||
|
];
|
||||||
|
|
||||||
|
# Ensures that the result of Nix expressions is fully determined by
|
||||||
|
# # explicitly declared inputs, and not influenced by external state.
|
||||||
|
# # In other words, fully stateless evaluation by Nix at all times.
|
||||||
|
# # pure-eval = true;
|
||||||
|
#
|
||||||
|
# # Don't warn me that my git tree is dirty, I know.
|
||||||
|
# warn-dirty = false;
|
||||||
|
#
|
||||||
|
# # Maximum number of parallel TCP connections
|
||||||
|
# # used to fetch imports and binary caches.
|
||||||
|
# # 0 means no limit, default is 25.
|
||||||
|
# http-connections = 50; # lower values fare better on slow connections
|
||||||
|
#
|
||||||
|
# # Whether to accept nix configuration from a flake
|
||||||
|
# # without displaying a Y/N prompt. For those obtuse
|
||||||
|
# # enough to keep this true, I wish the best of luck.
|
||||||
|
# # tl;dr: this is a security vulnerability.
|
||||||
|
# accept-flake-config = false;
|
||||||
|
#
|
||||||
|
# # Whether to execute builds inside cgroups. cgroups are
|
||||||
|
# # "a Linux kernel feature that limits, accounts for, and
|
||||||
|
# # isolates the resource usage (CPU, memory, disk I/O, etc.)
|
||||||
|
# # of a collection of processes."
|
||||||
|
# # See:
|
||||||
|
# # <https://en.wikipedia.org/wiki/Cgroups>
|
||||||
|
# # use-cgroups = pkgs.stdenv.isLinux; # only supported on Linux
|
||||||
|
#
|
||||||
|
# # for direnv GC roots
|
||||||
|
# keep-derivations = true;
|
||||||
|
# keep-outputs = true;
|
||||||
|
#
|
||||||
|
# # Use binary cache, this is not Gentoo
|
||||||
|
# # external builders can also pick up those substituters
|
||||||
|
# builders-use-substitutes = true;
|
||||||
|
|
||||||
|
# Substituters to pull from. While sigs are disabled, we must
|
||||||
|
# make sure the substituters listed here are trusted.
|
||||||
|
substituters = [
|
||||||
|
"https://cache.nixos.org" # funny binary cache
|
||||||
|
"https://cache.privatevoid.net" # for nix-super
|
||||||
|
"https://nix-community.cachix.org" # nix-community cache
|
||||||
|
"https://hyprland.cachix.org" # hyprland
|
||||||
|
"https://nixpkgs-unfree.cachix.org" # unfree-package cache
|
||||||
|
"https://anyrun.cachix.org" # anyrun program launcher
|
||||||
|
"https://neovim-flake.cachix.org" # a cache for my neovim flake
|
||||||
|
"https://cache.garnix.io" # garnix binary cache, hosts prismlauncher
|
||||||
|
];
|
||||||
|
|
||||||
|
trusted-public-keys = [
|
||||||
|
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
||||||
|
"cache.privatevoid.net:SErQ8bvNWANeAvtsOESUwVYr2VJynfuc9JRwlzTTkVg="
|
||||||
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||||||
|
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
|
||||||
|
"nixpkgs-unfree.cachix.org-1:hqvoInulhbV4nJ9yJOEr+4wxhDV4xq2d1DK7S6Nj6rs="
|
||||||
|
"anyrun.cachix.org-1:pqBobmOjI7nKlsUMV25u9QHa9btJK65/C8vnO3p346s="
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# By default nix-gc makes no effort to respect battery life by avoiding
|
||||||
|
# GC runs on battery and fully commits a few cores to collecting garbage.
|
||||||
|
# This will drain the battery faster than you can say "Nix, what the hell?"
|
||||||
|
# and contribute heavily to you wanting to get a new desktop.
|
||||||
|
# For those curious (such as myself) desktops are always seen as "AC powered"
|
||||||
|
# so the system will not fail to fire if you are on a desktop system.
|
||||||
|
# systemd.services.nix-gc = {
|
||||||
|
# unitConfig.ConditionACPower = true;
|
||||||
|
# };
|
||||||
|
}
|
45
modules/system/nix/nixpkgs.nix
Normal file
45
modules/system/nix/nixpkgs.nix
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
{
|
||||||
|
# Global nixpkgs configuration. This is ignored if nixpkgs.pkgs is set
|
||||||
|
# which is a case that should be avoided. Everything that is set to configure
|
||||||
|
# nixpkgs must go here.
|
||||||
|
nixpkgs = {
|
||||||
|
# Configuration reference:
|
||||||
|
# <https://nixos.org/manual/nixpkgs/unstable/#chap-packageconfig>
|
||||||
|
# config = {
|
||||||
|
# # Allow broken packages to be built. Setting this to false means packages
|
||||||
|
# # will refuse to evaluate sometimes, but only if they have been marked as
|
||||||
|
# # broken for a specific reason. At that point we can either try to solve
|
||||||
|
# # the breakage, or get rid of the package entirely.
|
||||||
|
# allowBroken = false;
|
||||||
|
# allowUnsupportedSystem = true;
|
||||||
|
#
|
||||||
|
# # Really a pain in the ass to deal with when disabled. True means
|
||||||
|
# # we are able to build unfree packages without explicitly allowing
|
||||||
|
# # each unfree package.
|
||||||
|
# allowUnfree = true;
|
||||||
|
#
|
||||||
|
# # Default to none, add more as necessary. This is usually where
|
||||||
|
# # electron packages go when they reach EOL.
|
||||||
|
# permittedInsecurePackages = [];
|
||||||
|
#
|
||||||
|
# # Nixpkgs sets internal package aliases to ease migration from other
|
||||||
|
# # distributions easier, or for convenience's sake. Even though the manual
|
||||||
|
# # and the description for this option recommends this to be true, I prefer
|
||||||
|
# # explicit naming conventions, i.e., no aliases.
|
||||||
|
# allowAliases = true;
|
||||||
|
#
|
||||||
|
# # Enable parallel building by default. This, in theory, should speed up building
|
||||||
|
# # derivations, especially rust ones. However setting this to true causes a mass rebuild
|
||||||
|
# # of the *entire* system closure, so it must be handled with proper care.
|
||||||
|
# enableParallelBuildingByDefault = false;
|
||||||
|
#
|
||||||
|
# # List of derivation warnings to display while rebuilding.
|
||||||
|
# # See: <https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/check-meta.nix>
|
||||||
|
# # NOTE: "maintainerless" can be added to emit warnings
|
||||||
|
# # about packages without maintainers but it seems to me
|
||||||
|
# # like there are more packages without maintainers than
|
||||||
|
# # with maintainers, so it's disabled for the time being.
|
||||||
|
# showDerivationWarnings = [];
|
||||||
|
# };
|
||||||
|
};
|
||||||
|
}
|
|
@ -172,7 +172,7 @@ in {
|
||||||
];
|
];
|
||||||
# Hyprland anomations, using the above bezier curves
|
# Hyprland anomations, using the above bezier curves
|
||||||
animations = {
|
animations = {
|
||||||
enabled = false;
|
enabled = true;
|
||||||
animation = [
|
animation = [
|
||||||
"windows, 1, 4, dupa, popin"
|
"windows, 1, 4, dupa, popin"
|
||||||
"windowsOut, 1, 4, dupa, slide"
|
"windowsOut, 1, 4, dupa, slide"
|
||||||
|
@ -359,6 +359,12 @@ in {
|
||||||
"[workspace special:pipewire;silent;tile] ${pkgs.pavucontrol}/bin/pavucontrol"
|
"[workspace special:pipewire;silent;tile] ${pkgs.pavucontrol}/bin/pavucontrol"
|
||||||
# "${pkgs.networkmanagerapplet}/bin/nm-applet --indicator"
|
# "${pkgs.networkmanagerapplet}/bin/nm-applet --indicator"
|
||||||
];
|
];
|
||||||
|
plugin = {
|
||||||
|
split-monitor-workspaces = {
|
||||||
|
keep-focued = true;
|
||||||
|
count = 10;
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -2,11 +2,13 @@
|
||||||
fonts = {
|
fonts = {
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
material-design-icons
|
material-design-icons
|
||||||
|
xfce.xfce4-icon-theme
|
||||||
|
papirus-icon-theme
|
||||||
(nerdfonts.override {fonts = ["JetBrainsMono" "ComicShannsMono"];})
|
(nerdfonts.override {fonts = ["JetBrainsMono" "ComicShannsMono"];})
|
||||||
noto-fonts
|
noto-fonts
|
||||||
noto-fonts-cjk-sans
|
noto-fonts-cjk-sans
|
||||||
noto-fonts-cjk-serif
|
noto-fonts-cjk-serif
|
||||||
noto-fonts-emoji
|
noto-fonts-color-emoji
|
||||||
corefonts
|
corefonts
|
||||||
];
|
];
|
||||||
# What does this do?
|
# What does this do?
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue