mirror of
https://github.com/Swarsel/.dotfiles.git
synced 2025-12-06 09:07:21 +01:00
feat(WIP): add modules for home-manager options
This commit is contained in:
parent
5acbfe0edd
commit
ec82754ae1
23 changed files with 1378 additions and 887 deletions
|
|
@ -116,9 +116,8 @@ For styling, I am using the [[https://github.com/danth/stylix][stylix]] NixOS mo
|
||||||
|
|
||||||
#+begin_src nix :tangle no :noweb-ref theme
|
#+begin_src nix :tangle no :noweb-ref theme
|
||||||
|
|
||||||
stylix = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
base16Scheme = ../../wallpaper/swarsel.yaml;
|
base16Scheme = ../../../wallpaper/swarsel.yaml;
|
||||||
# base16Scheme = "${pkgs.base16-schemes}/share/themes/shapeshifter.yaml";
|
# base16Scheme = "${pkgs.base16-schemes}/share/themes/shapeshifter.yaml";
|
||||||
polarity = "dark";
|
polarity = "dark";
|
||||||
opacity.popups = 0.5;
|
opacity.popups = 0.5;
|
||||||
|
|
@ -160,7 +159,6 @@ For styling, I am using the [[https://github.com/danth/stylix][stylix]] NixOS mo
|
||||||
name = "Noto Color Emoji";
|
name = "Noto Color Emoji";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
#+end_src
|
#+end_src
|
||||||
*** Waybar items - LAPTOPS
|
*** Waybar items - LAPTOPS
|
||||||
|
|
@ -534,7 +532,6 @@ Lastly I define some common module lists that I can simply load depending on the
|
||||||
|
|
||||||
# NixOS modules that can only be used on NixOS systems
|
# NixOS modules that can only be used on NixOS systems
|
||||||
nixModules = [
|
nixModules = [
|
||||||
(_: { nix.extraOptions = "experimental-features = nix-command flakes"; })
|
|
||||||
inputs.stylix.nixosModules.stylix
|
inputs.stylix.nixosModules.stylix
|
||||||
inputs.sops-nix.nixosModules.sops
|
inputs.sops-nix.nixosModules.sops
|
||||||
inputs.nswitch-rcm-nix.nixosModules.nswitch-rcm
|
inputs.nswitch-rcm-nix.nixosModules.nswitch-rcm
|
||||||
|
|
@ -560,6 +557,9 @@ Lastly I define some common module lists that I can simply load depending on the
|
||||||
|
|
||||||
inherit lib;
|
inherit lib;
|
||||||
inherit mixedModules;
|
inherit mixedModules;
|
||||||
|
nixosModules = import ./modules/nixos;
|
||||||
|
homeManagerModules = import ./modules/home;
|
||||||
|
|
||||||
packages = forEachSystem (pkgs: import ./pkgs { inherit pkgs; });
|
packages = forEachSystem (pkgs: import ./pkgs { inherit pkgs; });
|
||||||
devShells = forEachSystem
|
devShells = forEachSystem
|
||||||
(pkgs:
|
(pkgs:
|
||||||
|
|
@ -2092,9 +2092,10 @@ My new main machine.
|
||||||
{
|
{
|
||||||
home-manager.users.swarsel.imports = outputs.mixedModules ++ [
|
home-manager.users.swarsel.imports = outputs.mixedModules ++ [
|
||||||
./home.nix
|
./home.nix
|
||||||
];
|
] ++ (builtins.attrValues outputs.homeManagerModules);
|
||||||
}
|
}
|
||||||
];
|
]++ (builtins.attrValues outputs.nixosModules);
|
||||||
|
|
||||||
|
|
||||||
nixpkgs = {
|
nixpkgs = {
|
||||||
overlays = outputs.overlays;
|
overlays = outputs.overlays;
|
||||||
|
|
@ -2103,6 +2104,39 @@ My new main machine.
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# ------ -----
|
||||||
|
# | DP-4 | |eDP-1|
|
||||||
|
# ------ -----
|
||||||
|
home-manager.users.swarsel.swarselsystems = {
|
||||||
|
isLaptop = true;
|
||||||
|
isNixos = true;
|
||||||
|
monitors = {
|
||||||
|
main = {
|
||||||
|
name = "California Institute of Technology 0x1407 Unknown";
|
||||||
|
mode = "1920x1080"; # TEMPLATE
|
||||||
|
scale = "1";
|
||||||
|
position = "2560,0";
|
||||||
|
workspace = "2:二";
|
||||||
|
output = "eDP-1";
|
||||||
|
};
|
||||||
|
homedesktop = {
|
||||||
|
name = "Philips Consumer Electronics Company PHL BDM3270 AU11806002320";
|
||||||
|
mode = "2560x1440";
|
||||||
|
scale = "1";
|
||||||
|
position = "0,0";
|
||||||
|
workspace = "1:一";
|
||||||
|
output = "DP-4";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
inputs = {
|
||||||
|
"1:1:AT_Translated_Set_2_keyboard" = {
|
||||||
|
xkb_layout = "us";
|
||||||
|
xkb_options = "grp:win_space_toggle";
|
||||||
|
xkb_variant = "altgr-intl";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -2165,7 +2199,6 @@ Mostly just sets some opened ports for several games, enables virtualbox (which
|
||||||
};
|
};
|
||||||
|
|
||||||
stylix.image = ../../wallpaper/lenovowp.png;
|
stylix.image = ../../wallpaper/lenovowp.png;
|
||||||
<<theme>>
|
|
||||||
|
|
||||||
hardware = {
|
hardware = {
|
||||||
graphics = {
|
graphics = {
|
||||||
|
|
@ -2234,19 +2267,10 @@ Mostly just sets some opened ports for several games, enables virtualbox (which
|
||||||
This is basically just adjusted to the core count, path to the =hwmon= (this was very bothersome on this machine due to changing address), as well as making use of the top-row function keys.
|
This is basically just adjusted to the core count, path to the =hwmon= (this was very bothersome on this machine due to changing address), as well as making use of the top-row function keys.
|
||||||
|
|
||||||
#+begin_src nix :noweb yes :tangle profiles/fourside/home.nix
|
#+begin_src nix :noweb yes :tangle profiles/fourside/home.nix
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, lib, ... }: with lib;
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|
||||||
<<gpgagent>>
|
<<gpgagent>>
|
||||||
home = {
|
|
||||||
username = "swarsel";
|
|
||||||
homeDirectory = "/home/swarsel";
|
|
||||||
stateVersion = "23.05"; # TEMPLATE -- Please read the comment before changing.
|
|
||||||
keyboard.layout = "us"; # TEMPLATE
|
|
||||||
packages = with pkgs; [
|
|
||||||
];
|
|
||||||
};
|
|
||||||
sops.age.sshKeyPaths = [ "${config.home.homeDirectory}/.ssh/sops" ];
|
sops.age.sshKeyPaths = [ "${config.home.homeDirectory}/.ssh/sops" ];
|
||||||
|
|
||||||
# waybar config - TEMPLATE - update for cores and temp
|
# waybar config - TEMPLATE - update for cores and temp
|
||||||
|
|
@ -2262,45 +2286,11 @@ This is basically just adjusted to the core count, path to the =hwmon= (this was
|
||||||
wayland.windowManager.sway = {
|
wayland.windowManager.sway = {
|
||||||
config = rec {
|
config = rec {
|
||||||
# update for actual inputs here,
|
# update for actual inputs here,
|
||||||
input = {
|
|
||||||
"36125:53060:splitkb.com_Kyria_rev3" = {
|
|
||||||
xkb_layout = "us";
|
|
||||||
xkb_variant = "altgr-intl";
|
|
||||||
};
|
|
||||||
"1:1:AT_Translated_Set_2_keyboard" = {
|
|
||||||
# TEMPLATE
|
|
||||||
xkb_layout = "us";
|
|
||||||
xkb_options = "grp:win_space_toggle";
|
|
||||||
xkb_variant = "altgr-intl";
|
|
||||||
};
|
|
||||||
"type:touchpad" = {
|
|
||||||
dwt = "enabled";
|
|
||||||
tap = "enabled";
|
|
||||||
natural_scroll = "enabled";
|
|
||||||
middle_emulation = "enabled";
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
# workspaceOutputAssign = [
|
||||||
|
# { output = "eDP-1"; workspace = "1:一"; }
|
||||||
output = {
|
# { output = "DP-4"; workspace = "2:二"; }
|
||||||
eDP-1 = {
|
# ];
|
||||||
mode = "1920x1080"; # TEMPLATE
|
|
||||||
scale = "1";
|
|
||||||
position = "2560,0";
|
|
||||||
# bg = "~/.dotfiles/wallpaper/lenovowp.png fill";
|
|
||||||
};
|
|
||||||
DP-4 = {
|
|
||||||
mode = "2560x1440";
|
|
||||||
scale = "1";
|
|
||||||
# bg = "~/.dotfiles/wallpaper/lenovowp.png fill";
|
|
||||||
position = "0,0";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
workspaceOutputAssign = [
|
|
||||||
{ output = "eDP-1"; workspace = "1:一"; }
|
|
||||||
{ output = "DP-4"; workspace = "2:二"; }
|
|
||||||
];
|
|
||||||
|
|
||||||
|
|
||||||
keybindings =
|
keybindings =
|
||||||
|
|
@ -4404,7 +4394,7 @@ Lastly, the machine that runs matrix needs to regularly update, as otherwise you
|
||||||
}
|
}
|
||||||
|
|
||||||
#+end_src
|
#+end_src
|
||||||
** Manual Overlays and packages
|
** Overlays, packages, and modules
|
||||||
|
|
||||||
In this section I define packages that I manually want to nixpkgs. This can be useful for packages that are currently awaiting a PR or public packages that I do not want to maintain.
|
In this section I define packages that I manually want to nixpkgs. This can be useful for packages that are currently awaiting a PR or public packages that I do not want to maintain.
|
||||||
|
|
||||||
|
|
@ -4417,7 +4407,7 @@ As such, I also define three additional overlays:
|
||||||
3) =nixpkgs-stable=
|
3) =nixpkgs-stable=
|
||||||
This is simply a mirror of the most recent stable branch of nixpkgs. Useful for packages that are broken on nixpkgs, but do not need to be on bleeding edge anyways.
|
This is simply a mirror of the most recent stable branch of nixpkgs. Useful for packages that are broken on nixpkgs, but do not need to be on bleeding edge anyways.
|
||||||
|
|
||||||
*** pkgs
|
*** Packages
|
||||||
|
|
||||||
#+begin_src nix :tangle pkgs/default.nix
|
#+begin_src nix :tangle pkgs/default.nix
|
||||||
|
|
||||||
|
|
@ -4456,6 +4446,110 @@ As such, I also define three additional overlays:
|
||||||
|
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
*** Modules
|
||||||
|
|
||||||
|
In this section I define custom modules under the =swarsel= attribute. These are mostly used to define settings specific to a host. I keep these settings confined to either home-manager or nixos to maintain compatibility with non-NixOS machines.
|
||||||
|
|
||||||
|
**** NixOS
|
||||||
|
|
||||||
|
Modules that need to be loaded on the NixOS level. Note that these will not be available on systems that are not running NixOS
|
||||||
|
|
||||||
|
#+begin_src nix :tangle modules/nixos/default.nix
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
**** home-manager
|
||||||
|
|
||||||
|
#+BEGIN_src nix :tangle modules/home/default.nix
|
||||||
|
{
|
||||||
|
laptop = import ./laptop.nix;
|
||||||
|
monitors = import ./monitors.nix;
|
||||||
|
input = import ./input.nix;
|
||||||
|
nixos = import ./nixos.nix;
|
||||||
|
}
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
***** Laptop
|
||||||
|
|
||||||
|
#+begin_src nix :tangle modules/home/laptop.nix
|
||||||
|
{ lib, config, ... }:
|
||||||
|
{
|
||||||
|
options.swarselsystems.isLaptop = lib.mkEnableOption "laptop host";
|
||||||
|
config.swarselsystems.touchpad = lib.mkIf config.swarselsystems.isLaptop {
|
||||||
|
"type:touchpad" = {
|
||||||
|
dwt = "enabled";
|
||||||
|
tap = "enabled";
|
||||||
|
natural_scroll = "enabled";
|
||||||
|
middle_emulation = "enabled";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
***** Monitors
|
||||||
|
|
||||||
|
#+begin_src nix :tangle modules/home/monitors.nix
|
||||||
|
{ lib, config, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkOption types;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.swarselsystems.monitors = mkOption {
|
||||||
|
type = types.attrsOf (types.attrsOf types.str );
|
||||||
|
default = { };
|
||||||
|
};
|
||||||
|
}
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
***** Input
|
||||||
|
|
||||||
|
#+begin_src nix :tangle modules/home/input.nix
|
||||||
|
{ lib, config, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf mkOption types;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.swarselsystems.inputs = mkOption {
|
||||||
|
type = types.attrsOf (types.attrsOf types.str );
|
||||||
|
default = { };
|
||||||
|
};
|
||||||
|
options.swarselsystems.kyria = mkOption {
|
||||||
|
type = types.attrsOf (types.attrsOf types.str );
|
||||||
|
default = {
|
||||||
|
"36125:53060:splitkb.com_Kyria_rev3" = {
|
||||||
|
xkb_layout = "us";
|
||||||
|
xkb_variant = "altgr-intl";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
options.swarselsystems.touchpad = mkOption {
|
||||||
|
type = types.attrsOf (types.attrsOf types.str );
|
||||||
|
default = { };
|
||||||
|
};
|
||||||
|
options.swarselsystems.standardinputs = mkOption {
|
||||||
|
type = types.attrsOf (types.attrsOf types.str );
|
||||||
|
default = lib.recursiveUpdate (lib.recursiveUpdate config.swarselsystems.touchpad config.swarselsystems.kyria) config.swarselsystems.inputs;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
***** Nixos
|
||||||
|
|
||||||
|
|
||||||
|
#+begin_src nix :noweb yes :tangle modules/home/nixos.nix
|
||||||
|
|
||||||
|
{ lib, config, ... }:
|
||||||
|
{
|
||||||
|
options.swarselsystems.isNixos = lib.mkEnableOption "nixos host";
|
||||||
|
}
|
||||||
|
#+end_src
|
||||||
|
|
||||||
** Common NixOS
|
** Common NixOS
|
||||||
:PROPERTIES:
|
:PROPERTIES:
|
||||||
:CUSTOM_ID: h:1c1250cd-e9b4-4715-8d9f-eb09e64bfc7f
|
:CUSTOM_ID: h:1c1250cd-e9b4-4715-8d9f-eb09e64bfc7f
|
||||||
|
|
@ -4463,12 +4557,7 @@ As such, I also define three additional overlays:
|
||||||
|
|
||||||
These are system-level settings specific to NixOS machines. All settings that are required on all machines go here.
|
These are system-level settings specific to NixOS machines. All settings that are required on all machines go here.
|
||||||
|
|
||||||
*** General
|
*** Imports, enable home-manager module
|
||||||
:PROPERTIES:
|
|
||||||
:CUSTOM_ID: h:5a114da6-ef8d-404d-b31b-b51472908e77
|
|
||||||
:END:
|
|
||||||
|
|
||||||
**** Imports, enable home-manager module
|
|
||||||
:PROPERTIES:
|
:PROPERTIES:
|
||||||
:CUSTOM_ID: h:45e4315b-0929-4c47-b65a-c8f0a685f4df
|
:CUSTOM_ID: h:45e4315b-0929-4c47-b65a-c8f0a685f4df
|
||||||
:END:
|
:END:
|
||||||
|
|
@ -4502,6 +4591,7 @@ First, we enable the use of =home-manager= as a NixoS module
|
||||||
./interceptiontools.nix
|
./interceptiontools.nix
|
||||||
./hardwarecompatibility.nix
|
./hardwarecompatibility.nix
|
||||||
./login.nix
|
./login.nix
|
||||||
|
./stylix.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -4513,6 +4603,11 @@ First, we enable the use of =home-manager= as a NixoS module
|
||||||
|
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
*** General
|
||||||
|
:PROPERTIES:
|
||||||
|
:CUSTOM_ID: h:5a114da6-ef8d-404d-b31b-b51472908e77
|
||||||
|
:END:
|
||||||
|
|
||||||
**** Setup login keymap
|
**** Setup login keymap
|
||||||
:PROPERTIES:
|
:PROPERTIES:
|
||||||
:CUSTOM_ID: h:7248f338-8cad-4443-9060-deae7955b26f
|
:CUSTOM_ID: h:7248f338-8cad-4443-9060-deae7955b26f
|
||||||
|
|
@ -4532,7 +4627,6 @@ Next, we setup the keymap in case we are not in a graphical session. At this poi
|
||||||
}
|
}
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
|
||||||
**** Make users non-mutable
|
**** Make users non-mutable
|
||||||
:PROPERTIES:
|
:PROPERTIES:
|
||||||
:CUSTOM_ID: h:48959890-fbc7-4d28-b33c-f33e028ab473
|
:CUSTOM_ID: h:48959890-fbc7-4d28-b33c-f33e028ab473
|
||||||
|
|
@ -4582,21 +4676,6 @@ Next, we will setup some environment variables that need to be set on the system
|
||||||
}
|
}
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
**** Disallow stylix from styling grub
|
|
||||||
:PROPERTIES:
|
|
||||||
:CUSTOM_ID: h:b09c2bb6-86b7-46f4-a855-ac21dd9988b2
|
|
||||||
:END:
|
|
||||||
|
|
||||||
By default, [[https://github.com/danth/stylix][stylix]] wants to style GRUB as well. However, I think that looks horrible.
|
|
||||||
|
|
||||||
#+begin_src nix :tangle profiles/common/nixos/stylix.nix
|
|
||||||
{ ... }:
|
|
||||||
{
|
|
||||||
# dont style GRUB with stylix
|
|
||||||
stylix.targets.grub.enable = false; # the styling makes grub more ugly
|
|
||||||
}
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
**** Enable PolicyKit
|
**** Enable PolicyKit
|
||||||
:PROPERTIES:
|
:PROPERTIES:
|
||||||
:CUSTOM_ID: h:e2d40df9-0026-4caa-8476-9dc2353055a1
|
:CUSTOM_ID: h:e2d40df9-0026-4caa-8476-9dc2353055a1
|
||||||
|
|
@ -4998,6 +5077,21 @@ I use sops-nix to handle secrets that I want to have available on my machines at
|
||||||
}
|
}
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
*** Theme (stylix)
|
||||||
|
|
||||||
|
By default, [[https://github.com/danth/stylix][stylix]] wants to style GRUB as well. However, I think that looks horrible.
|
||||||
|
=theme= is defined in [[#h:5bc1b0c9-dc59-4c81-b5b5-e60699deda78][Theme (stylix)]].
|
||||||
|
|
||||||
|
#+begin_src nix :noweb yes :tangle profiles/common/nixos/stylix.nix
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
stylix = {
|
||||||
|
<<theme>>
|
||||||
|
targets.grub.enable = false; # the styling makes grub more ugly
|
||||||
|
};
|
||||||
|
}
|
||||||
|
#+end_src
|
||||||
|
|
||||||
*** System Packages
|
*** System Packages
|
||||||
:PROPERTIES:
|
:PROPERTIES:
|
||||||
:CUSTOM_ID: h:0e7e8bea-ec58-499c-9731-09dddfc39532
|
:CUSTOM_ID: h:0e7e8bea-ec58-499c-9731-09dddfc39532
|
||||||
|
|
@ -5375,7 +5469,7 @@ This section houses the greetd related settings. I do not really want to use a d
|
||||||
This section sets up all the imports that are used in the home-manager section.
|
This section sets up all the imports that are used in the home-manager section.
|
||||||
|
|
||||||
#+begin_src nix :tangle profiles/common/home/default.nix
|
#+begin_src nix :tangle profiles/common/home/default.nix
|
||||||
{ ... }:
|
{ lib, pkgs, config, outputs, ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./packages.nix
|
./packages.nix
|
||||||
|
|
@ -5405,6 +5499,32 @@ This section sets up all the imports that are used in the home-manager section.
|
||||||
./sway.nix
|
./sway.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
nix = {
|
||||||
|
package = lib.mkDefault pkgs.nix;
|
||||||
|
settings = {
|
||||||
|
experimental-features = [
|
||||||
|
"nix-command"
|
||||||
|
"flakes"
|
||||||
|
"ca-derivations"
|
||||||
|
];
|
||||||
|
warn-dirty = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
programs = {
|
||||||
|
git.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
home = {
|
||||||
|
username = lib.mkDefault "swarsel";
|
||||||
|
homeDirectory = lib.mkDefault "/home/${config.home.username}";
|
||||||
|
stateVersion = lib.mkDefault "23.05";
|
||||||
|
keyboard.layout = "us"; # TEMPLATE
|
||||||
|
sessionVariables = {
|
||||||
|
FLAKE = "$HOME/.dotfiles";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
|
@ -5888,7 +6008,7 @@ It is very convenient to have SSH aliases in place for machines that I use. This
|
||||||
}
|
}
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Fonts + Theme
|
*** Theme (stylix)
|
||||||
:PROPERTIES:
|
:PROPERTIES:
|
||||||
:CUSTOM_ID: h:a92318cd-413e-4e78-a478-e63b09df019c
|
:CUSTOM_ID: h:a92318cd-413e-4e78-a478-e63b09df019c
|
||||||
:END:
|
:END:
|
||||||
|
|
@ -5897,10 +6017,16 @@ These section allows home-manager to allow theme settings, and handles some othe
|
||||||
|
|
||||||
This section has been notably empty ever since switching to stylix. Only Emacs is not allowed to be styled by it, because it becomes more ugly compared to my handcrafted setup.
|
This section has been notably empty ever since switching to stylix. Only Emacs is not allowed to be styled by it, because it becomes more ugly compared to my handcrafted setup.
|
||||||
|
|
||||||
#+begin_src nix :tangle profiles/common/home/stylix.nix
|
=theme= is defined in [[#h:5bc1b0c9-dc59-4c81-b5b5-e60699deda78][Theme (stylix)]].
|
||||||
{ ... }:
|
|
||||||
|
#+begin_src nix :noweb yes :tangle profiles/common/home/stylix.nix
|
||||||
|
{ lib, config, pkgs, ... }:
|
||||||
{
|
{
|
||||||
stylix.targets.emacs.enable = false;
|
stylix = lib.mkIf (!config.swarselsystems.isNixos) {
|
||||||
|
<<theme>>
|
||||||
|
targets.emacs.enable = false;
|
||||||
|
targets.waybar.enable = false;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
|
@ -7022,7 +7148,8 @@ The `extraConfig` section here CANNOT be reindented. This has something to do wi
|
||||||
sort = "-time";
|
sort = "-time";
|
||||||
width = 300;
|
width = 300;
|
||||||
# font = "monospace 10";
|
# font = "monospace 10";
|
||||||
extraConfig = "[urgency=low]
|
extraConfig = ''
|
||||||
|
[urgency=low]
|
||||||
border-color=#cccccc
|
border-color=#cccccc
|
||||||
[urgency=normal]
|
[urgency=normal]
|
||||||
border-color=#d08770
|
border-color=#d08770
|
||||||
|
|
@ -7032,9 +7159,9 @@ The `extraConfig` section here CANNOT be reindented. This has something to do wi
|
||||||
[category=mpd]
|
[category=mpd]
|
||||||
default-timeout=2000
|
default-timeout=2000
|
||||||
group-by=category
|
group-by=category
|
||||||
";
|
'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Sway
|
*** Sway
|
||||||
|
|
@ -7047,7 +7174,20 @@ I am currently using SwayFX, which adds some nice effects to sway, like rounded
|
||||||
Currently, I am too lazy to explain every option here, but most of it is very self-explaining in any case.
|
Currently, I am too lazy to explain every option here, but most of it is very self-explaining in any case.
|
||||||
|
|
||||||
#+begin_src nix :tangle profiles/common/home/sway.nix
|
#+begin_src nix :tangle profiles/common/home/sway.nix
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, lib, ... }: with lib;
|
||||||
|
let
|
||||||
|
monitors = config.swarselsystems.monitors;
|
||||||
|
eachMonitor = _name: monitor: {
|
||||||
|
name = monitor.name;
|
||||||
|
value = builtins.removeAttrs monitor [ "workspace" "name" "output" ];
|
||||||
|
};
|
||||||
|
eachOutput = _name: monitor: {
|
||||||
|
name = monitor.name;
|
||||||
|
value = builtins.removeAttrs monitor [ "mode" "name" "scale" "position" ];
|
||||||
|
};
|
||||||
|
workplaceSets = (mapAttrs' eachOutput monitors);
|
||||||
|
workplaceOutputs = (map (key: getAttr key workplaceSets) (attrNames workplaceSets));
|
||||||
|
in
|
||||||
{
|
{
|
||||||
wayland.windowManager.sway = {
|
wayland.windowManager.sway = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
@ -7147,6 +7287,9 @@ Currently, I am too lazy to explain every option here, but most of it is very se
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
defaultWorkspace = "workspace 1:一";
|
defaultWorkspace = "workspace 1:一";
|
||||||
|
output = (mapAttrs' eachMonitor monitors);
|
||||||
|
input = config.swarselsystems.standardinputs;
|
||||||
|
workspaceOutputAssign = workplaceOutputs;
|
||||||
startup = [
|
startup = [
|
||||||
{ command = "kitty -T kittyterm"; }
|
{ command = "kitty -T kittyterm"; }
|
||||||
{ command = "sleep 60; kitty -T spotifytui -o confirm_os_window_close=0 spotify_player"; }
|
{ command = "sleep 60; kitty -T spotifytui -o confirm_os_window_close=0 spotify_player"; }
|
||||||
|
|
|
||||||
|
|
@ -115,7 +115,6 @@
|
||||||
|
|
||||||
# NixOS modules that can only be used on NixOS systems
|
# NixOS modules that can only be used on NixOS systems
|
||||||
nixModules = [
|
nixModules = [
|
||||||
(_: { nix.extraOptions = "experimental-features = nix-command flakes"; })
|
|
||||||
inputs.stylix.nixosModules.stylix
|
inputs.stylix.nixosModules.stylix
|
||||||
inputs.sops-nix.nixosModules.sops
|
inputs.sops-nix.nixosModules.sops
|
||||||
inputs.nswitch-rcm-nix.nixosModules.nswitch-rcm
|
inputs.nswitch-rcm-nix.nixosModules.nswitch-rcm
|
||||||
|
|
@ -139,6 +138,9 @@
|
||||||
|
|
||||||
inherit lib;
|
inherit lib;
|
||||||
inherit mixedModules;
|
inherit mixedModules;
|
||||||
|
nixosModules = import ./modules/nixos;
|
||||||
|
homeManagerModules = import ./modules/home;
|
||||||
|
|
||||||
packages = forEachSystem (pkgs: import ./pkgs { inherit pkgs; });
|
packages = forEachSystem (pkgs: import ./pkgs { inherit pkgs; });
|
||||||
devShells = forEachSystem
|
devShells = forEachSystem
|
||||||
(pkgs:
|
(pkgs:
|
||||||
|
|
|
||||||
621
index.html
621
index.html
File diff suppressed because it is too large
Load diff
6
modules/home/default.nix
Normal file
6
modules/home/default.nix
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
laptop = import ./laptop.nix;
|
||||||
|
monitors = import ./monitors.nix;
|
||||||
|
input = import ./input.nix;
|
||||||
|
nixos = import ./nixos.nix;
|
||||||
|
}
|
||||||
29
modules/home/input.nix
Normal file
29
modules/home/input.nix
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
{ lib, config, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf mkOption types;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.swarselsystems.inputs = mkOption {
|
||||||
|
type = types.attrsOf (types.attrsOf types.str);
|
||||||
|
default = { };
|
||||||
|
};
|
||||||
|
options.swarselsystems.kyria = mkOption {
|
||||||
|
type = types.attrsOf (types.attrsOf types.str);
|
||||||
|
default = {
|
||||||
|
"36125:53060:splitkb.com_Kyria_rev3" = {
|
||||||
|
xkb_layout = "us";
|
||||||
|
xkb_variant = "altgr-intl";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
options.swarselsystems.touchpad = mkOption {
|
||||||
|
type = types.attrsOf (types.attrsOf types.str);
|
||||||
|
default = { };
|
||||||
|
};
|
||||||
|
options.swarselsystems.standardinputs = mkOption {
|
||||||
|
type = types.attrsOf (types.attrsOf types.str);
|
||||||
|
default = lib.recursiveUpdate (lib.recursiveUpdate config.swarselsystems.touchpad config.swarselsystems.kyria) config.swarselsystems.inputs;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
12
modules/home/laptop.nix
Normal file
12
modules/home/laptop.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{ lib, config, ... }:
|
||||||
|
{
|
||||||
|
options.swarselsystems.isLaptop = lib.mkEnableOption "laptop host";
|
||||||
|
config.swarselsystems.touchpad = lib.mkIf config.swarselsystems.isLaptop {
|
||||||
|
"type:touchpad" = {
|
||||||
|
dwt = "enabled";
|
||||||
|
tap = "enabled";
|
||||||
|
natural_scroll = "enabled";
|
||||||
|
middle_emulation = "enabled";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
10
modules/home/monitors.nix
Normal file
10
modules/home/monitors.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
{ lib, config, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkOption types;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.swarselsystems.monitors = mkOption {
|
||||||
|
type = types.attrsOf (types.attrsOf types.str);
|
||||||
|
default = { };
|
||||||
|
};
|
||||||
|
}
|
||||||
4
modules/home/nixos.nix
Normal file
4
modules/home/nixos.nix
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
{ lib, config, ... }:
|
||||||
|
{
|
||||||
|
options.swarselsystems.isNixos = lib.mkEnableOption "nixos host";
|
||||||
|
}
|
||||||
1
modules/nixos/default.nix
Normal file
1
modules/nixos/default.nix
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
{ }
|
||||||
|
|
@ -38,9 +38,8 @@
|
||||||
|
|
||||||
stylix.image = ../../wallpaper/TEMPLATEwp.png;
|
stylix.image = ../../wallpaper/TEMPLATEwp.png;
|
||||||
|
|
||||||
stylix = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
base16Scheme = ../../wallpaper/swarsel.yaml;
|
base16Scheme = ../../../wallpaper/swarsel.yaml;
|
||||||
# base16Scheme = "${pkgs.base16-schemes}/share/themes/shapeshifter.yaml";
|
# base16Scheme = "${pkgs.base16-schemes}/share/themes/shapeshifter.yaml";
|
||||||
polarity = "dark";
|
polarity = "dark";
|
||||||
opacity.popups = 0.5;
|
opacity.popups = 0.5;
|
||||||
|
|
@ -82,7 +81,6 @@
|
||||||
name = "Noto Color Emoji";
|
name = "Noto Color Emoji";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
# Configure keymap in X11 (only used for login)
|
# Configure keymap in X11 (only used for login)
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
{ ... }:
|
{ lib, pkgs, config, outputs, ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./packages.nix
|
./packages.nix
|
||||||
|
|
@ -28,4 +28,30 @@
|
||||||
./sway.nix
|
./sway.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
nix = {
|
||||||
|
package = lib.mkDefault pkgs.nix;
|
||||||
|
settings = {
|
||||||
|
experimental-features = [
|
||||||
|
"nix-command"
|
||||||
|
"flakes"
|
||||||
|
"ca-derivations"
|
||||||
|
];
|
||||||
|
warn-dirty = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
programs = {
|
||||||
|
git.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
home = {
|
||||||
|
username = lib.mkDefault "swarsel";
|
||||||
|
homeDirectory = lib.mkDefault "/home/${config.home.username}";
|
||||||
|
stateVersion = lib.mkDefault "23.05";
|
||||||
|
keyboard.layout = "us"; # TEMPLATE
|
||||||
|
sessionVariables = {
|
||||||
|
FLAKE = "$HOME/.dotfiles";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,8 @@
|
||||||
sort = "-time";
|
sort = "-time";
|
||||||
width = 300;
|
width = 300;
|
||||||
# font = "monospace 10";
|
# font = "monospace 10";
|
||||||
extraConfig = "[urgency=low]
|
extraConfig = ''
|
||||||
|
[urgency=low]
|
||||||
border-color=#cccccc
|
border-color=#cccccc
|
||||||
[urgency=normal]
|
[urgency=normal]
|
||||||
border-color=#d08770
|
border-color=#d08770
|
||||||
|
|
@ -25,6 +26,6 @@
|
||||||
[category=mpd]
|
[category=mpd]
|
||||||
default-timeout=2000
|
default-timeout=2000
|
||||||
group-by=category
|
group-by=category
|
||||||
";
|
'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,52 @@
|
||||||
{ ... }:
|
{ lib, config, pkgs, ... }:
|
||||||
{
|
{
|
||||||
stylix.targets.emacs.enable = false;
|
stylix = lib.mkIf (!config.swarselsystems.isNixos) {
|
||||||
|
|
||||||
|
enable = true;
|
||||||
|
base16Scheme = ../../../wallpaper/swarsel.yaml;
|
||||||
|
# base16Scheme = "${pkgs.base16-schemes}/share/themes/shapeshifter.yaml";
|
||||||
|
polarity = "dark";
|
||||||
|
opacity.popups = 0.5;
|
||||||
|
cursor = {
|
||||||
|
package = pkgs.capitaine-cursors;
|
||||||
|
name = "capitaine-cursors";
|
||||||
|
size = 16;
|
||||||
|
};
|
||||||
|
fonts = {
|
||||||
|
sizes = {
|
||||||
|
terminal = 10;
|
||||||
|
applications = 11;
|
||||||
|
};
|
||||||
|
serif = {
|
||||||
|
# package = (pkgs.nerdfonts.override { fonts = [ "FiraMono" "FiraCode"]; });
|
||||||
|
package = pkgs.cantarell-fonts;
|
||||||
|
# package = pkgs.montserrat;
|
||||||
|
name = "Cantarell";
|
||||||
|
# name = "FiraCode Nerd Font Propo";
|
||||||
|
# name = "Montserrat";
|
||||||
|
};
|
||||||
|
|
||||||
|
sansSerif = {
|
||||||
|
# package = (pkgs.nerdfonts.override { fonts = [ "FiraMono" "FiraCode"]; });
|
||||||
|
package = pkgs.cantarell-fonts;
|
||||||
|
# package = pkgs.montserrat;
|
||||||
|
name = "Cantarell";
|
||||||
|
# name = "FiraCode Nerd Font Propo";
|
||||||
|
# name = "Montserrat";
|
||||||
|
};
|
||||||
|
|
||||||
|
monospace = {
|
||||||
|
package = pkgs.nerdfonts.override { fonts = [ "FiraCode" ]; };
|
||||||
|
name = "FiraCode Nerd Font Mono";
|
||||||
|
};
|
||||||
|
|
||||||
|
emoji = {
|
||||||
|
package = pkgs.noto-fonts-emoji;
|
||||||
|
name = "Noto Color Emoji";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
targets.emacs.enable = false;
|
||||||
|
targets.waybar.enable = false;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,17 @@
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, lib, ... }: with lib;
|
||||||
|
let
|
||||||
|
monitors = config.swarselsystems.monitors;
|
||||||
|
eachMonitor = _name: monitor: {
|
||||||
|
name = monitor.name;
|
||||||
|
value = builtins.removeAttrs monitor [ "workspace" "name" "output" ];
|
||||||
|
};
|
||||||
|
eachOutput = _name: monitor: {
|
||||||
|
name = monitor.name;
|
||||||
|
value = builtins.removeAttrs monitor [ "mode" "name" "scale" "position" ];
|
||||||
|
};
|
||||||
|
workplaceSets = (mapAttrs' eachOutput monitors);
|
||||||
|
workplaceOutputs = (map (key: getAttr key workplaceSets) (attrNames workplaceSets));
|
||||||
|
in
|
||||||
{
|
{
|
||||||
wayland.windowManager.sway = {
|
wayland.windowManager.sway = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
@ -98,6 +111,9 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
defaultWorkspace = "workspace 1:一";
|
defaultWorkspace = "workspace 1:一";
|
||||||
|
output = (mapAttrs' eachMonitor monitors);
|
||||||
|
input = config.swarselsystems.standardinputs;
|
||||||
|
workspaceOutputAssign = workplaceOutputs;
|
||||||
startup = [
|
startup = [
|
||||||
{ command = "kitty -T kittyterm"; }
|
{ command = "kitty -T kittyterm"; }
|
||||||
{ command = "sleep 60; kitty -T spotifytui -o confirm_os_window_close=0 spotify_player"; }
|
{ command = "sleep 60; kitty -T spotifytui -o confirm_os_window_close=0 spotify_player"; }
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,7 @@
|
||||||
./interceptiontools.nix
|
./interceptiontools.nix
|
||||||
./hardwarecompatibility.nix
|
./hardwarecompatibility.nix
|
||||||
./login.nix
|
./login.nix
|
||||||
|
./stylix.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,51 @@
|
||||||
{ ... }:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
# dont style GRUB with stylix
|
stylix = {
|
||||||
stylix.targets.grub.enable = false; # the styling makes grub more ugly
|
|
||||||
|
enable = true;
|
||||||
|
base16Scheme = ../../../wallpaper/swarsel.yaml;
|
||||||
|
# base16Scheme = "${pkgs.base16-schemes}/share/themes/shapeshifter.yaml";
|
||||||
|
polarity = "dark";
|
||||||
|
opacity.popups = 0.5;
|
||||||
|
cursor = {
|
||||||
|
package = pkgs.capitaine-cursors;
|
||||||
|
name = "capitaine-cursors";
|
||||||
|
size = 16;
|
||||||
|
};
|
||||||
|
fonts = {
|
||||||
|
sizes = {
|
||||||
|
terminal = 10;
|
||||||
|
applications = 11;
|
||||||
|
};
|
||||||
|
serif = {
|
||||||
|
# package = (pkgs.nerdfonts.override { fonts = [ "FiraMono" "FiraCode"]; });
|
||||||
|
package = pkgs.cantarell-fonts;
|
||||||
|
# package = pkgs.montserrat;
|
||||||
|
name = "Cantarell";
|
||||||
|
# name = "FiraCode Nerd Font Propo";
|
||||||
|
# name = "Montserrat";
|
||||||
|
};
|
||||||
|
|
||||||
|
sansSerif = {
|
||||||
|
# package = (pkgs.nerdfonts.override { fonts = [ "FiraMono" "FiraCode"]; });
|
||||||
|
package = pkgs.cantarell-fonts;
|
||||||
|
# package = pkgs.montserrat;
|
||||||
|
name = "Cantarell";
|
||||||
|
# name = "FiraCode Nerd Font Propo";
|
||||||
|
# name = "Montserrat";
|
||||||
|
};
|
||||||
|
|
||||||
|
monospace = {
|
||||||
|
package = pkgs.nerdfonts.override { fonts = [ "FiraCode" ]; };
|
||||||
|
name = "FiraCode Nerd Font Mono";
|
||||||
|
};
|
||||||
|
|
||||||
|
emoji = {
|
||||||
|
package = pkgs.noto-fonts-emoji;
|
||||||
|
name = "Noto Color Emoji";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
targets.grub.enable = false; # the styling makes grub more ugly
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -9,9 +9,10 @@
|
||||||
{
|
{
|
||||||
home-manager.users.swarsel.imports = outputs.mixedModules ++ [
|
home-manager.users.swarsel.imports = outputs.mixedModules ++ [
|
||||||
./home.nix
|
./home.nix
|
||||||
];
|
] ++ (builtins.attrValues outputs.homeManagerModules);
|
||||||
}
|
}
|
||||||
];
|
] ++ (builtins.attrValues outputs.nixosModules);
|
||||||
|
|
||||||
|
|
||||||
nixpkgs = {
|
nixpkgs = {
|
||||||
overlays = outputs.overlays;
|
overlays = outputs.overlays;
|
||||||
|
|
@ -20,4 +21,37 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# ------ -----
|
||||||
|
# | DP-4 | |eDP-1|
|
||||||
|
# ------ -----
|
||||||
|
home-manager.users.swarsel.swarselsystems = {
|
||||||
|
isLaptop = true;
|
||||||
|
isNixos = true;
|
||||||
|
monitors = {
|
||||||
|
main = {
|
||||||
|
name = "California Institute of Technology 0x1407 Unknown";
|
||||||
|
mode = "1920x1080"; # TEMPLATE
|
||||||
|
scale = "1";
|
||||||
|
position = "2560,0";
|
||||||
|
workspace = "2:二";
|
||||||
|
output = "eDP-1";
|
||||||
|
};
|
||||||
|
homedesktop = {
|
||||||
|
name = "Philips Consumer Electronics Company PHL BDM3270 AU11806002320";
|
||||||
|
mode = "2560x1440";
|
||||||
|
scale = "1";
|
||||||
|
position = "0,0";
|
||||||
|
workspace = "1:一";
|
||||||
|
output = "DP-4";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
inputs = {
|
||||||
|
"1:1:AT_Translated_Set_2_keyboard" = {
|
||||||
|
xkb_layout = "us";
|
||||||
|
xkb_options = "grp:win_space_toggle";
|
||||||
|
xkb_variant = "altgr-intl";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, lib, ... }: with lib;
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -16,14 +15,6 @@
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
home = {
|
|
||||||
username = "swarsel";
|
|
||||||
homeDirectory = "/home/swarsel";
|
|
||||||
stateVersion = "23.05"; # TEMPLATE -- Please read the comment before changing.
|
|
||||||
keyboard.layout = "us"; # TEMPLATE
|
|
||||||
packages = with pkgs; [
|
|
||||||
];
|
|
||||||
};
|
|
||||||
sops.age.sshKeyPaths = [ "${config.home.homeDirectory}/.ssh/sops" ];
|
sops.age.sshKeyPaths = [ "${config.home.homeDirectory}/.ssh/sops" ];
|
||||||
|
|
||||||
# waybar config - TEMPLATE - update for cores and temp
|
# waybar config - TEMPLATE - update for cores and temp
|
||||||
|
|
@ -57,45 +48,11 @@
|
||||||
wayland.windowManager.sway = {
|
wayland.windowManager.sway = {
|
||||||
config = rec {
|
config = rec {
|
||||||
# update for actual inputs here,
|
# update for actual inputs here,
|
||||||
input = {
|
|
||||||
"36125:53060:splitkb.com_Kyria_rev3" = {
|
|
||||||
xkb_layout = "us";
|
|
||||||
xkb_variant = "altgr-intl";
|
|
||||||
};
|
|
||||||
"1:1:AT_Translated_Set_2_keyboard" = {
|
|
||||||
# TEMPLATE
|
|
||||||
xkb_layout = "us";
|
|
||||||
xkb_options = "grp:win_space_toggle";
|
|
||||||
xkb_variant = "altgr-intl";
|
|
||||||
};
|
|
||||||
"type:touchpad" = {
|
|
||||||
dwt = "enabled";
|
|
||||||
tap = "enabled";
|
|
||||||
natural_scroll = "enabled";
|
|
||||||
middle_emulation = "enabled";
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
# workspaceOutputAssign = [
|
||||||
|
# { output = "eDP-1"; workspace = "1:一"; }
|
||||||
output = {
|
# { output = "DP-4"; workspace = "2:二"; }
|
||||||
eDP-1 = {
|
# ];
|
||||||
mode = "1920x1080"; # TEMPLATE
|
|
||||||
scale = "1";
|
|
||||||
position = "2560,0";
|
|
||||||
# bg = "~/.dotfiles/wallpaper/lenovowp.png fill";
|
|
||||||
};
|
|
||||||
DP-4 = {
|
|
||||||
mode = "2560x1440";
|
|
||||||
scale = "1";
|
|
||||||
# bg = "~/.dotfiles/wallpaper/lenovowp.png fill";
|
|
||||||
position = "0,0";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
workspaceOutputAssign = [
|
|
||||||
{ output = "eDP-1"; workspace = "1:一"; }
|
|
||||||
{ output = "DP-4"; workspace = "2:二"; }
|
|
||||||
];
|
|
||||||
|
|
||||||
|
|
||||||
keybindings =
|
keybindings =
|
||||||
|
|
|
||||||
|
|
@ -48,53 +48,6 @@
|
||||||
|
|
||||||
stylix.image = ../../wallpaper/lenovowp.png;
|
stylix.image = ../../wallpaper/lenovowp.png;
|
||||||
|
|
||||||
stylix = {
|
|
||||||
enable = true;
|
|
||||||
base16Scheme = ../../wallpaper/swarsel.yaml;
|
|
||||||
# base16Scheme = "${pkgs.base16-schemes}/share/themes/shapeshifter.yaml";
|
|
||||||
polarity = "dark";
|
|
||||||
opacity.popups = 0.5;
|
|
||||||
cursor = {
|
|
||||||
package = pkgs.capitaine-cursors;
|
|
||||||
name = "capitaine-cursors";
|
|
||||||
size = 16;
|
|
||||||
};
|
|
||||||
fonts = {
|
|
||||||
sizes = {
|
|
||||||
terminal = 10;
|
|
||||||
applications = 11;
|
|
||||||
};
|
|
||||||
serif = {
|
|
||||||
# package = (pkgs.nerdfonts.override { fonts = [ "FiraMono" "FiraCode"]; });
|
|
||||||
package = pkgs.cantarell-fonts;
|
|
||||||
# package = pkgs.montserrat;
|
|
||||||
name = "Cantarell";
|
|
||||||
# name = "FiraCode Nerd Font Propo";
|
|
||||||
# name = "Montserrat";
|
|
||||||
};
|
|
||||||
|
|
||||||
sansSerif = {
|
|
||||||
# package = (pkgs.nerdfonts.override { fonts = [ "FiraMono" "FiraCode"]; });
|
|
||||||
package = pkgs.cantarell-fonts;
|
|
||||||
# package = pkgs.montserrat;
|
|
||||||
name = "Cantarell";
|
|
||||||
# name = "FiraCode Nerd Font Propo";
|
|
||||||
# name = "Montserrat";
|
|
||||||
};
|
|
||||||
|
|
||||||
monospace = {
|
|
||||||
package = pkgs.nerdfonts.override { fonts = [ "FiraCode" ]; };
|
|
||||||
name = "FiraCode Nerd Font Mono";
|
|
||||||
};
|
|
||||||
|
|
||||||
emoji = {
|
|
||||||
package = pkgs.noto-fonts-emoji;
|
|
||||||
name = "Noto Color Emoji";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
hardware = {
|
hardware = {
|
||||||
graphics = {
|
graphics = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
||||||
|
|
@ -9,9 +9,8 @@
|
||||||
|
|
||||||
stylix.image = ../../wallpaper/surfacewp.png;
|
stylix.image = ../../wallpaper/surfacewp.png;
|
||||||
|
|
||||||
stylix = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
base16Scheme = ../../wallpaper/swarsel.yaml;
|
base16Scheme = ../../../wallpaper/swarsel.yaml;
|
||||||
# base16Scheme = "${pkgs.base16-schemes}/share/themes/shapeshifter.yaml";
|
# base16Scheme = "${pkgs.base16-schemes}/share/themes/shapeshifter.yaml";
|
||||||
polarity = "dark";
|
polarity = "dark";
|
||||||
opacity.popups = 0.5;
|
opacity.popups = 0.5;
|
||||||
|
|
@ -53,7 +52,6 @@
|
||||||
name = "Noto Color Emoji";
|
name = "Noto Color Emoji";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
nixpkgs = {
|
nixpkgs = {
|
||||||
|
|
|
||||||
|
|
@ -36,9 +36,8 @@
|
||||||
|
|
||||||
stylix.image = ../../wallpaper/surfacewp.png;
|
stylix.image = ../../wallpaper/surfacewp.png;
|
||||||
|
|
||||||
stylix = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
base16Scheme = ../../wallpaper/swarsel.yaml;
|
base16Scheme = ../../../wallpaper/swarsel.yaml;
|
||||||
# base16Scheme = "${pkgs.base16-schemes}/share/themes/shapeshifter.yaml";
|
# base16Scheme = "${pkgs.base16-schemes}/share/themes/shapeshifter.yaml";
|
||||||
polarity = "dark";
|
polarity = "dark";
|
||||||
opacity.popups = 0.5;
|
opacity.popups = 0.5;
|
||||||
|
|
@ -80,7 +79,6 @@
|
||||||
name = "Noto Color Emoji";
|
name = "Noto Color Emoji";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
users.users.swarsel = {
|
users.users.swarsel = {
|
||||||
|
|
|
||||||
|
|
@ -53,9 +53,8 @@
|
||||||
|
|
||||||
stylix.image = ../../wallpaper/lenovowp.png;
|
stylix.image = ../../wallpaper/lenovowp.png;
|
||||||
|
|
||||||
stylix = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
base16Scheme = ../../wallpaper/swarsel.yaml;
|
base16Scheme = ../../../wallpaper/swarsel.yaml;
|
||||||
# base16Scheme = "${pkgs.base16-schemes}/share/themes/shapeshifter.yaml";
|
# base16Scheme = "${pkgs.base16-schemes}/share/themes/shapeshifter.yaml";
|
||||||
polarity = "dark";
|
polarity = "dark";
|
||||||
opacity.popups = 0.5;
|
opacity.popups = 0.5;
|
||||||
|
|
@ -97,7 +96,6 @@
|
||||||
name = "Noto Color Emoji";
|
name = "Noto Color Emoji";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
hardware = {
|
hardware = {
|
||||||
|
|
|
||||||
|
|
@ -44,6 +44,7 @@ seturl www.google.com followpagepatterns.prev Previous
|
||||||
" Autocmds
|
" Autocmds
|
||||||
autocmd DocStart undefined mode ignore
|
autocmd DocStart undefined mode ignore
|
||||||
autocmd DocStart pokerogue.net mode ignore
|
autocmd DocStart pokerogue.net mode ignore
|
||||||
|
autocmd DocStart typelit.io mode ignore
|
||||||
|
|
||||||
" For syntax highlighting see https://github.com/tridactyl/vim-tridactyl
|
" For syntax highlighting see https://github.com/tridactyl/vim-tridactyl
|
||||||
" vim: set filetype=tridactyl
|
" vim: set filetype=tridactyl
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue