1
0
mirror of https://github.com/kmein/niveum synced 2026-03-18 02:51:08 +01:00

modularize colorscheming and more

This commit is contained in:
Kierán Meinhardt
2019-04-19 15:02:05 +02:00
parent a763c63de4
commit 7d6dbc2809
37 changed files with 483 additions and 496 deletions

16
configs/chromium.nix Normal file
View File

@@ -0,0 +1,16 @@
{ pkgs, ... }:
{
programs.chromium = {
enable = true;
extensions = [
"gighmmpiobklfepjocnamgkkbiglidom" # AdBlock
"hdokiejnpimakedhajhdlcegeplioahd" # LastPass
"jldhpllghnbhlbpcmnajkpdmadaolakh" # Todoist
"dbepggeogbaibhgnhhndojpepiihcmeb" # Vimium
];
};
environment.systemPackages = [ pkgs.chromium ];
niveum.applications.browser = "chromium";
}

View File

@@ -1,17 +1,19 @@
{ pkgs, lib, config, ... }:
let
theme = import <dot/theme.nix>;
unstable = import <nixos-unstable> {};
in {
{
imports = [
<modules/constants.nix>
{
services.dbus.packages = [ pkgs.gnome3.dconf ];
}
<home-manager/nixos>
<configs/sudo.nix>
<configs/chromium.nix>
<configs/fonts.nix>
<configs/sncli.nix>
<configs/bash.nix>
<configs/cloud.nix>
<configs/compton.nix>
<configs/random-background.nix>
<configs/docker.nix>
<configs/vscode.nix>
<configs/htop.nix>
@@ -33,12 +35,15 @@ in {
<configs/ssh.nix>
<configs/unclutter.nix>
<configs/urxvt.nix>
<configs/todoist.nix>
<configs/xautolock.nix>
<configs/xresources.nix>
<configs/hledger.nix>
<configs/zsh.nix>
<configs/bluetooth.nix>
<configs/theming.nix>
<configs/tmux.nix>
<configs/themes/owickstrom-dark.nix>
{
niveum.user = {
github = "kmein";
@@ -47,9 +52,7 @@ in {
};
niveum.applications = rec {
terminal = "${pkgs.rxvt_unicode-with-plugins}/bin/urxvtc";
browser = "${pkgs.chromium}/bin/chromium";
fileManager = "${terminal} -e ${pkgs.ranger}/bin/ranger";
fileManager = "${config.niveum.applications.terminal} -e ${pkgs.ranger}/bin/ranger";
};
niveum.theme = {
@@ -59,14 +62,13 @@ in {
};
}
{
nixpkgs.overlays = [ (import <nix-writers/pkgs>) ];
nixpkgs.config = {
allowUnfree = true;
packageOverrides = pkgs: {
autorenkalender = pkgs.callPackage <packages/autorenkalender.nix> {};
bvg = pkgs.callPackage <packages/bvg.nix> {};
daybook = pkgs.callPackage <packages/daybook.nix> {};
font-size = pkgs.callPackage <packages/font-size.nix> { font = theme.terminalFont; };
font-size = pkgs.callPackage <packages/font-size.nix> { font = config.niveum.fonts.terminal; };
genius = pkgs.callPackage <packages/genius.nix> {};
instaget = pkgs.callPackage <packages/instaget.nix> {};
instaloader = pkgs.python3Packages.callPackage <packages/instaloader.nix> {};
@@ -75,7 +77,7 @@ in {
nix-git = pkgs.callPackage <packages/nix-git.nix> {};
sncli = pkgs.python3Packages.callPackage <packages/sncli.nix> {};
spotify-cli-linux = pkgs.python3Packages.callPackage <packages/spotify-cli-linux.nix> {};
todoist = pkgs.callPackage <packages/todoist> {};
todoist = pkgs.unstable.callPackage <packages/todoist.nix> {};
wttr = pkgs.callPackage <packages/wttr.nix> {};
n = pkgs.callPackage <packages/n.nix> {};
@@ -84,6 +86,10 @@ in {
acronym = pkgs.callPackage <stockholm/lass/5pkgs/acronym> {};
urban = pkgs.callPackage <stockholm/lass/5pkgs/urban> {};
mpv-poll = pkgs.callPackage <stockholm/lass/5pkgs/mpv-poll> {};
unstable = import <nixos-unstable> {
config = config.nixpkgs.config;
};
};
};
}
@@ -95,23 +101,6 @@ in {
{
time.timeZone = "Europe/Berlin";
}
{
security.sudo = {
enable = true;
extraConfig = ''
Defaults pwfeedback
'';
};
}
{
home-manager.users.me = {
services.random-background = {
enable = true;
imageDirectory = toString <art>;
interval = "2h";
};
};
}
{
home-manager.users.me = {
programs.zathura = {
@@ -129,7 +118,6 @@ in {
home = "/home/kfm";
createHome = true;
group = "users";
extraGroups = [ "wheel" ];
hashedPassword = "$6$w9hXyGFl/.IZBXk$5OiWzS1G.5hImhh1YQmZiCXYNAJhi3X6Y3uSLupJNYYXPLMsQpx2fwF4Xr2uYzGMV8Foqh8TgUavx1APD9rcb/";
shell = pkgs.zsh;
};
@@ -155,7 +143,6 @@ in {
ip = "${pkgs.iproute}/bin/ip -c";
ns = "nix-shell --run zsh";
nixi = ''nix repl "<nixpkgs>"'';
grep = "grep --color=auto";
rm = "rm -i";
cp = "cp -i";
mv = "mv -i";
@@ -206,12 +193,6 @@ in {
desktopManager.xterm.enable = false;
};
}
{
fonts = {
enableDefaultFonts = true;
fonts = with pkgs; [ corefonts eb-garamond fira libertine lmodern noto-fonts roboto ubuntu_font_family ];
};
}
{
security.wrappers = {
pmount.source = "${pkgs.pmount}/bin/pmount";
@@ -227,27 +208,12 @@ in {
package = pkgs.openjdk;
};
}
{
home-manager.users.me = {
programs.browserpass.enable = true;
programs.chromium = {
enable = true;
extensions = [
"gighmmpiobklfepjocnamgkkbiglidom" # AdBlock
"hdokiejnpimakedhajhdlcegeplioahd" # LastPass
"jldhpllghnbhlbpcmnajkpdmadaolakh" # Todoist
"dbepggeogbaibhgnhhndojpepiihcmeb" # Vimium
];
};
};
}
{
environment.systemPackages = with pkgs; [
] ++ [ # office
libreoffice
] ++ [ # internet
aria2
chromium
firefox
tor-browser-bundle-bin
thunderbird
@@ -333,8 +299,7 @@ in {
] ++ [ # math
bc
] ++ [ # shell
# todoist
(aspellWithDicts (dict: [dict.de dict.en dict.la]))
(aspellWithDicts (dict: [dict.de dict.en dict.la dict.en-computers dict.ru]))
bvg
autorenkalender
literature-quote
@@ -350,10 +315,7 @@ in {
fzf
(pass.withExtensions (ext: [ext.pass-otp]))
qrencode
sncli
tmuxp
unstable.hledger
unstable.hledger-web
unstable.zola
wordnet
xsv

View File

@@ -1,15 +1,14 @@
{ config, pkgs, ... }:
let theme = import <dot/theme.nix>;
in {
with config.niveum; {
home-manager.users.me.services.dunst = {
enable = true;
iconTheme = config.niveum.theme.icon;
iconTheme = theme.icon;
settings = {
global = {
transparency = 10;
font = "${theme.terminalFont.name} ${toString theme.terminalFont.size}";
font = "${fonts.terminal.name} ${toString fonts.terminal.size}";
geometry = "200x5-30+20";
frame_color = theme.invertedColorScheme.background;
frame_color = colours.foreground;
follow = "mouse";
indicate_hidden = true;
notification_height = 0;
@@ -32,29 +31,29 @@ in {
sticky_history = true;
history_length = 20;
dmenu = "${pkgs.rofi}/bin/rofi -display-run dunst -show run";
browser = config.niveum.applications.browser;
browser = applications.browser;
verbosity = "mesg";
corner_radius = 0;
mouse_left_click = "do_action";
mouse_right_click = "close_current";
mouse_middle_click = "close_all";
};
urgency_low = {
frame_color = theme.invertedColorScheme.background;
background = theme.invertedColorScheme.background;
foreground = theme.invertedColorScheme.foreground;
urgency_low = rec {
frame_color = background;
background = colours.foreground;
foreground = colours.background;
timeout = 5;
};
urgency_normal = {
frame_color = theme.invertedColorScheme.background;
background = theme.invertedColorScheme.background;
foreground = theme.invertedColorScheme.foreground;
urgency_normal = rec {
frame_color = background;
background = colours.foreground;
foreground = colours.background;
timeout = 10;
};
urgency_critical = {
frame_color = theme.invertedColorScheme.red.dark;
background = theme.invertedColorScheme.red.dark;
foreground = theme.invertedColorScheme.foreground;
urgency_critical = rec {
frame_color = background;
background = colours.red.dark;
foreground = colours.background;
timeout = 0;
};
};

18
configs/fonts.nix Normal file
View File

@@ -0,0 +1,18 @@
{ pkgs, ... }:
{
niveum.fonts = {
ui = {
name = "Sans";
size = 9;
};
terminal = {
name = "Monospace";
size = 9;
};
};
fonts = {
enableDefaultFonts = true;
fonts = with pkgs; [ corefonts eb-garamond fira libertine lmodern noto-fonts roboto ubuntu_font_family ];
};
}

13
configs/hledger.nix Normal file
View File

@@ -0,0 +1,13 @@
{ config, ... }:
{
imports = [ <modules/hledger.nix> ];
niveum.hledger = {
enable = true;
server = {
enable = true;
user = config.users.users.me;
capabilities = [ "view" ];
};
};
}

View File

@@ -1,14 +1,13 @@
{ config, pkgs, lib, ... }:
let
theme = import <dot/theme.nix>;
new-workspace = pkgs.writeDash "new-workspace" ''
new-workspace = pkgs.unstable.writers.writeDash "new-workspace" ''
i3-msg workspace $(($(i3-msg -t get_workspaces | tr , '\n' | grep '"num":' | cut -d : -f 2 | sort -rn | head -1) + 1))
'';
move-to-new-workspace = pkgs.writeDash "new-workspace" ''
move-to-new-workspace = pkgs.unstable.writers.writeDash "new-workspace" ''
i3-msg move container to workspace $(($(i3-msg -t get_workspaces | tr , '\n' | grep '"num":' | cut -d : -f 2 | sort -rn | head -1) + 1))
'';
wifi-interface = { scardanelli = "wlp2s0"; homeros = "wlp3s0"; }.${config.networking.hostName};
in {
in with config.niveum; {
services.xserver = {
windowManager.default = "i3";
windowManager.i3.enable = true;
@@ -17,7 +16,7 @@ in {
home-manager.users.me.xsession.windowManager.i3 = {
enable = true;
config = rec {
fonts = [ "${theme.uiFont.name} ${toString theme.uiFont.size}" ];
fonts = [ "${config.niveum.fonts.ui.name} ${toString config.niveum.fonts.ui.size}" ];
modifier = "Mod4";
window = {
titlebar = false;
@@ -29,54 +28,46 @@ in {
border = 1;
};
colors =
let scheme = { background = theme.colorScheme.background; text = theme.colorScheme.foreground; };
in {
let scheme = { background = colours.background; text = colours.foreground; };
in rec {
focused = scheme // {
border = theme.colorScheme.background;
indicator = theme.colorScheme.background;
childBorder = theme.colorScheme.background;
};
focusedInactive = scheme // {
border = theme.colorScheme.background;
indicator = theme.colorScheme.background;
childBorder = theme.colorScheme.background;
};
unfocused = scheme // {
border = theme.colorScheme.background;
indicator = theme.colorScheme.background;
childBorder = theme.colorScheme.background;
border = colours.background;
indicator = colours.background;
childBorder = colours.background;
};
focusedInactive = focused;
unfocused = focused;
urgent = scheme // {
border = theme.colorScheme.red.light;
indicator = theme.colorScheme.red.light;
childBorder = theme.colorScheme.red.light;
border = colours.red.bright;
indicator = colours.red.bright;
childBorder = colours.red.bright;
};
placeholder = scheme // {
border = theme.colorScheme.green.light;
indicator = theme.colorScheme.green.light;
childBorder = theme.colorScheme.green.light;
border = colours.green.bright;
indicator = colours.green.bright;
childBorder = colours.green.bright;
};
};
bars = [{
workspaceButtons = false;
fonts = [ "${theme.terminalFont.name} ${toString theme.terminalFont.size}" ];
fonts = [ "${config.niveum.fonts.terminal.name} ${toString config.niveum.fonts.terminal.size}" ];
mode = "hide";
colors = {
background = theme.colorScheme.background;
separator = theme.colorScheme.background;
statusline = theme.colorScheme.foreground;
colors = rec {
background = colours.background;
separator = background;
statusline = colours.foreground;
bindingMode = {
background = theme.colorScheme.red.light;
border = theme.colorScheme.background;
text = theme.colorScheme.foreground;
background = colours.red.bright;
border = colours.background;
text = colours.foreground;
};
};
statusCommand = "${pkgs.i3status}/bin/i3status -c ${pkgs.writeText "i3status.conf" ''
general {
colors = true
color_good = "${theme.colorScheme.green.dark}"
color_bad = "${theme.colorScheme.red.dark}"
color_degraded = "${theme.colorScheme.black.light}"
color_good = "${colours.green.dark}"
color_bad = "${colours.red.dark}"
color_degraded = "${colours.white.dark}"
interval = 5
separator = " "
}
@@ -136,7 +127,7 @@ in {
keybindings = {
"${modifier}+Down" = "focus down";
"${modifier}+Left" = "focus left";
"${modifier}+Return" = "exec ${config.niveum.applications.terminal}";
"${modifier}+Return" = "exec ${applications.terminal}";
"${modifier}+Right" = "focus right";
"${modifier}+Shift+Down" = "move down";
"${modifier}+Shift+Left" = "move left";
@@ -161,14 +152,14 @@ in {
"${modifier}+p" = "exec ${pkgs.rofi-pass}/bin/rofi-pass";
"${modifier}+r" = "mode resize";
"${modifier}+s" = "layout stacking";
"${modifier}+t" = "exec ${config.niveum.applications.fileManager}";
"${modifier}+t" = "exec ${applications.fileManager}";
"${modifier}+v" = "split v";
"${modifier}+w" = "layout tabbed";
"${modifier}+x" = "exec --no-startup-id ${new-workspace}";
"${modifier}+y" = "exec ${config.niveum.applications.browser}";
"XF86AudioLowerVolume" = "exec --no-startup-id ${pkgs.pamixer}/bin/pamixer -d 5 && pkill -RTMIN+3 i3blocks";
"XF86AudioMute" = "exec --no-startup-id ${pkgs.pamixer}/bin/pamixer -t && pkill -RTMIN+3 i3blocks";
"XF86AudioRaiseVolume" = "exec --no-startup-id ${pkgs.pamixer}/bin/pamixer -i 5 && pkill -RTMIN+3 i3blocks";
"${modifier}+y" = "exec ${applications.browser}";
"XF86AudioLowerVolume" = "exec --no-startup-id ${pkgs.pamixer}/bin/pamixer -d 5";
"XF86AudioMute" = "exec --no-startup-id ${pkgs.pamixer}/bin/pamixer -t";
"XF86AudioRaiseVolume" = "exec --no-startup-id ${pkgs.pamixer}/bin/pamixer -i 5";
};
};
};

View File

@@ -0,0 +1,9 @@
{
home-manager.users.me = {
services.random-background = {
enable = true;
imageDirectory = toString <art>;
interval = "2h";
};
};
}

View File

@@ -1,38 +1,37 @@
{ config, ... }:
let theme = import <dot/theme.nix>;
in {
with config.niveum; {
home-manager.users.me.programs.rofi = {
enable = true;
separator = "solid";
scrollbar = false;
terminal = config.niveum.applications.terminal;
terminal = applications.terminal;
borderWidth = 0;
lines = 5;
font = "${theme.terminalFont.name} ${toString (theme.terminalFont.size + 1)}";
font = "${fonts.terminal.name} ${toString (fonts.terminal.size + 1)}";
colors = rec {
window = {
background = theme.invertedColorScheme.background;
border = theme.invertedColorScheme.background;
separator = theme.invertedColorScheme.black.light;
window = rec {
background = colours.foreground;
border = background;
separator = colours.black.bright;
};
rows = {
normal = {
background = window.background;
backgroundAlt = window.background;
foreground = theme.invertedColorScheme.foreground;
highlight = { foreground = theme.invertedColorScheme.cyan.dark; inherit (window) background; };
foreground = colours.background;
highlight = { foreground = colours.cyan.dark; inherit (window) background; };
};
active = {
background = window.background;
backgroundAlt = window.background;
foreground = theme.invertedColorScheme.yellow.dark;
highlight = { foreground = theme.invertedColorScheme.green.dark; inherit (window) background; };
foreground = colours.yellow.dark;
highlight = { foreground = colours.green.dark; inherit (window) background; };
};
urgent = {
background = window.background;
backgroundAlt = window.background;
foreground = theme.invertedColorScheme.red.dark;
highlight = { foreground = theme.invertedColorScheme.magenta.dark; inherit (window) background; };
foreground = colours.red.dark;
highlight = { foreground = colours.magenta.dark; inherit (window) background; };
};
};
};

13
configs/sncli.nix Normal file
View File

@@ -0,0 +1,13 @@
{ pkgs, ... }:
let secrets = import <dot/secrets.nix>;
in {
environment.systemPackages = [ pkgs.sncli ];
home-manager.users.me = {
home.file.".snclirc".text = ''
[sncli]
cfg_sn_username = ${secrets.simplenote.username}
cfg_sn_password = ${secrets.simplenote.password}
'';
};
}

10
configs/sudo.nix Normal file
View File

@@ -0,0 +1,10 @@
{
security.sudo = {
enable = true;
extraConfig = ''
Defaults pwfeedback
'';
};
users.users.me.extraGroups = [ "wheel" ];
}

View File

@@ -0,0 +1,15 @@
{
niveum.colours = rec {
black = { bright = "#151515"; dark = "#000000"; };
red = { bright = "#de575c"; dark = "#de575c"; };
yellow = { bright = "#ebe971"; dark = "#ebe971"; };
green = { bright = "#00b853"; dark = "#00b853"; };
blue = { bright = "#90d0f0"; dark = "#7fc6f0"; };
magenta = { bright = "#cf9ffa"; dark = "#cf9ffa"; };
cyan = { bright = "#4ae5e8"; dark = "#4ae5e8"; };
white = { bright = "#ffffff"; dark = "#bbbbbb"; };
background = black.dark;
foreground = white.dark;
cursor = green.bright;
};
}

View File

@@ -0,0 +1,15 @@
{
niveum.colours = {
black = { bright = "#444444"; dark = "#1c1c1c"; };
red = { bright = "#ff8700"; dark = "#af5f5f"; };
green = { bright = "#87af87"; dark = "#5f875f"; };
yellow = { bright = "#ffffaf"; dark = "#87875f"; };
blue = { bright = "#8fafd7"; dark = "#5f87af"; };
magenta = { bright = "#8787af"; dark = "#5f5f87"; };
cyan = { bright = "#5fafaf"; dark = "#5f8787"; };
white = { bright = "#999999"; dark = "#6c6c6c"; };
background = "#262626";
foreground = "#bcbcbc";
cursor = "#bcbcbc";
};
}

View File

@@ -0,0 +1,15 @@
{
niveum.colours = rec {
black = { bright = "#454545"; dark = "#222222"; };
red = { bright = "#FA8072"; dark = "#B22222"; };
green = { bright = "#779A3E"; dark = "#556B2F"; };
yellow = { bright = "#DAA520"; dark = "#B8860B"; };
blue = { bright = "#6495ED"; dark = "#4682B4"; };
magenta = { bright = "#DA70D6"; dark = "#9932CC"; };
cyan = { bright = "#B0E0E6"; dark = "#87CEEB"; };
white = { bright = "#FFFFFF"; dark = "#C0C0C0"; };
background = "#000000";
foreground = "#AAAAAA";
cursor = green.bright;
};
}

15
configs/themes/mac-os.nix Normal file
View File

@@ -0,0 +1,15 @@
{
niveum.colours = rec {
black = { bright = "#818383"; dark = "#000000"; };
red = { bright = "#fc391f"; dark = "#c23621"; };
yellow = { bright = "#eaec23"; dark = "#adad27"; };
green = { bright = "#31e722"; dark = "#25bc24"; };
blue = { bright = "#5833ff"; dark = "#492ee1"; };
magenta = { bright = "#f935f8"; dark = "#d338d3"; };
cyan = { bright = "#14f0f0"; dark = "#33bbc8"; };
white = { bright = "#e9ebeb"; dark = "#cbcccd"; };
background = black.dark;
foreground = white.dark;
cursor = green.bright;
};
}

View File

@@ -0,0 +1,15 @@
{
niveum.colours = rec {
black = { bright = "#4b4b4b"; dark = "#242424"; };
red = { bright = "#fc1c18"; dark = "#d71c15"; };
green = { bright = "#6bc219"; dark = "#5aa513"; };
yellow = { bright = "#fec80e"; dark = "#fdb40c"; };
blue = { bright = "#0955ff"; dark = "#063b8c"; };
magenta = { bright = "#fb0050"; dark = "#e40038"; };
cyan = { bright = "#3ea8fc"; dark = "#2595e1"; };
white = { bright = "#8c00ec"; dark = "#efefef"; };
background = "#181818";
foreground = white.dark;
cursor = "#bbbbbb";
};
}

View File

@@ -0,0 +1,15 @@
{
niveum.colours = rec {
black = { bright = "#282c34"; dark = "#282c34"; };
red = { bright = "#e06c75"; dark = "#e06c75"; };
green = { bright = "#98c379"; dark = "#98c379"; };
yellow = { bright = "#e5c07b"; dark = "#e5c07b"; };
blue = { bright = "#61afef"; dark = "#61afef"; };
magenta = { bright = "#c678dd"; dark = "#c678dd"; };
cyan = { bright = "#56b6c2"; dark = "#56b6c2"; };
white = { bright = "#dcdfe4"; dark = "#dcdfe4"; };
background = black.dark;
foreground = white.bright;
cursor = "#a3b3cc";
};
}

View File

@@ -0,0 +1,15 @@
{
niveum.colours = rec {
black = { dark = "#073642"; bright = "#002b36"; };
red = { dark = "#dc322f"; bright = "#cb4b16"; };
yellow = { dark = "#b58900"; bright = "#657b83"; };
green = { dark = "#859900"; bright = "#586e75"; };
blue = { dark = "#268bd2"; bright = "#839496"; };
magenta = { dark = "#d33682"; bright = "#6c71c4"; };
cyan = { dark = "#2aa198"; bright = "#93a1a1"; };
white = { dark = "#eee8d5"; bright = "#fdf6e3"; };
background = black.bright;
foreground = blue.bright;
cursor = cyan.bright;
};
}

View File

@@ -0,0 +1,15 @@
{
niveum.colours = rec {
black = { dark = "#073642"; bright = "#002b36"; };
red = { dark = "#dc322f"; bright = "#cb4b16"; };
yellow = { dark = "#b58900"; bright = "#657b83"; };
green = { dark = "#859900"; bright = "#586e75"; };
blue = { dark = "#268bd2"; bright = "#839496"; };
magenta = { dark = "#d33682"; bright = "#6c71c4"; };
cyan = { dark = "#2aa198"; bright = "#93a1a1"; };
white = { dark = "#eee8d5"; bright = "#fdf6e3"; };
background = white.bright;
foreground = yellow.bright;
cursor = green.bright;
};
}

View File

@@ -1,35 +1,34 @@
{ lib, config, ... }:
{
i18n.consoleColors = with import <dot/theme.nix>; map (c: lib.strings.removePrefix "#" c) colorPalette;
with config.niveum; {
i18n.consoleColors = map (c: lib.strings.removePrefix "#" c) colourPalette;
environment.systemPackages = [
config.niveum.theme.gtk.package
config.niveum.theme.icon.package
config.niveum.theme.cursor.package
theme.gtk.package
theme.icon.package
theme.cursor.package
];
services.xserver.displayManager.lightdm.greeters.gtk = {
theme = {
name = config.niveum.theme.gtk.name;
package = config.niveum.theme.gtk.package;
name = theme.gtk.name;
package = theme.gtk.package;
};
iconTheme = {
name = config.niveum.theme.icon.name;
package = config.niveum.theme.icon.package;
name = theme.icon.name;
package = theme.icon.package;
};
};
home-manager.users.me = {
gtk = {
enable = true;
iconTheme = config.niveum.theme.icon;
theme = config.niveum.theme.gtk;
iconTheme = theme.icon;
theme = theme.gtk;
};
qt = {
enable = true;
useGtkTheme = true;
};
xsession.pointerCursor = config.niveum.theme.cursor // { size = 16; };
xsession.pointerCursor = theme.cursor // { size = 16; };
};
}

15
configs/todoist.nix Normal file
View File

@@ -0,0 +1,15 @@
{ pkgs, ... }:
let secrets = import <dot/secrets.nix>;
in {
environment.systemPackages = [
(pkgs.unstable.writers.writeDashBin "todoist" ''
${pkgs.todoist}/bin/todoist --color $@
'')
];
home-manager.users.me.home.file.".todoist.config.json".text = ''
{
"token": "${secrets.todoist.token}"
}
'';
}

View File

@@ -1,8 +1,9 @@
{ pkgs, config, ... }:
let theme = import <dot/theme.nix>;
in {
{
services.urxvtd.enable = true;
niveum.applications.terminal = "urxvtc";
home-manager.users.me.programs.urxvt = {
enable = true;
package = pkgs.rxvt_unicode-with-plugins;
@@ -15,7 +16,7 @@ in {
perl-ext = "default,url-select";
"url-select.launcher" = "/usr/bin/env chromium";
"url-select.underline" = true;
"colorUL" = theme.colorScheme.blue.light;
"colorUL" = config.niveum.colours.blue.bright;
"perl-lib" = "${pkgs.urxvt_perls}/lib/urxvt/perl";
urlLauncher = "/usr/bin/env chromium";
fading = 20;

View File

@@ -1,13 +1,12 @@
{ lib, ... }:
let theme = import <dot/theme.nix>;
in {
home-manager.users.me.xresources.properties = {
"*background" = theme.colorScheme.background;
"*foreground" = theme.colorScheme.foreground;
"*fadeColor" = theme.colorScheme.background;
"*cursorColor" = theme.colorScheme.cursorColor;
"*.font" = "xft:${theme.terminalFont.name}:size=${toString theme.terminalFont.size}";
"*.boldFont" = "xft:${theme.terminalFont.name}:style=Bold:size=${toString theme.terminalFont.size}";
"*.italicFont" = "xft:${theme.terminalFont.name}:style=Italic:size=${toString theme.terminalFont.size}";
} // lib.lists.foldr (i: cs: cs // { "*color${toString i}" = builtins.elemAt theme.colorPalette i; }) {} (lib.lists.range 0 15);
{ config, lib, ... }:
{
home-manager.users.me.xresources.properties = with config.niveum; {
"*background" = colours.background;
"*foreground" = colours.foreground;
"*fadeColor" = colours.background;
"*cursorColor" = colours.cursor;
"*.font" = "xft:${fonts.terminal.name}:size=${toString fonts.terminal.size}";
"*.boldFont" = "xft:${fonts.terminal.name}:style=Bold:size=${toString fonts.terminal.size}";
"*.italicFont" = "xft:${fonts.terminal.name}:style=Italic:size=${toString fonts.terminal.size}";
} // lib.lists.foldr (i: cs: cs // { "*color${toString i}" = builtins.elemAt colourPalette i; }) {} (lib.lists.range 0 15);
}

View File

@@ -42,7 +42,7 @@
niveum-deploy() {
for system in "$@"; do
eval $(nix-build ~niveum/deploy.nix -A "$system") &
eval $(nix-build --no-out-link ~niveum/deploy.nix -A "$system") &
done
wait
}