Switch from stylix which auto-generates themes to nix-colors which allows manual color assignment. Added gtk-nix flake to assist with nix-colors and gtk.
This commit is contained in:
parent
535fb8778b
commit
23ac64bf87
143
flake.lock
143
flake.lock
@ -1,5 +1,80 @@
|
||||
{
|
||||
"nodes": {
|
||||
"banner": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"gtk-nix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1669224926,
|
||||
"narHash": "sha256-UK19yx8jNqbPfBZNUeJr2Sms7BhbDAUyJBF5w2CT6Hc=",
|
||||
"owner": "the-argus",
|
||||
"repo": "banner.nix",
|
||||
"rev": "253556f4068f5cb9728e49ac42d630cdc0ccfd58",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "the-argus",
|
||||
"repo": "banner.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-schemes": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1689473676,
|
||||
"narHash": "sha256-L0RhUr9+W5EPWBpLcmkKpUeCEWRs/kLzVMF3Vao2ZU0=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-schemes",
|
||||
"rev": "d95123ca6377cd849cfdce92c0a24406b0c6a789",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-schemes",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1689068808,
|
||||
"narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gtk-nix": {
|
||||
"inputs": {
|
||||
"banner": "banner",
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1692384535,
|
||||
"narHash": "sha256-lFOEsDLV7kuEAcHS7HfyGewTcdSkzTxM+l3XwGhzLgU=",
|
||||
"owner": "the-argus",
|
||||
"repo": "gtk-nix",
|
||||
"rev": "e77b9e68aa818b87389c682b4fd018ad451a85d3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "the-argus",
|
||||
"repo": "gtk-nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@ -20,7 +95,56 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-colors": {
|
||||
"inputs": {
|
||||
"base16-schemes": "base16-schemes",
|
||||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1695388192,
|
||||
"narHash": "sha256-2jelpE7xK+4M7jZNyWL7QYOYegQLYBDQS5bvdo8XRUQ=",
|
||||
"owner": "misterio77",
|
||||
"repo": "nix-colors",
|
||||
"rev": "37227f274b34a3b51649166deb94ce7fec2c6a4c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "misterio77",
|
||||
"repo": "nix-colors",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1692264070,
|
||||
"narHash": "sha256-WepAkIL2UcHOj7JJiaFS/vxrA9lklQHv8p+xGL+7oQ0=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "42c25608aa2ad4e5d3716d8d63c606063513ba33",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"id": "nixpkgs",
|
||||
"ref": "nixos-unstable",
|
||||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"nixpkgs-lib": {
|
||||
"locked": {
|
||||
"lastModified": 1694911725,
|
||||
"narHash": "sha256-8YqI+YU1DGclEjHsnrrGfqsQg3Wyga1DfTbJrN3Ud0c=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"rev": "819180647f428a3826bfc917a54449da1e532ce0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1703013332,
|
||||
"narHash": "sha256-+tFNwMvlXLbJZXiMHqYq77z/RfmpfpiI3yjL6o/Zo9M=",
|
||||
@ -38,8 +162,25 @@
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"gtk-nix": "gtk-nix",
|
||||
"home-manager": "home-manager",
|
||||
"nixpkgs": "nixpkgs"
|
||||
"nix-colors": "nix-colors",
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -9,8 +9,10 @@
|
||||
url = "github:nix-community/home-manager";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
nix-colors.url = "github:misterio77/nix-colors";
|
||||
gtk-nix.url = "github:the-argus/gtk-nix";
|
||||
};
|
||||
outputs = inputs @ { self, nixpkgs, home-manager }:
|
||||
outputs = { nixpkgs, home-manager, ... }@inputs:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
user = {
|
||||
|
32
home-manager/dots/foot.nix
Normal file
32
home-manager/dots/foot.nix
Normal file
@ -0,0 +1,32 @@
|
||||
{ pkgs, config, ... }:
|
||||
{
|
||||
programs.foot = {
|
||||
enable = true;
|
||||
settings = {
|
||||
main = {
|
||||
font = "Comic Mono:size=11";
|
||||
};
|
||||
colors = {
|
||||
alpha = 1.0;
|
||||
foreground = "${config.colorScheme.colors.base0F}";
|
||||
background = "${config.colorScheme.colors.base00}";
|
||||
regular0 = "${config.colorScheme.colors.base00}";
|
||||
regular1 = "${config.colorScheme.colors.base01}";
|
||||
regular2 = "${config.colorScheme.colors.base02}";
|
||||
regular3 = "${config.colorScheme.colors.base03}";
|
||||
regular4 = "${config.colorScheme.colors.base04}";
|
||||
regular5 = "${config.colorScheme.colors.base05}";
|
||||
regular6 = "${config.colorScheme.colors.base06}";
|
||||
regular7 = "${config.colorScheme.colors.base07}";
|
||||
bright0 = "${config.colorScheme.colors.base08}";
|
||||
bright1 = "${config.colorScheme.colors.base09}";
|
||||
bright2 = "${config.colorScheme.colors.base0A}";
|
||||
bright3 = "${config.colorScheme.colors.base0B}";
|
||||
bright4 = "${config.colorScheme.colors.base0C}";
|
||||
bright5 = "${config.colorScheme.colors.base0D}";
|
||||
bright6 = "${config.colorScheme.colors.base0E}";
|
||||
bright7 = "${config.colorScheme.colors.base0F}";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
95
home-manager/dots/gtk.nix
Normal file
95
home-manager/dots/gtk.nix
Normal file
@ -0,0 +1,95 @@
|
||||
{ pkgs, config, ... }:
|
||||
{
|
||||
gtk = {
|
||||
enable = true;
|
||||
font = {
|
||||
name = "Comic Mono";
|
||||
};
|
||||
};
|
||||
gtkNix = {
|
||||
enable = true;
|
||||
configuration = {
|
||||
spacing-small = "0.3em";
|
||||
spacing-medium = "0.6em";
|
||||
spacing-large = "0.9em";
|
||||
tint-weak = 0.3;
|
||||
tint-medium = 0.6;
|
||||
tint-strong = 0.9;
|
||||
border-size = "0.2em";
|
||||
radius = "0.5em";
|
||||
disabled-opacity = 0.3;
|
||||
};
|
||||
|
||||
defaultTransparency = 255;
|
||||
|
||||
# neither of these options are very useful. They're just so that if
|
||||
# I forgot to make something configurable, you can override previous
|
||||
# variable definitions.
|
||||
extraConfigSCSS = '''';
|
||||
extraColorSCSS = '''';
|
||||
|
||||
whites = let
|
||||
mkWhite = alpha: "f0f0f3${alpha}";
|
||||
in {
|
||||
strongest = mkWhite "FF";
|
||||
strong = mkWhite "DE";
|
||||
moderate = mkWhite "57";
|
||||
weak = mkWhite "24";
|
||||
weakest = mkWhite "0F";
|
||||
};
|
||||
blacks = let
|
||||
mkBlack = alpha: "191724${alpha}";
|
||||
in {
|
||||
strongest = mkBlack "FF";
|
||||
strong = mkBlack "DE";
|
||||
moderate = mkBlack "6B";
|
||||
weak = mkBlack "26";
|
||||
weakest = mkBlack "0F";
|
||||
};
|
||||
|
||||
palette = rec {
|
||||
# the banner palette format. can also be a path to a yaml file
|
||||
# instead of attrs. this example is rose pine.
|
||||
base00 = "${config.colorScheme.colors.base00}";
|
||||
base01 = "${config.colorScheme.colors.base01}";
|
||||
base02 = "${config.colorScheme.colors.base02}";
|
||||
base03 = "${config.colorScheme.colors.base03}";
|
||||
base04 = "${config.colorScheme.colors.base04}";
|
||||
base05 = "${config.colorScheme.colors.base05}";
|
||||
base06 = "${config.colorScheme.colors.base06}";
|
||||
base07 = "${config.colorScheme.colors.base07}";
|
||||
base08 = "${config.colorScheme.colors.base08}";
|
||||
base09 = "${config.colorScheme.colors.base09}";
|
||||
base10 = "${config.colorScheme.colors.base0A}";
|
||||
base11 = "${config.colorScheme.colors.base0B}";
|
||||
base12 = "${config.colorScheme.colors.base0C}";
|
||||
base13 = "${config.colorScheme.colors.base0D}";
|
||||
base14 = "${config.colorScheme.colors.base0E}";
|
||||
base15 = "${config.colorScheme.colors.base0F}";
|
||||
highlight = "${config.colorScheme.colors.base0E}";
|
||||
hialt0 = "${config.colorScheme.colors.base0A}";
|
||||
hialt1 = "${config.colorScheme.colors.base0E}";
|
||||
hialt2 = "${config.colorScheme.colors.base0B}";
|
||||
urgent = "${config.colorScheme.colors.base09}";
|
||||
warn = "${config.colorScheme.colors.base0A}";
|
||||
confirm = "${config.colorScheme.colors.base0D}";
|
||||
link = "${config.colorScheme.colors.base0E}";
|
||||
pfg-highlight = "${config.colorScheme.colors.base00}";
|
||||
pfg-hialt0 = "${config.colorScheme.colors.base00}";
|
||||
pfg-hialt1 = "${config.colorScheme.colors.base00}";
|
||||
pfg-hialt2 = "${config.colorScheme.colors.base05}";
|
||||
pfg-urgent = "${config.colorScheme.colors.base00}";
|
||||
pfg-warn = "${config.colorScheme.colors.base00}";
|
||||
pfg-confirm = "${config.colorScheme.colors.base00}";
|
||||
pfg-link = "${config.colorScheme.colors.base00}";
|
||||
ansi00 = "${config.colorScheme.colors.base03}";
|
||||
ansi01 = "${config.colorScheme.colors.base09}";
|
||||
ansi02 = "${config.colorScheme.colors.base0D}";
|
||||
ansi03 = "${config.colorScheme.colors.base0A}";
|
||||
ansi04 = "${config.colorScheme.colors.base0C}";
|
||||
ansi05 = "${config.colorScheme.colors.base0E}";
|
||||
ansi06 = "${config.colorScheme.colors.base0B}";
|
||||
ansi07 = "${config.colorScheme.colors.base05}";
|
||||
};
|
||||
};
|
||||
}
|
28
home-manager/dots/mako.nix
Normal file
28
home-manager/dots/mako.nix
Normal file
@ -0,0 +1,28 @@
|
||||
{ pkgs, config, ... }:
|
||||
{
|
||||
services.mako = {
|
||||
enable = true;
|
||||
backgroundColor = "#${config.colorScheme.colors.base01}";
|
||||
borderColor = "#${config.colorScheme.colors.base0E}";
|
||||
borderRadius = 5;
|
||||
borderSize = 2;
|
||||
textColor = "#${config.colorScheme.colors.base04}";
|
||||
anchor = "top-right";
|
||||
layer = "overlay";
|
||||
maxVisible = 5;
|
||||
font = "Comic Mono 12";
|
||||
defaultTimeout = 10000;
|
||||
extraConfig = ''
|
||||
[urgency=low]
|
||||
border-color=#${config.colorScheme.colors.base01}
|
||||
text-color=#${config.colorScheme.colors.base07}
|
||||
[urgency=normal]
|
||||
border-color=#${config.colorScheme.colors.base0D}
|
||||
text-color=#${config.colorScheme.colors.base04}
|
||||
[urgency=high]
|
||||
background-color=#${config.colorScheme.colors.base0E}
|
||||
border-color=#${config.colorScheme.colors.base0E}
|
||||
text-color=#${config.colorScheme.colors.base04}
|
||||
'';
|
||||
};
|
||||
}
|
168
home-manager/dots/river.nix
Normal file
168
home-manager/dots/river.nix
Normal file
@ -0,0 +1,168 @@
|
||||
{ pkgs, config, ... }:
|
||||
{
|
||||
xdg.configFile = {
|
||||
"init" = {
|
||||
enable = true;
|
||||
executable = true;
|
||||
target = "river/init";
|
||||
text = ''
|
||||
#!/usr/bin/env sh
|
||||
# See the river(1), riverctl(1), and rivertile(1) man pages for complete
|
||||
# documentation.
|
||||
|
||||
# Variables
|
||||
TERMINAL="foot"
|
||||
LOCKSCREEN="swaylock"
|
||||
|
||||
# Autostart
|
||||
riverctl spawn "way-displays -c $HOME/.config/way-displays/cfg.yaml"
|
||||
riverctl spawn "swww init"
|
||||
riverctl spawn "swww img $HOME/Pictures/wallpapers/bliss-night.png --transition-type simple"
|
||||
riverctl spawn "wl-paste --type text --watch cliphist store"
|
||||
riverctl spawn "wl-paste --type image --watch cliphist store"
|
||||
riverctl spawn "mako"
|
||||
riverctl spawn "mullvad-gui"
|
||||
|
||||
# Theme
|
||||
riverctl background-color 0x${config.colorScheme.colors.base00}
|
||||
riverctl border-color-focused 0x${config.colorScheme.colors.base0A}
|
||||
riverctl border-color-unfocused 0x${config.colorScheme.colors.base00}
|
||||
|
||||
# Launch Shortcuts
|
||||
riverctl map normal Super Return spawn "$TERMINAL tmux.sh"
|
||||
riverctl map normal Super+Shift Return spawn "$TERMINAL"
|
||||
riverctl map normal Super Space spawn "wmenu.sh"
|
||||
|
||||
# Focus Controls
|
||||
riverctl map normal Super H send-layout-cmd rivertile "main-count +1"
|
||||
riverctl map normal Super J focus-view next
|
||||
riverctl map normal Super K focus-view previous
|
||||
riverctl map normal Super L send-layout-cmd rivertile "main-count -1"
|
||||
riverctl map normal Alt Tab focus-view next
|
||||
riverctl map normal Alt+Shift Tab focus-view previous
|
||||
riverctl map normal Super Tab focus-output next
|
||||
riverctl map normal Super Bracketright focus-output next
|
||||
riverctl map normal Super Bracketleft focus-output previous
|
||||
|
||||
# Move Controls
|
||||
riverctl map normal Super+Shift H zoom
|
||||
riverctl map normal Super+Shift J swap next
|
||||
riverctl map normal Super+Shift K swap previous
|
||||
riverctl map normal Super+Shift L spawn $LOCKSCREEN
|
||||
riverctl map normal Super+Shift Tab send-to-output next
|
||||
riverctl map normal Super+Shift Bracketright send-to-output next
|
||||
riverctl map normal Super+Shift Bracketleft send-to-output previous
|
||||
|
||||
# Layout Controls
|
||||
riverctl map normal Super+Alt H send-layout-cmd rivertile "main-ratio -0.05"
|
||||
riverctl map normal Super+Alt L send-layout-cmd rivertile "main-ratio +0.05"
|
||||
riverctl map normal Super I send-layout-cmd rivertile "main-count +1"
|
||||
riverctl map normal Super D send-layout-cmd rivertile "main-count -1"
|
||||
riverctl map normal Super Up send-layout-cmd rivertile "main-location top"
|
||||
riverctl map normal Super Right send-layout-cmd rivertile "main-location right"
|
||||
riverctl map normal Super Down send-layout-cmd rivertile "main-location bottom"
|
||||
riverctl map normal Super Left send-layout-cmd rivertile "main-location left"
|
||||
|
||||
# Floating Controls
|
||||
riverctl map normal Super F toggle-float
|
||||
riverctl map normal Super+Control H move left 100
|
||||
riverctl map normal Super+Control J move down 100
|
||||
riverctl map normal Super+Control K move up 100
|
||||
riverctl map normal Super+Control L move right 100
|
||||
riverctl map normal Super+Shift+Control H snap left
|
||||
riverctl map normal Super+Shift+Control J snap down
|
||||
riverctl map normal Super+Shift+Control K snap up
|
||||
riverctl map normal Super+Shift+Control L snap right
|
||||
riverctl map normal Super+Alt+Shift H resize horizontal -100
|
||||
riverctl map normal Super+Alt+Shift J resize vertical 100
|
||||
riverctl map normal Super+Alt+Shift K resize vertical -100
|
||||
riverctl map normal Super+Alt+Shift L resize horizontal 100
|
||||
riverctl map-pointer normal Super BTN_LEFT move-view
|
||||
riverctl map-pointer normal Super BTN_RIGHT resize-view
|
||||
|
||||
# Close focused view
|
||||
riverctl map normal Super W close
|
||||
riverctl map normal Super Q close
|
||||
# Exit River
|
||||
riverctl map normal Super+Shift Q exit
|
||||
|
||||
for i in $(seq 1 9)
|
||||
do
|
||||
tags=$((1 << ($i - 1)))
|
||||
|
||||
# Super+[1-9] to focus tag [0-8]
|
||||
riverctl map normal Super $i spawn "riverctl set-focused-tags $tags; notify-send 'Tag $tags focus toggle';"
|
||||
|
||||
# Super+Shift+[1-9] to tag focused view with tag [0-8]
|
||||
riverctl map normal Super+Shift $i spawn "riverctl set-view-tags $tags; riverctl set-focused-tags $tags; notify-send 'Tag $tags swap toggle';"
|
||||
|
||||
# Super+Control+[1-9] to toggle focus of tag [0-8]
|
||||
riverctl map normal Super+Control $i spawn "riverctl toggle-focused-tags $tags; notify-send 'Tag $tags focus toggle';"
|
||||
|
||||
# Super+Shift+Control+[1-9] to toggle tag [0-8] of focused view
|
||||
riverctl map normal Super+Shift+Control $i spawn "riverctl toggle-view-tags $tags; notiy-send 'Tag $tags assignment toggle';"
|
||||
done
|
||||
|
||||
# Super+0 to focus all tags
|
||||
# Super+Shift+0 to tag focused view with all tags
|
||||
all_tags=$(((1 << 32) - 1))
|
||||
riverctl map normal Super 0 spawn "riverctl set-focused-tags $all_tags; notify-send 'All tags focus toggle';"
|
||||
riverctl map normal Super+Shift 0 spawn "riverctl set-view-tags $all_tags; notify-send 'All tags assignment toggle';"
|
||||
|
||||
# Toggle fullscreen
|
||||
riverctl map normal None F11 toggle-fullscreen
|
||||
riverctl map normal Super Z toggle-fullscreen
|
||||
|
||||
# Declare a passthrough mode. This mode has only a single mapping to return to
|
||||
# normal mode. This makes it useful for testing a nested wayland compositor
|
||||
riverctl declare-mode passthrough
|
||||
|
||||
# Super+F11 to enter passthrough mode
|
||||
riverctl map normal Super F11 enter-mode passthrough
|
||||
|
||||
# Super+F11 to return to normal mode
|
||||
riverctl map passthrough Super F11 enter-mode normal
|
||||
|
||||
# Various media key mapping examples for both normal and locked mode which do
|
||||
# not have a modifier
|
||||
for mode in normal locked
|
||||
do
|
||||
riverctl map $mode None XF86Eject spawn 'eject -T'
|
||||
|
||||
# Control pulse audio volume with pamixer (https://github.com/cdemoulins/pamixer)
|
||||
riverctl map $mode None XF86AudioRaiseVolume spawn 'pamixer -i 5'
|
||||
riverctl map $mode None XF86AudioLowerVolume spawn 'pamixer -d 5'
|
||||
riverctl map $mode None XF86AudioMute spawn 'pamixer --toggle-mute'
|
||||
|
||||
# Control MPRIS aware media players with playerctl (https://github.com/altdesktop/playerctl)
|
||||
riverctl map $mode None XF86AudioMedia spawn 'playerctl play-pause'
|
||||
riverctl map $mode None XF86AudioPlay spawn 'playerctl play-pause'
|
||||
riverctl map $mode None XF86AudioPrev spawn 'playerctl previous'
|
||||
riverctl map $mode None XF86AudioNext spawn 'playerctl next'
|
||||
|
||||
# Control screen backlight brightness with light (https://github.com/haikarainen/light)
|
||||
riverctl map $mode None XF86MonBrightnessUp spawn 'light -A 5'
|
||||
riverctl map $mode None XF86MonBrightnessDown spawn 'light -U 5'
|
||||
done
|
||||
|
||||
# Set keyboard repeat rate
|
||||
riverctl set-repeat 50 300
|
||||
|
||||
# Make all views with an app-id that starts with "float" and title "foo" start floating.
|
||||
riverctl rule-add -app-id 'float*' -title 'foo' float
|
||||
|
||||
# Make all views with app-id "bar" and any title use client-side decorations
|
||||
riverctl rule-add -app-id "bar" csd
|
||||
|
||||
# Global Configuration Settings
|
||||
riverctl default-layout rivertile
|
||||
rivertile -view-padding 10 -outer-padding 10 &
|
||||
riverctl attach-mode bottom
|
||||
riverctl hide-cursor timeout 10000
|
||||
riverctl hide-cursor when-typing enabled
|
||||
riverctl set-cursor-warp on-focus-change
|
||||
riverctl focus-follows-cursor always
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
26
home-manager/dots/special.nix
Normal file
26
home-manager/dots/special.nix
Normal file
@ -0,0 +1,26 @@
|
||||
{ pkgs, config, ... }:
|
||||
{
|
||||
xdg.configFile = {
|
||||
"current_theme.xml" = {
|
||||
enable = true;
|
||||
text = ''
|
||||
<color0>${config.colorScheme.colors.base00}</color0>
|
||||
<color1>${config.colorScheme.colors.base01}</color1>
|
||||
<color2>${config.colorScheme.colors.base02}</color2>
|
||||
<color3>${config.colorScheme.colors.base03}</color3>
|
||||
<color4>${config.colorScheme.colors.base04}</color4>
|
||||
<color5>${config.colorScheme.colors.base05}</color5>
|
||||
<color6>${config.colorScheme.colors.base06}</color6>
|
||||
<color7>${config.colorScheme.colors.base07}</color7>
|
||||
<color8>${config.colorScheme.colors.base08}</color8>
|
||||
<color9>${config.colorScheme.colors.base09}</color9>
|
||||
<color10>${config.colorScheme.colors.base0A}</color10>
|
||||
<color11>${config.colorScheme.colors.base0B}</color11>
|
||||
<color12>${config.colorScheme.colors.base0C}</color12>
|
||||
<color13>${config.colorScheme.colors.base0D}</color13>
|
||||
<color14>${config.colorScheme.colors.base0E}</color14>
|
||||
<color15>${config.colorScheme.colors.base0F}</color15>
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
15
home-manager/dots/swappy.nix
Normal file
15
home-manager/dots/swappy.nix
Normal file
@ -0,0 +1,15 @@
|
||||
{ pkgs, config, ... }:
|
||||
{
|
||||
xdg.configFile = {
|
||||
"swappy/config" = {
|
||||
enable = true;
|
||||
text = ''
|
||||
[Default]
|
||||
save_dir=$HOME/Pictures/screenshots
|
||||
line_size=5
|
||||
text_size=20
|
||||
text_font=Comic Mono
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
30
home-manager/dots/swaylock.nix
Normal file
30
home-manager/dots/swaylock.nix
Normal file
@ -0,0 +1,30 @@
|
||||
{ pkgs, config, ... }:
|
||||
{
|
||||
programs.swaylock = {
|
||||
enable = true;
|
||||
settings = {
|
||||
color = "${config.colorScheme.colors.base00}";
|
||||
inside-color = "${config.colorScheme.colors.base01}";
|
||||
line-color = "${config.colorScheme.colors.base01}";
|
||||
ring-color = "${config.colorScheme.colors.base09}";
|
||||
text-color = "${config.colorScheme.colors.base05}";
|
||||
layout-bg-color = "${config.colorScheme.colors.base01}";
|
||||
layout-text-color = "${config.colorScheme.colors.base05}";
|
||||
inside-clear-color = "${config.colorScheme.colors.base04}";
|
||||
line-clear-color = "${config.colorScheme.colors.base01}";
|
||||
ring-clear-color = "${config.colorScheme.colors.base04}";
|
||||
text-clear-color = "${config.colorScheme.colors.base01}";
|
||||
inside-ver-color = "${config.colorScheme.colors.base09}";
|
||||
line-ver-color = "${config.colorScheme.colors.base01}";
|
||||
ring-ver-color = "${config.colorScheme.colors.base09}";
|
||||
text-ver-color = "${config.colorScheme.colors.base01}";
|
||||
inside-wrong-color = "${config.colorScheme.colors.base0B}";
|
||||
line-wrong-color = "${config.colorScheme.colors.base01}";
|
||||
ring-wrong-color = "${config.colorScheme.colors.base0B}";
|
||||
text-wrong-color = "${config.colorScheme.colors.base01}";
|
||||
bs-hl-color = "${config.colorScheme.colors.base0B}";
|
||||
key-hl-color = "${config.colorScheme.colors.base02}";
|
||||
text-caps-lock-color = "${config.colorScheme.colors.base05}";
|
||||
};
|
||||
};
|
||||
}
|
89
home-manager/dots/way-displays.nix
Normal file
89
home-manager/dots/way-displays.nix
Normal file
@ -0,0 +1,89 @@
|
||||
{ pkgs, config, ... }:
|
||||
{
|
||||
xdg.configFile = {
|
||||
"way-displays/cfg.yml" = {
|
||||
enable = true;
|
||||
text = ''
|
||||
# Default cfg.yaml for way-displays.
|
||||
# Copy this to ~/.config/way-displays/cfg.yaml and edit it to your liking.
|
||||
#
|
||||
# See https://github.com/alex-courtis/way-displays/blob/master/doc/CONFIGURATION.md
|
||||
|
||||
|
||||
# Arrange displays in a ROW (default, left to right) or a COLUMN (top to bottom)
|
||||
ARRANGE: ROW
|
||||
|
||||
# Align ROWs at the TOP (default), MIDDLE or BOTTOM
|
||||
# Align COLUMNs at the LEFT (default), MIDDLE or RIGHT
|
||||
ALIGN: TOP
|
||||
|
||||
|
||||
# The default ORDER is simply the order in which the displays are discovered.
|
||||
# Define your own.
|
||||
ORDER:
|
||||
- 'DP-1'
|
||||
- 'DP-2'
|
||||
|
||||
|
||||
# Enable scaling, overrides AUTO_SCALE and SCALE
|
||||
SCALING: TRUE
|
||||
|
||||
# The default is to scale each display by DPI.
|
||||
# This may be disabled and scale 1 will be used, unless a SCALE has been specified.
|
||||
AUTO_SCALE: TRUE
|
||||
|
||||
|
||||
# Auto scale may be overridden for each display.
|
||||
SCALE:
|
||||
#- NAME_DESC: 'monitor description'
|
||||
# SCALE: 1.75
|
||||
|
||||
# Override the preferred mode.
|
||||
# WARNING: this may result in an unusable display. See https://github.com/alex-courtis/way-displays#known-issues-with-workarounds
|
||||
# for a possible workaround.
|
||||
MODE:
|
||||
# Resolution and refresh
|
||||
#- NAME_DESC: HDMI-A-1
|
||||
# WIDTH: 1920
|
||||
# HEIGHT: 1080
|
||||
# HZ: 60
|
||||
|
||||
# Resolution with highest refresh
|
||||
#- NAME_DESC: 'monitor description'
|
||||
# WIDTH: 2560
|
||||
# HEIGHT: 1440
|
||||
|
||||
# Highest available
|
||||
- NAME_DESC: DP-1
|
||||
MAX: TRUE
|
||||
- NAME_DESC: DP-2
|
||||
MAX: TRUE
|
||||
|
||||
# Rotate or translate the display.
|
||||
# 90, 180, 270, FLIPPED, FLIPPED-90, FLIPPED-180, FLIPPED-270
|
||||
TRANSFORM:
|
||||
# - NAME_DESC: 'monitor description'
|
||||
# TRANSFORM: 270
|
||||
|
||||
# VRR / adaptive sync is enabled by default. Disable it per display.
|
||||
VRR_OFF:
|
||||
# - DP-2
|
||||
# - '!.*my monitor.*'
|
||||
|
||||
|
||||
# Laptop displays usually start with eDP e.g. eDP-1. This may be overridden if
|
||||
# your laptop is different.
|
||||
#LAPTOP_DISPLAY_PREFIX: 'eDP'
|
||||
|
||||
|
||||
# One of: ERROR, WARNING, INFO (default), DEBUG
|
||||
LOG_THRESHOLD: INFO
|
||||
|
||||
|
||||
# Disable the specified displays.
|
||||
DISABLED:
|
||||
#- "eDP-1"
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
@ -10,18 +10,4 @@
|
||||
"${config.xdg.dataHome}/flatpak/exports/share"
|
||||
];
|
||||
};
|
||||
gtk = {
|
||||
enable = true;
|
||||
theme = {
|
||||
name = "Dracula";
|
||||
package = pkgs.dracula-theme;
|
||||
};
|
||||
iconTheme = {
|
||||
name = "Dracula-Icon-Theme";
|
||||
package = pkgs.dracula-icon-theme;
|
||||
};
|
||||
font = {
|
||||
name = "Comic Mono";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
@ -2,38 +2,17 @@
|
||||
{ config, lib, pkgs, inputs, user, ... }:
|
||||
{
|
||||
imports = [
|
||||
inputs.nix-colors.homeManagerModules.default
|
||||
inputs.gtk-nix.homeManagerModule
|
||||
./gui.nix
|
||||
./dots/foot.nix
|
||||
./dots/mako.nix
|
||||
./dots/river.nix
|
||||
./dots/special.nix
|
||||
./dots/swappy.nix
|
||||
./dots/swaylock.nix
|
||||
./dots/way-displays.nix
|
||||
];
|
||||
xdg.configFile = {
|
||||
"foot" = {
|
||||
source = ./dots/foot;
|
||||
target = "foot";
|
||||
recursive = true;
|
||||
};
|
||||
"mako" = {
|
||||
source = ./dots/mako;
|
||||
target = "mako";
|
||||
recursive = true;
|
||||
};
|
||||
"river" = {
|
||||
source = ./dots/river;
|
||||
target = "river";
|
||||
recursive = true;
|
||||
};
|
||||
"swappy" = {
|
||||
source = ./dots/swappy;
|
||||
target = "swappy";
|
||||
recursive = true;
|
||||
};
|
||||
"swaylock" = {
|
||||
source = ./dots/swaylock;
|
||||
target = "swaylock";
|
||||
recursive = true;
|
||||
};
|
||||
"way-displays" = {
|
||||
source = ./dots/way-displays;
|
||||
target = "way-displays";
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
colorScheme = inputs.nix-colors.colorSchemes.nord;
|
||||
gtkNix.enable = true;
|
||||
}
|
||||
|
@ -12,7 +12,7 @@
|
||||
home-manager.nixosModules.home-manager {
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.extraSpecialArgs = { inherit user; };
|
||||
home-manager.extraSpecialArgs = { inherit user inputs; };
|
||||
home-manager.users.${user.name} = {
|
||||
imports = [
|
||||
../home-manager/wayland.nix
|
||||
|
2
todo.md
2
todo.md
@ -9,10 +9,8 @@
|
||||
- [Homeage Git Repo](https://github.com/jordanisaacs/homeage)
|
||||
- [Handling Secrets in NixOS](https://lgug2z.com/articles/handling-secrets-in-nixos-an-overview/)
|
||||
- [NixOS Secrets Management](https://onion.tube/watch?v=G5f6GC7SnhU)
|
||||
- [ ] Implement [Stylix](https://danth.github.io/stylix/)
|
||||
- [ ] Implement [MicroVM.nix](https://github.com/astro/microvm.nix)
|
||||
- [ ] Figure out urlview and yank conflict with tmux plugins
|
||||
- [ ] Implement [Nix-Colors](https://youtube.com/watch?v=jO2o0IN0LPE)
|
||||
- [ ] Fix autoupdate with remote flake repo
|
||||
- [ ] Wayland monitors swap positions after turning off and turning back on
|
||||
- [ ] GPG unlock prompt not happening on Wayland anymore
|
||||
|
Loading…
Reference in New Issue
Block a user