diff options
| author | sefidel <contact@sefidel.net> | 2021-12-28 01:11:25 +0900 |
|---|---|---|
| committer | sefidel <contact@sefidel.net> | 2021-12-28 01:12:48 +0900 |
| commit | 56992b8c945d497a623fe693847c91235be1ae02 (patch) | |
| tree | 102ff8c8872d7e14ce3e3dba69bf16685374504e | |
| download | nixrc-56992b8c945d497a623fe693847c91235be1ae02.zip | |
initial commit
37 files changed, 2912 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..87a3018 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +result +*.qcow2 diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..1384694 --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,17 @@ +ISC License +=================================== + +Copyright (c) 2021, boopy <hi@boopy.dev> + +Permission to use, copy, modify, and/or distribute this software for any purpose +with or without fee is hereby granted, provided that the above copyright notice +and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS +OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF +THIS SOFTWARE. + diff --git a/README.md b/README.md new file mode 100644 index 0000000..a698ac9 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# nixrc diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..2dd7686 --- /dev/null +++ b/flake.lock @@ -0,0 +1,199 @@ +{ + "nodes": { + "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1627913399, + "narHash": "sha256-hY8g6H2KFL8ownSiFeMOjwPC8P0ueXpCVEbxgda3pko=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "12c64ca55c1014cdc1b16ed5a804aa8576601ff2", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-utils": { + "locked": { + "lastModified": 1629481132, + "narHash": "sha256-JHgasjPR0/J1J3DRm4KxM4zTyAj4IOJY8vIl75v/kPI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "997f7efcb746a9c140ce1f13c72263189225f482", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_2": { + "locked": { + "lastModified": 1638122382, + "narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "74f7e4319258e287b0f9cb95426c9853b282730b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "home-manager": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1638150501, + "narHash": "sha256-aWH3MRmjUtx8ciSGLegBJC5mhymsuroHPs74ZldrNTU=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "9de77227d7780518cfeaee5a917970247f3ecc56", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "rev": "9de77227d7780518cfeaee5a917970247f3ecc56", + "type": "github" + } + }, + "master": { + "locked": { + "lastModified": 1640618094, + "narHash": "sha256-EU/+hGhTdsUcdNV0kb2+U/DH7R41/mMlweFzLuEplhg=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "0736e7e3a90fb6d2ff6e11c077918220a253c9bc", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "master", + "repo": "nixpkgs", + "type": "github" + } + }, + "neovim": { + "inputs": { + "flake-utils": "flake-utils", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "dir": "contrib", + "lastModified": 1640605963, + "narHash": "sha256-1edQitEq3uWad0xLaWSNwukW7PCmE+JERCNoWno8tZ4=", + "owner": "neovim", + "repo": "neovim", + "rev": "9804a2870f6f308f788f939f52958e3fbd2adaac", + "type": "github" + }, + "original": { + "dir": "contrib", + "owner": "neovim", + "repo": "neovim", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1640554034, + "narHash": "sha256-gf7uo/CXrsna/S4Yfaklg8BnyRkDvo3poIzXCClyYaw=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "bd241e39f366eb7a41ea94f04f7af5c9508da632", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable-small", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-extra": { + "inputs": { + "flake-compat": "flake-compat", + "flake-utils": "flake-utils_2", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1640611846, + "narHash": "sha256-zktrWAhvlPPj+atu9jlkCdECUTB+vIbrGwBFMs1qThg=", + "ref": "main", + "rev": "94c32416b1a332060e58bb4d4c39f692eb6ced09", + "revCount": 1, + "type": "git", + "url": "https://git.sr.ht/~boppy/nixpkgs-extra" + }, + "original": { + "ref": "main", + "type": "git", + "url": "https://git.sr.ht/~boppy/nixpkgs-extra" + } + }, + "root": { + "inputs": { + "home-manager": "home-manager", + "master": "master", + "neovim": "neovim", + "nixpkgs": "nixpkgs", + "nixpkgs-extra": "nixpkgs-extra", + "sops-nix": "sops-nix", + "wallpapers": "wallpapers" + } + }, + "sops-nix": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1638821683, + "narHash": "sha256-oyqALhGijy2ZQxFSACrcC+Z8MzYLiomKCr9FQXVZ47U=", + "owner": "Mic92", + "repo": "sops-nix", + "rev": "afe00100b16648c1d79e62926caacac561df93a5", + "type": "github" + }, + "original": { + "owner": "Mic92", + "repo": "sops-nix", + "type": "github" + } + }, + "wallpapers": { + "flake": false, + "locked": { + "lastModified": 1640621312, + "narHash": "sha256-NGs2QRyMGc5HBNxCLQgCswCekerXhFNGh6NmCdiONo4=", + "ref": "main", + "rev": "4bb6eae09751cc23e89ebd4158fc779eb6cb919f", + "revCount": 1, + "type": "git", + "url": "https://git.sr.ht/~boppy/wall" + }, + "original": { + "ref": "main", + "type": "git", + "url": "https://git.sr.ht/~boppy/wall" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..1abccf3 --- /dev/null +++ b/flake.nix @@ -0,0 +1,42 @@ +{ + description = "boopy's nix flake dotfiles"; + + inputs = { + # Flake inputs + nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable-small"; + master.url = "github:nixos/nixpkgs/master"; + + # https://github.com/nix-community/home-manager/issues/2546 + home-manager.url = "github:nix-community/home-manager?rev=9de77227d7780518cfeaee5a917970247f3ecc56"; + home-manager.inputs.nixpkgs.follows = "nixpkgs"; + + sops-nix.url = "github:Mic92/sops-nix"; + sops-nix.inputs.nixpkgs.follows = "nixpkgs"; + + neovim.url = "github:neovim/neovim?dir=contrib"; + neovim.inputs.nixpkgs.follows = "nixpkgs"; + + # https://github.com/NixOS/nix/pull/5342 + nixpkgs-extra.url = "git+https://git.sr.ht/~boppy/nixpkgs-extra?ref=main"; + nixpkgs-extra.inputs.nixpkgs.follows = "nixpkgs"; + + wallpapers = { url = "git+https://git.sr.ht/~boppy/wall?ref=main"; flake = false; }; + }; + + outputs = { self, nixpkgs, ... } @ inputs: + { + nixosModules = import ./nixos/modules; + nixosConfigurations = import ./nixos/configurations inputs; + + homeModules = import ./home/modules; + homeConfigurations = import ./home/configurations inputs; + + packages.x86_64-linux = (import ./packages inputs) + // self.lib.nixosConfigurationsAsPackages.x86_64-linux + // self.lib.homeConfigurationsAsPackages.x86_64-linux; + + checks = self.packages; + + lib = import ./lib inputs; + }; +} diff --git a/home/configurations/boopy@alpha.nix b/home/configurations/boopy@alpha.nix new file mode 100644 index 0000000..af71030 --- /dev/null +++ b/home/configurations/boopy@alpha.nix @@ -0,0 +1,9 @@ +{ pkgs, nixpkgs, self, ... }: + +{ + config = { + activeProfiles = [ "browsing" "development" "messaging" "misc" ]; + + programs.htop.settings.detailed_cpu_time = true; + }; +} diff --git a/home/configurations/default.nix b/home/configurations/default.nix new file mode 100644 index 0000000..ac44363 --- /dev/null +++ b/home/configurations/default.nix @@ -0,0 +1,5 @@ +{ self, ... } @ inputs: + +{ + "boopy@alpha" = self.lib.mkHome "boopy" "alpha" "x86_64-linux" inputs.nixpkgs "22.05"; +} diff --git a/home/modules/default.nix b/home/modules/default.nix new file mode 100644 index 0000000..d290e17 --- /dev/null +++ b/home/modules/default.nix @@ -0,0 +1,13 @@ +{ + "profiles" = import ./profiles; + "profiles/base" = import ./profiles/base; + "profiles/browsing" = import ./profiles/browsing; + "profiles/development" = import ./profiles/development; + "profiles/messaging" = import ./profiles/messaging; + "profiles/misc" = import ./profiles/misc; + + "programs/nixpkgs" = import ./programs/nixpkgs; + "programs/zshell" = import ./programs/zshell; + + "misc/home" = import ./misc/home; +} diff --git a/home/modules/misc/home/default.nix b/home/modules/misc/home/default.nix new file mode 100644 index 0000000..80232e7 --- /dev/null +++ b/home/modules/misc/home/default.nix @@ -0,0 +1,31 @@ +{ config, pkgs, lib, nixpkgs, self, ... }: + +{ + profiles.base.enable = true; + fonts.fontconfig.enable = true; + + + home = { + stateVersion = "22.05"; + }; +} + + + + + + + + + + + + + + + + + + + + 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; + } +'' diff --git a/home/modules/profiles/base/default.nix b/home/modules/profiles/base/default.nix new file mode 100644 index 0000000..1c584f0 --- /dev/null +++ b/home/modules/profiles/base/default.nix @@ -0,0 +1,123 @@ +{ config, lib, pkgs, self, ... }: +let + cfg = config.profiles.base; + + inherit (self.packages.x86_64-linux) neovim iosevka-pure-bin sf-mono-liga-bin wallpapers; +in + { + options.profiles.base.enable = lib.mkEnableOption + "The base profile, should be always enabled"; + + config = lib.mkIf cfg.enable { + home.sessionVariables = rec { + EDITOR = "nvim"; + VISUAL = "nvim"; + GIT_EDITOR = EDITOR; + }; + + gtk.enable = true; + gtk.iconTheme.package = pkgs.papirus-icon-theme; + gtk.iconTheme.name = "Papirus-Dark"; + #gtk.theme.package = pkgs.phocus; + #gtk.theme.name = "phocus"; + + home.keyboard.layout = "us"; + home.packages = [ + pkgs.hydra-check + neovim + + # Fonts |
