aboutsummaryrefslogtreecommitdiff
path: root/home/modules/profiles/base/config
diff options
context:
space:
mode:
authorsefidel <contact@sefidel.net>2021-12-28 01:11:25 +0900
committersefidel <contact@sefidel.net>2021-12-28 01:12:48 +0900
commit56992b8c945d497a623fe693847c91235be1ae02 (patch)
tree102ff8c8872d7e14ce3e3dba69bf16685374504e /home/modules/profiles/base/config
downloadnixrc-56992b8c945d497a623fe693847c91235be1ae02.zip
initial commit
Diffstat (limited to 'home/modules/profiles/base/config')
-rw-r--r--home/modules/profiles/base/config/foot.nix33
-rw-r--r--home/modules/profiles/base/config/sway.nix202
-rw-r--r--home/modules/profiles/base/config/waybar-settings-new.nix68
-rw-r--r--home/modules/profiles/base/config/waybar-settings.nix68
-rw-r--r--home/modules/profiles/base/config/waybar-style.nix97
5 files changed, 468 insertions, 0 deletions
diff --git a/home/modules/profiles/base/config/foot.nix b/home/modules/profiles/base/config/foot.nix
new file mode 100644
index 0000000..d53dba7
--- /dev/null
+++ b/home/modules/profiles/base/config/foot.nix
@@ -0,0 +1,33 @@
+{
+ main = {
+ term = "foot";
+ font = "dina:size=10,Liga SFMono Nerd Font:size=10";
+ letter-spacing = 0;
+ line-height = 13;
+ dpi-aware = "yes";
+ pad = "16x16 center";
+ };
+
+ cursor.style = "beam";
+
+ colors = {
+ background = "18191f";
+ foreground = "cbc0ab";
+ regular0 = "222329";
+ regular1 = "b17f81";
+ regular2 = "8aa387";
+ regular3 = "d4ae80";
+ regular4 = "8896ae";
+ regular5 = "c495a2";
+ regular6 = "7aacaa";
+ regular7 = "d0d0c7";
+ bright0 = "36373d";
+ bright1 = "c59395";
+ bright2 = "9eb79b";
+ bright3 = "e8c294";
+ bright4 = "9caac2";
+ bright5 = "d8a9b6";
+ bright6 = "8ec0be";
+ bright7 = "e4e4db";
+ };
+} \ No newline at end of file
diff --git a/home/modules/profiles/base/config/sway.nix b/home/modules/profiles/base/config/sway.nix
new file mode 100644
index 0000000..d04673e
--- /dev/null
+++ b/home/modules/profiles/base/config/sway.nix
@@ -0,0 +1,202 @@
+{ pkgs, wallpapers }:
+
+''
+ exec autotiling
+
+ # set modifiers
+ set $mod Mod4
+ set $alt Mod1
+ set $floating_modifier $mod
+ set $left h
+ set $down j
+ set $up k
+ set $right l
+
+ # set terminal
+
+ set $term footclient
+ bindsym $mod+Return exec $term
+
+ # set menu
+ set $menu "${pkgs.bemenu}/bin/bemenu-run -H 18 -l 5 --fn 'Iosevka Pure 10.5' --tb '#c495a2' --tf '#18191f' --hb '#c495a2' --hf '#18191f'"
+ bindsym $mod+d exec $menu
+
+ # change focus
+ # vim-style
+ bindsym $mod+$left focus left
+ bindsym $mod+$down focus down
+ bindsym $mod+$up focus up
+ bindsym $mod+$right focus right
+ # arrows
+ bindsym $mod+Left focus left
+ bindsym $mod+Down focus down
+ bindsym $mod+Up focus up
+ bindsym $mod+Right focus right
+
+ # move focused window
+ # vim-style
+ bindsym $mod+Shift+$left move left
+ bindsym $mod+Shift+$down move down
+ bindsym $mod+Shift+$up move up
+ bindsym $mod+Shift+$right move right
+ # arrows
+ bindsym $mod+Shift+Left move left
+ bindsym $mod+Shift+Down move down
+ bindsym $mod+Shift+Up move up
+ bindsym $mod+Shift+Right move right
+
+ # split
+ bindsym $mod+c split h # horizontal
+ bindsym $mod+v split v # vertical
+
+ # fullscreen
+ bindsym $mod+e fullscreen toggle
+
+ # floating
+ bindsym $mod+f floating toggle
+
+ # kill focused
+ bindsym $mod+w kill
+
+ font "pango:Iosevka Pure 5"
+
+ # window rules
+ for_window [window_role="pop-up"] floating enable
+ for_window [window_role="bubble"] floating enable
+ for_window [window_role="task_dialog"] floating enable
+ for_window [window_role="Preferences"] floating enable
+ for_window [window_type="dialog"] floating enable
+ for_window [window_type="menu"] floating enable
+ for_window [class="mpv"] floating enable
+ for_window [class=".*"] inhibit_idle fullscreen
+ for_window [app_id=".*"] title_format ""
+ for_window [class=".*"] title_format ""
+
+ titlebar_border_thickness 0
+ titlebar_padding 0 0
+
+ # workspace names
+ set $ws1 "α"
+ set $ws2 "β"
+ set $ws3 "γ"
+ set $ws4 "δ"
+ set $ws5 "ε"
+ set $ws6 "ζ"
+ set $ws7 "η"
+ set $ws8 "θ"
+ set $ws9 "ι"
+ set $ws10 "κ"
+
+ # switch to named ws
+ bindsym $mod+1 workspace $ws1
+ bindsym $mod+2 workspace $ws2
+ bindsym $mod+3 workspace $ws3
+ bindsym $mod+4 workspace $ws4
+ bindsym $mod+5 workspace $ws5
+ bindsym $mod+6 workspace $ws6
+ bindsym $mod+7 workspace $ws7
+ bindsym $mod+8 workspace $ws8
+ bindsym $mod+9 workspace $ws9
+ bindsym $mod+0 workspace $ws10
+
+ # switch to prev/next ws
+ bindsym $mod+z workspace prev
+ bindsym $mod+x workspace next
+
+ # move focused container to ws
+ bindsym $mod+Shift+1 move container to workspace $ws1
+ bindsym $mod+Shift+2 move container to workspace $ws2
+ bindsym $mod+Shift+3 move container to workspace $ws3
+ bindsym $mod+Shift+4 move container to workspace $ws4
+ bindsym $mod+Shift+5 move container to workspace $ws5
+ bindsym $mod+Shift+6 move container to workspace $ws6
+ bindsym $mod+Shift+7 move container to workspace $ws7
+ bindsym $mod+Shift+8 move container to workspace $ws8
+ bindsym $mod+Shift+9 move container to workspace $ws9
+ bindsym $mod+Shift+0 move container to workspace $ws10
+ bindsym $mod+Shift+z move container to workspace prev
+ bindsym $mod+Shift+x move container to workspace next
+
+ # ws back-and-forth
+ workspace_auto_back_and_forth no
+
+ # reload
+ bindsym $mod+q reload
+
+ # application shortcuts
+ bindsym $mod+a exec sublime4
+ bindsym $mod+Shift+a exec brave
+
+ # Volume control
+ bindsym XF86AudioRaiseVolume exec ~/.local/bin/volume up
+ bindsym XF86AudioLowerVolume exec ~/.local/bin/volume down
+ bindsym XF86AudioMute exec ~/.local/bin/volume toggle
+ #HHKB
+ bindsym $mod+equal exec ~/.local/bin/volume up
+ bindsym $mod+minus exec ~/.local/bin/volume down
+ bindsym $mod+backslash exec ~/.local/bin/volume toggle
+
+ # Brightness
+ bindsym XF86MonBrightnessDown exec brightnessctl -q set 10%-
+ bindsym XF86MonBrightnessUp exec brightnessctl -q set 10%+
+
+ # Screenshot
+ bindsym $mod+Print exec grimshot copy area
+ bindsym Print exec grimshot copy active
+ bindsym $alt+Print exec grimshot save screen
+
+ # Toggle waybar
+ bindsym $mod+b exec pkill -USR1 waybar
+
+ # Exit
+ bindsym $mod+Shift+q exec swaynag -t warning -m 'Do you really want to exit sway?' -b 'Yes, exit sway' 'swaymsg exit'
+
+ # Aesthetics
+ default_border pixel 3
+ hide_edge_borders --i3 smart
+ gaps inner 8
+ smart_borders on
+
+ set $color0 #222329
+ set $color1 #b17f81
+ set $color2 #8aa387
+ set $color3 #d4ae80
+ set $color4 #8896ae
+ set $color5 #c495a2
+ set $color6 #7aacaa
+ set $color7 #d0d0c7
+ set $color8 #36373d
+ set $color9 #c59395
+ set $color10 #9eb79b
+ set $color11 #e8c294
+ set $color12 #9caac2
+ set $color13 #d8a9b6
+ set $color14 #8ec0be
+ set $color15 #e4e4db
+
+ set $primary $color5
+ set $muted #b58693
+
+ # class border backgr text indicator
+ client.focused $primary $primary $color0 $color5
+ client.focused_inactive $muted $muted $color0 $color5
+ client.unfocused $muted $muted $color7 $color5
+ client.urgent $color10 $color10 $color0 $color5
+ output "*" bg ${wallpapers}/nixos/nix-glow-gruvbox.png fill
+ output "*" scale 1
+ output "*" scale_filter nearest
+
+ input type:touchpad {
+ tap enabled
+ natural_scroll enabled
+ }
+
+ input type:keyboard {
+ repeat_rate 40
+ repeat_delay 350
+ xkb_layout us,se
+ # xkb_variant ,dvorak
+ xkb_options 'grp:alt_shift_toggle,caps:escape'
+ # xkb_options ctrl:swapcaps
+ }
+''
diff --git a/home/modules/profiles/base/config/waybar-settings-new.nix b/home/modules/profiles/base/config/waybar-settings-new.nix
new file mode 100644
index 0000000..4b55a05
--- /dev/null
+++ b/home/modules/profiles/base/config/waybar-settings-new.nix
@@ -0,0 +1,68 @@
+{
+ # DISCLAIMER! On 22.05, do NOT use this until https://github.com/nix-community/home-manager/issues/2546 is solved.
+ layer = "bottom";
+ position = "top";
+ height = 17;
+ modules-left = [ "sway/workspaces" "sway/language" "cpu" "memory" ];
+ modules-center = [ "clock" ];
+ modules-right = [ "custom/weather" "pulseaudio" "network" ];
+
+ "sway/workspaces" = {
+ all-outputs = true;
+
+ persistent_workspaces = {
+ "α" = [ ];
+ "β" = [ ];
+ "γ" = [ ];
+ "δ" = [ ];
+ "ε" = [ ];
+ "ζ" = [ ];
+ "η" = [ ];
+ "θ" = [ ];
+ "ι" = [ ];
+ "κ" = [ ];
+ };
+ };
+
+ "sway/language" = {
+ format = " {long}";
+ };
+
+ "clock" = {
+ interval = 10;
+ format = "{: %m/%d/%Y %I:%M %p}";
+ };
+
+ "cpu" = {
+ interval = 5;
+ format = " {load}%  {usage}%";
+ };
+
+ "custom/weather" = {
+ format = " {}";
+ exec = "curl 'wttr.in/?format='%t+-+%x+%C++%w'&M'";
+ interval = 3600;
+ };
+
+ "network" = {
+ interface = "enp4s0";
+ format = " {ifname}";
+ format-wifi = " {essid}";
+ format-ethernet = " {ifname} {ipaddr}";
+ format-disconnected = " Disconnected";
+ max-length = 50;
+ };
+
+ "pulseaudio" = {
+ format = "{icon} {volume}%";
+ format-muted = "婢 Muted";
+ format-source = "";
+ format-source-muted = "Muted";
+ format-icons.default = [ " " " " " " ];
+ };
+
+ "memory" = {
+ interval = 5;
+ format = " {used:0.1f}G / {total:0.1f}G ({percentage}%)";
+ };
+}
diff --git a/home/modules/profiles/base/config/waybar-settings.nix b/home/modules/profiles/base/config/waybar-settings.nix
new file mode 100644
index 0000000..e208895
--- /dev/null
+++ b/home/modules/profiles/base/config/waybar-settings.nix
@@ -0,0 +1,68 @@
+{
+ layer = "bottom";
+ position = "top";
+ height = 17;
+ modules-left = [ "sway/workspaces" "sway/language" "cpu" "memory" ];
+ modules-center = [ "clock" ];
+ modules-right = [ "custom/weather" "pulseaudio" "network" ];
+
+ modules = {
+ "sway/workspaces" = {
+ all-outputs = true;
+
+ persistent_workspaces = {
+ "α" = [ ];
+ "β" = [ ];
+ "γ" = [ ];
+ "δ" = [ ];
+ "ε" = [ ];
+ "ζ" = [ ];
+ "η" = [ ];
+ "θ" = [ ];
+ "ι" = [ ];
+ "κ" = [ ];
+ };
+ };
+
+ "sway/language" = {
+ format = " {long}";
+ };
+
+ "clock" = {
+ interval = 10;
+ format = "{: %m/%d/%Y %I:%M %p}";
+ };
+
+ "cpu" = {
+ interval = 5;
+ format = " {usage:3}%";
+ };
+
+ "custom/weather" = {
+ format = " {}";
+ exec = "curl 'wttr.in/?format='%t+-+%x+%C++%w'&M'";
+ interval = 3600;
+ };
+
+ "network" = {
+ interval = 5;
+ interface = "enp4s0";
+ format = " {ifname}";
+ format-wifi = " {essid}  {bandwidthUpBits}  {bandwidthDownBits}";
+ format-ethernet = "  {bandwidthUpBits:>}  {bandwidthDownBits:>}";
+ format-disconnected = " Disconnected";
+ max-length = 50;
+ };
+
+ "pulseaudio" = {
+ format = "{icon} {volume}%";
+ format-muted = "ﱝ Muted";
+ format-icons.default = [ " " " " " " ];
+ };
+
+ "memory" = {
+ interval = 5;
+ format = " {used:0.1f}G / {total:0.1f}G ({percentage:3}%)";
+ };
+ };
+}
diff --git a/home/modules/profiles/base/config/waybar-style.nix b/home/modules/profiles/base/config/waybar-style.nix
new file mode 100644
index 0000000..45edf60
--- /dev/null
+++ b/home/modules/profiles/base/config/waybar-style.nix
@@ -0,0 +1,97 @@
+''
+ * {
+ border: none;
+ border-radius: 0;
+ font-family: "JetBrainsMono Nerd Font";
+ font-size: 14px;
+ min-height: 0;
+ }
+
+ window#waybar {
+ background: #18191f;
+ color: #cbc0ab;
+ }
+
+ #workspaces button {
+ padding: 0 4px;
+ background: #c495a2;
+ color: #18191f;
+ border-bottom: 2px solid #c495a2;
+ }
+
+ #workspaces button.focused {
+ background: #c495a2;
+ border-bottom: 2px solid #18191f;
+ }
+
+ #clock,
+ #cpu,
+ #battery,
+ #temperature,
+ #backlight,
+ #network,
+ #memory,
+ #language,
+ #pulseaudio,
+ #tray,
+ #mode,
+ #mpd,
+ #custom-weather {
+ padding: 0 6px;
+ margin: 0;
+ background-color: #c495a2;
+ color: #18191f;
+ }
+
+ @keyframes blink {
+ to {
+ background-color: #c495a2;
+ color: #18191f;
+ }
+ }
+
+ #cpu {
+ background-color: #8bb0a6;
+ }
+
+ #network {
+ background-color: #8bb0a6;
+ }
+
+ #memory {
+ background-color: #8bb0a6;
+ }
+
+ #pulseaudio {
+ background-color: #8bb0a6;
+ }
+
+ #battery {
+ background-color: #8bb0a6;
+ }
+
+ #battery.full {
+ background-color: #8bb0a6;
+ color: #18191f;
+ }
+
+ #battery.discharging {
+ background-color: #8bb0a6;
+ color: #18191f;
+ }
+
+ #battery.charging {
+ background-color: #8bb0a6;
+ color: #18191f;
+ }
+
+ #battery.warning:not(.charging) {
+ background-color: #8bb0a6;
+ color: #18191f;
+ animation-name: blink;
+ animation-duration: 0.5s;
+ animation-timing-function: linear;
+ animation-iteration-count: infinite;
+ animation-direction: alternate;
+ }
+''