118 lines
3.1 KiB
Nix
118 lines
3.1 KiB
Nix
{ config, pkgs, lib, ... }:
|
|
|
|
let
|
|
user = "dekker1";
|
|
xdg_configHome = "/home/${user}/.config";
|
|
shared-programs = import ../shared/home-manager.nix { inherit config pkgs lib; };
|
|
shared-files = import ../shared/files.nix { inherit config pkgs; };
|
|
|
|
polybar-user_modules = builtins.readFile (pkgs.substituteAll {
|
|
src = ./config/polybar/user_modules.ini;
|
|
packages = "${xdg_configHome}/polybar/bin/check-nixos-updates.sh";
|
|
searchpkgs = "${xdg_configHome}/polybar/bin/search-nixos-updates.sh";
|
|
launcher = "${xdg_configHome}/polybar/bin/launcher.sh";
|
|
powermenu = "${xdg_configHome}/rofi/bin/powermenu.sh";
|
|
calendar = "${xdg_configHome}/polybar/bin/popup-calendar.sh";
|
|
});
|
|
|
|
polybar-config = pkgs.substituteAll {
|
|
src = ./config/polybar/config.ini;
|
|
font0 = "DejaVu Sans:size=12;3";
|
|
font1 = "feather:size=12;3"; # dustinlyons/nixpkgs
|
|
};
|
|
|
|
polybar-modules = builtins.readFile ./config/polybar/modules.ini;
|
|
polybar-bars = builtins.readFile ./config/polybar/bars.ini;
|
|
polybar-colors = builtins.readFile ./config/polybar/colors.ini;
|
|
|
|
in
|
|
{
|
|
home = {
|
|
enableNixpkgsReleaseCheck = false;
|
|
username = "${user}";
|
|
homeDirectory = "/home/${user}";
|
|
packages = pkgs.callPackage ./packages.nix {};
|
|
file = shared-files // import ./files.nix { inherit user; };
|
|
stateVersion = "21.05";
|
|
};
|
|
|
|
# Use a dark theme
|
|
gtk = {
|
|
enable = true;
|
|
iconTheme = {
|
|
name = "Adwaita-dark";
|
|
package = pkgs.gnome.adwaita-icon-theme;
|
|
};
|
|
theme = {
|
|
name = "Adwaita-dark";
|
|
package = pkgs.gnome.adwaita-icon-theme;
|
|
};
|
|
};
|
|
|
|
# Screen lock
|
|
services.screen-locker = {
|
|
enable = true;
|
|
inactiveInterval = 10;
|
|
lockCmd = "${pkgs.i3lock-fancy-rapid}/bin/i3lock-fancy-rapid 10 15";
|
|
};
|
|
|
|
# Auto mount devices
|
|
services.udiskie.enable = true;
|
|
|
|
services.polybar = {
|
|
enable = true;
|
|
config = polybar-config;
|
|
extraConfig = polybar-bars + polybar-colors + polybar-modules + polybar-user_modules;
|
|
package = pkgs.polybarFull;
|
|
script = "polybar main &";
|
|
};
|
|
|
|
services.dunst = {
|
|
enable = true;
|
|
package = pkgs.dunst;
|
|
settings = {
|
|
global = {
|
|
monitor = 0;
|
|
follow = "mouse";
|
|
border = 0;
|
|
height = 400;
|
|
width = 320;
|
|
offset = "33x65";
|
|
indicate_hidden = "yes";
|
|
shrink = "no";
|
|
separator_height = 0;
|
|
padding = 32;
|
|
horizontal_padding = 32;
|
|
frame_width = 0;
|
|
sort = "no";
|
|
idle_threshold = 120;
|
|
font = "Noto Sans";
|
|
line_height = 4;
|
|
markup = "full";
|
|
format = "<b>%s</b>\n%b";
|
|
alignment = "left";
|
|
transparency = 10;
|
|
show_age_threshold = 60;
|
|
word_wrap = "yes";
|
|
ignore_newline = "no";
|
|
stack_duplicates = false;
|
|
hide_duplicate_count = "yes";
|
|
show_indicators = "no";
|
|
icon_position = "left";
|
|
icon_theme = "Adwaita-dark";
|
|
sticky_history = "yes";
|
|
history_length = 20;
|
|
history = "ctrl+grave";
|
|
browser = "google-chrome-stable";
|
|
always_run_script = true;
|
|
title = "Dunst";
|
|
class = "Dunst";
|
|
max_icon_size = 64;
|
|
};
|
|
};
|
|
};
|
|
|
|
programs = shared-programs // {};
|
|
|
|
}
|