aboutsummaryrefslogtreecommitdiff
path: root/home/profiles
diff options
context:
space:
mode:
authorsefidel <contact@sefidel.net>2023-09-14 22:48:51 +0900
committersefidel <contact@sefidel.net>2023-09-14 22:48:51 +0900
commit037b50d6087faf294c657cae944c4a10b6d5250c (patch)
tree38d01e93782b5f2fa140e62e6bcaf4a508f7b21c /home/profiles
parent75b3280002b55e0be4ac97fb180af2248c710106 (diff)
downloadnixrc-037b50d6087faf294c657cae944c4a10b6d5250c.zip
feat(home): basic HiDPI support
Diffstat (limited to 'home/profiles')
-rw-r--r--home/profiles/browsing/default.nix11
-rw-r--r--home/profiles/gui/config/dunst.nix8
-rw-r--r--home/profiles/gui/config/foot.nix9
-rw-r--r--home/profiles/gui/config/sway.nix12
-rw-r--r--home/profiles/gui/config/waybar/style.nix9
-rw-r--r--home/profiles/gui/default.nix50
6 files changed, 80 insertions, 19 deletions
diff --git a/home/profiles/browsing/default.nix b/home/profiles/browsing/default.nix
index 396cc70..42e85f0 100644
--- a/home/profiles/browsing/default.nix
+++ b/home/profiles/browsing/default.nix
@@ -5,6 +5,14 @@ in
options.profiles.browsing = {
enable = lib.mkEnableOption
"A profile that enables a browser for the GUI and the terminal";
+
+ hiDpi = lib.mkOption {
+ type = lib.types.bool;
+ default = false;
+ description = ''
+ Tweak the browsers for better readability on HiDPI screens
+ '';
+ };
};
config = lib.mkIf cfg.enable {
@@ -36,6 +44,9 @@ in
settings = import ./qutebrowser-settings.nix // {
url.default_page = "https://searx.be";
url.start_pages = "https://searx.be";
+ } // lib.optionalAttrs (cfg.hiDpi) {
+ qt.highdpi = true;
+ fonts.default_size = "12pt";
};
};
diff --git a/home/profiles/gui/config/dunst.nix b/home/profiles/gui/config/dunst.nix
index 60ed15f..b614de5 100644
--- a/home/profiles/gui/config/dunst.nix
+++ b/home/profiles/gui/config/dunst.nix
@@ -1,6 +1,10 @@
-{ neotheme }:
+{ config, neotheme }:
with neotheme.colors;
+
+let
+ guiCfg = config.profiles.gui;
+in
{
global = {
padding = 8;
@@ -19,7 +23,7 @@ with neotheme.colors;
word_wrap = true;
show_indicators = false;
format = "<b>%s</b>\\n\\n%b";
- font = "Dina 10";
+ font = "${guiCfg.font.name} ${toString guiCfg.font.size}";
frame_color = "#${color3}";
separator_color = "auto";
max_icon_size = 80;
diff --git a/home/profiles/gui/config/foot.nix b/home/profiles/gui/config/foot.nix
index 9296b48..61fecf7 100644
--- a/home/profiles/gui/config/foot.nix
+++ b/home/profiles/gui/config/foot.nix
@@ -1,13 +1,16 @@
-{ neotheme }:
+{ config, neotheme }:
with neotheme.colors;
+let
+ guiCfg = config.profiles.gui;
+in
{
main = {
term = "foot";
- font = "Dina:pixelsize=13,JetBrainsMono Nerd Font:pixelsize=12";
+ font = "${guiCfg.font.name}:pixelsize=${toString guiCfg.font.pixelSize},JetBrainsMono Nerd Font:pixelsize=12";
letter-spacing = 0;
- dpi-aware = "yes";
+ # dpi-aware = "yes";
pad = "16x16 center";
};
diff --git a/home/profiles/gui/config/sway.nix b/home/profiles/gui/config/sway.nix
index 174b47e..dddf9d9 100644
--- a/home/profiles/gui/config/sway.nix
+++ b/home/profiles/gui/config/sway.nix
@@ -2,6 +2,9 @@
with neotheme.colors;
+let
+ guiCfg = config.profiles.gui;
+in
''
# disable power key
exec systemd-inhibit --what=handle-power-key --who="sway" --why="Sway manages power key behaviour" sleep infinity
@@ -25,7 +28,7 @@ with neotheme.colors;
bindsym $mod+Return exec $term
# set menu
- set $menu "${pkgs.bemenu}/bin/bemenu-run -H 18 -l 5 --fn 'Dina 13px' -p 'run::' --tb '$primary' --tf '$color0' --hb '$primary' --hf '$color0'"
+ set $menu "${pkgs.bemenu}/bin/bemenu-run -H 18 -l 5 --fn '${guiCfg.font.name} ${toString guiCfg.font.pixelSize}px' -p 'run::' --tb '$primary' --tf '$color0' --hb '$primary' --hf '$color0'"
bindsym $mod+d exec $menu
# set screenshot util
@@ -68,7 +71,7 @@ with neotheme.colors;
# kill focused
bindsym $mod+w kill
- font "pango:Dina 10"
+ font "pango:${guiCfg.font.name} ${toString guiCfg.font.size}"
# window rules
for_window [window_role="pop-up"] floating enable
@@ -199,8 +202,9 @@ with neotheme.colors;
client.unfocused $muted $muted $color7 $muted
client.urgent $color10 $color10 $color0 $color10
output "*" bg ${../../../../assets/annie-spratt-arctic.jpg} fill
- output "*" scale 1
- output "*" scale_filter nearest
+ output eDP-1 scale 1.25
+ # output "*" scale 1
+ # output "*" scale_filter smart
input type:touchpad {
tap enabled
diff --git a/home/profiles/gui/config/waybar/style.nix b/home/profiles/gui/config/waybar/style.nix
index d8714ed..5009ccb 100644
--- a/home/profiles/gui/config/waybar/style.nix
+++ b/home/profiles/gui/config/waybar/style.nix
@@ -1,13 +1,16 @@
-{ neotheme }:
+{ config, neotheme }:
with neotheme.colors;
+let
+ guiCfg = config.profiles.gui;
+in
''
* {
border: none;
border-radius: 0;
- font-family: "Dina, JetBrainsMono Nerd Font";
- font-size: 12px;
+ font-family: "${guiCfg.font.name}, JetBrainsMono Nerd Font";
+ font-size: ${toString guiCfg.font.pixelSize}px;
min-height: 0;
}
diff --git a/home/profiles/gui/default.nix b/home/profiles/gui/default.nix
index 8ed2409..65d2c4a 100644
--- a/home/profiles/gui/default.nix
+++ b/home/profiles/gui/default.nix
@@ -9,8 +9,30 @@ in
../../modules/misc/neotheme
];
- options.profiles.gui.enable = lib.mkEnableOption
- "The gui profile, sets up sway and related applications.";
+ options.profiles.gui = {
+ enable = lib.mkEnableOption
+ "The gui profile, sets up sway and related applications.";
+
+ font = {
+ name = lib.mkOption {
+ type = lib.types.str;
+ default = "Dina";
+ description = "Name of the primary font";
+ };
+
+ size = lib.mkOption {
+ type = lib.types.number;
+ default = 10;
+ description = "Size for the primary font";
+ };
+
+ pixelSize = lib.mkOption {
+ type = lib.types.number;
+ default = 13;
+ description = "Pixelsize(px) for the primary font";
+ };
+ };
+ };
config = lib.mkIf cfg.enable {
gtk.enable = true;
@@ -18,7 +40,7 @@ in
gtk.iconTheme.name = "Papirus-Dark";
gtk.theme.package = (pkgs.orchis-theme.override { tweaks = [ "primary" "compact" ]; });
gtk.theme.name = "Orchis-dark-compact";
- gtk.font.name = "Dina 10";
+ gtk.font.name = "${cfg.font.name} ${toString cfg.font.size}";
home.file.".icons/default".source = "${pkgs.vanilla-dmz}/share/icons/Vanilla-DMZ-AA";
@@ -87,7 +109,7 @@ in
};
extraSessionCommands = ''
- export XDG_CURRENT_DESKTOP=sway;
+ . "${config.home.profileDirectory}/etc/profile.d/hm-session-vars.sh"
'';
extraConfig = import ./config/sway.nix { inherit config pkgs neotheme; };
@@ -103,7 +125,7 @@ in
foot = {
enable = true;
- settings = import ./config/foot.nix { inherit neotheme; };
+ settings = import ./config/foot.nix { inherit config neotheme; };
};
waybar = {
@@ -111,14 +133,28 @@ in
settings = [ (import ./config/waybar/settings.nix { inherit neotheme; }) ];
- style = import ./config/waybar/style.nix { inherit neotheme; };
+ style = import ./config/waybar/style.nix { inherit config neotheme; };
};
};
services = {
dunst = {
enable = true;
- settings = import ./config/dunst.nix { inherit neotheme; };
+ settings = import ./config/dunst.nix { inherit config neotheme; };
+ };
+
+ kanshi = {
+ enable = true;
+ profiles = {
+ haruka-standalone = {
+ outputs = [
+ {
+ criteria = "AU Optronics 0xD291 Unknown";
+ scale = 1.25;
+ }
+ ];
+ };
+ };
};
swayidle =