mostly fix up stateVersions
This commit is contained in:
parent
c95e82b19a
commit
e1749d3ae7
8 changed files with 136 additions and 122 deletions
|
@ -1,4 +1,4 @@
|
||||||
{ pkgs, ... }: {
|
{ pkgs, lib, ... }: {
|
||||||
# TODO: re-enable this with the appropriate version?
|
# TODO: re-enable this with the appropriate version?
|
||||||
# programs.home-manager.enable = true;
|
# programs.home-manager.enable = true;
|
||||||
# programs.home-manager.path = https://github.com/rycee/home-manager/archive/445c0b1482c38172a9f8294ee16a7ca7462388e5.tar.gz;
|
# programs.home-manager.path = https://github.com/rycee/home-manager/archive/445c0b1482c38172a9f8294ee16a7ca7462388e5.tar.gz;
|
||||||
|
@ -83,6 +83,4 @@
|
||||||
usbutils
|
usbutils
|
||||||
pciutils
|
pciutils
|
||||||
]);
|
]);
|
||||||
|
|
||||||
home.stateVersion = "22.05";
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,18 +1,19 @@
|
||||||
{
|
{ pkgs
|
||||||
pkgs,
|
, config
|
||||||
config,
|
, lib
|
||||||
lib,
|
, # packages',
|
||||||
# packages',
|
repoFlakeInputs'
|
||||||
repoFlakeInputs',
|
, ...
|
||||||
...
|
}:
|
||||||
}: let
|
let
|
||||||
inherit (import ../lib.nix {}) mkSimpleTrayService;
|
inherit (import ../lib.nix { }) mkSimpleTrayService;
|
||||||
|
|
||||||
lockCmd = "${pkgs.swaylock}/bin/swaylock -efF --color '#000000'";
|
lockCmd = "${pkgs.swaylock}/bin/swaylock -efF --color '#000000'";
|
||||||
displayOffCmd = "${pkgs.sway}/bin/swaymsg 'output * power off'";
|
displayOffCmd = "${pkgs.sway}/bin/swaymsg 'output * power off'";
|
||||||
displayOnCmd = "${pkgs.sway}/bin/swaymsg 'output * power on'";
|
displayOnCmd = "${pkgs.sway}/bin/swaymsg 'output * power on'";
|
||||||
swapOutputWorkspaces = ../../../scripts/sway-swapoutputworkspaces.sh;
|
swapOutputWorkspaces = ../../../scripts/sway-swapoutputworkspaces.sh;
|
||||||
in {
|
in
|
||||||
|
{
|
||||||
imports = [
|
imports = [
|
||||||
../profiles/wayland-desktop.nix
|
../profiles/wayland-desktop.nix
|
||||||
../programs/waybar.nix
|
../programs/waybar.nix
|
||||||
|
@ -103,103 +104,106 @@ in {
|
||||||
systemd.enable = true;
|
systemd.enable = true;
|
||||||
xwayland = true;
|
xwayland = true;
|
||||||
|
|
||||||
config = let
|
config =
|
||||||
modifier = "Mod4";
|
let
|
||||||
inherit (config.wayland.windowManager.sway.config) left right up down;
|
modifier = "Mod4";
|
||||||
in {
|
inherit (config.wayland.windowManager.sway.config) left right up down;
|
||||||
inherit modifier;
|
in
|
||||||
bars = [];
|
{
|
||||||
|
inherit modifier;
|
||||||
|
bars = [ ];
|
||||||
|
|
||||||
input = {
|
input = {
|
||||||
"type:keyboard" =
|
"type:keyboard" =
|
||||||
{
|
{
|
||||||
xkb_layout = config.home.keyboard.layout;
|
xkb_layout = config.home.keyboard.layout;
|
||||||
xkb_variant = config.home.keyboard.variant;
|
xkb_variant = config.home.keyboard.variant;
|
||||||
}
|
}
|
||||||
// lib.attrsets.optionalAttrs (builtins.length (config.home.keyboard.options or []) > 0) {
|
// lib.attrsets.optionalAttrs (builtins.length (config.home.keyboard.options or [ ]) > 0) {
|
||||||
xkb_options = builtins.concatStringsSep "," config.home.keyboard.options;
|
xkb_options = builtins.concatStringsSep "," config.home.keyboard.options;
|
||||||
|
};
|
||||||
|
|
||||||
|
"type:touchpad" = {
|
||||||
|
natural_scroll = "enabled";
|
||||||
};
|
};
|
||||||
|
|
||||||
"type:touchpad" = {
|
|
||||||
natural_scroll = "enabled";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
keybindings = lib.mkOptionDefault {
|
||||||
|
# as of 2023-05-21 the `!!` arg parsing mode was broken for me on yofi
|
||||||
|
# "${modifier}+d" = "exec ${packages'.yofi}/bin/yofi binapps";
|
||||||
|
"${modifier}+d" = "exec ${pkgs.fuzzel}/bin/fuzzel --show-actions";
|
||||||
|
|
||||||
|
# only 1-9 exist on the default config
|
||||||
|
"${modifier}+0" = "workspace number 0";
|
||||||
|
"${modifier}+Shift+0" = "move container to workspace number 0";
|
||||||
|
|
||||||
|
# disable splitting for now as i sometimes trigger it accidentally and then get stuck with it
|
||||||
|
"${modifier}+b" = "nop";
|
||||||
|
"${modifier}+v" = "nop";
|
||||||
|
|
||||||
|
# move workspace to output
|
||||||
|
"${modifier}+Control+Shift+${left}" = "move workspace to output left";
|
||||||
|
"${modifier}+Control+Shift+${right}" = "move workspace to output right";
|
||||||
|
"${modifier}+Control+Shift+${up}" = "move workspace to output up";
|
||||||
|
"${modifier}+Control+Shift+${down}" = "move workspace to output down";
|
||||||
|
# move workspace to output with arrow keys
|
||||||
|
"${modifier}+Control+Shift+Left" = "move workspace to output left";
|
||||||
|
"${modifier}+Control+Shift+Right" = "move workspace to output right";
|
||||||
|
"${modifier}+Control+Shift+Up" = "move workspace to output up";
|
||||||
|
"${modifier}+Control+Shift+Down" = "move workspace to output down";
|
||||||
|
|
||||||
|
"${modifier}+Shift+e" = "exec ${pkgs.sway}/bin/swaymsg exit";
|
||||||
|
"${modifier}+q" = "kill";
|
||||||
|
"${modifier}+Shift+q" = "exec ${pkgs.sway}/bin/swaymsg -t get_tree | ${pkgs.jq}/bin/jq 'recurse(.nodes[], .floating_nodes[]) | select(.focused).pid' | ${pkgs.findutils}/bin/xargs -L1 kill -9";
|
||||||
|
|
||||||
|
"${modifier}+x" = "exec ${swapOutputWorkspaces}";
|
||||||
|
|
||||||
|
"${modifier}+Ctrl+l" = "exec ${lockCmd}";
|
||||||
|
|
||||||
|
"--locked XF86AudioPlay" = "exec ${pkgs.playerctl}/bin/playerctl play-pause";
|
||||||
|
"XF86AudioPrev" = "exec ${pkgs.playerctl}/bin/playerctl previous";
|
||||||
|
"XF86AudioNext" = "exec ${pkgs.playerctl}/bin/playerctl next";
|
||||||
|
|
||||||
|
"XF86AudioRaiseVolume" = "exec ${pkgs.pulsemixer}/bin/pulsemixer --change-volume +5";
|
||||||
|
"XF86AudioLowerVolume" = "exec ${pkgs.pulsemixer}/bin/pulsemixer --change-volume -5";
|
||||||
|
"--locked XF86AudioMute" = "exec ${pkgs.pulsemixer}/bin/pulsemixer --toggle-mute";
|
||||||
|
|
||||||
|
"Print" = "exec ${pkgs.shotman}/bin/shotman --capture region";
|
||||||
|
};
|
||||||
|
|
||||||
|
terminal = "alacritty";
|
||||||
|
startup =
|
||||||
|
[
|
||||||
|
{
|
||||||
|
command = builtins.toString (pkgs.writeShellScript "ensure-graphical-session" ''
|
||||||
|
(
|
||||||
|
${pkgs.coreutils}/bin/sleep 0.2
|
||||||
|
${pkgs.systemd}/bin/systemctl --user restart graphical-session.target
|
||||||
|
) &
|
||||||
|
'');
|
||||||
|
}
|
||||||
|
]
|
||||||
|
++ lib.optionals config.services.swayidle.enable [
|
||||||
|
{
|
||||||
|
command = builtins.toString (pkgs.writeShellScript "ensure-graphical-session" ''
|
||||||
|
(
|
||||||
|
${pkgs.coreutils}/bin/sleep 0.2
|
||||||
|
${pkgs.systemd}/bin/systemctl --user restart swayidle
|
||||||
|
) &
|
||||||
|
'');
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
colors.focused = lib.mkOptionDefault {
|
||||||
|
childBorder = lib.mkForce "#ffa500";
|
||||||
|
};
|
||||||
|
|
||||||
|
window.titlebar = false;
|
||||||
|
window.border = 4;
|
||||||
|
|
||||||
|
# this maps to focus_on_window_activation
|
||||||
|
focus.newWindow = "urgent";
|
||||||
};
|
};
|
||||||
|
|
||||||
keybindings = lib.mkOptionDefault {
|
|
||||||
# as of 2023-05-21 the `!!` arg parsing mode was broken for me on yofi
|
|
||||||
# "${modifier}+d" = "exec ${packages'.yofi}/bin/yofi binapps";
|
|
||||||
"${modifier}+d" = "exec ${pkgs.fuzzel}/bin/fuzzel --show-actions";
|
|
||||||
|
|
||||||
# only 1-9 exist on the default config
|
|
||||||
"${modifier}+0" = "workspace number 0";
|
|
||||||
"${modifier}+Shift+0" = "move container to workspace number 0";
|
|
||||||
|
|
||||||
# disable splitting for now as i sometimes trigger it accidentally and then get stuck with it
|
|
||||||
"${modifier}+b" = "nop";
|
|
||||||
"${modifier}+v" = "nop";
|
|
||||||
|
|
||||||
# move workspace to output
|
|
||||||
"${modifier}+Control+Shift+${left}" = "move workspace to output left";
|
|
||||||
"${modifier}+Control+Shift+${right}" = "move workspace to output right";
|
|
||||||
"${modifier}+Control+Shift+${up}" = "move workspace to output up";
|
|
||||||
"${modifier}+Control+Shift+${down}" = "move workspace to output down";
|
|
||||||
# move workspace to output with arrow keys
|
|
||||||
"${modifier}+Control+Shift+Left" = "move workspace to output left";
|
|
||||||
"${modifier}+Control+Shift+Right" = "move workspace to output right";
|
|
||||||
"${modifier}+Control+Shift+Up" = "move workspace to output up";
|
|
||||||
"${modifier}+Control+Shift+Down" = "move workspace to output down";
|
|
||||||
|
|
||||||
"${modifier}+Shift+e" = "exec ${pkgs.sway}/bin/swaymsg exit";
|
|
||||||
"${modifier}+q" = "kill";
|
|
||||||
"${modifier}+Shift+q" = "exec ${pkgs.sway}/bin/swaymsg -t get_tree | ${pkgs.jq}/bin/jq 'recurse(.nodes[], .floating_nodes[]) | select(.focused).pid' | ${pkgs.findutils}/bin/xargs -L1 kill -9";
|
|
||||||
|
|
||||||
"${modifier}+x" = "exec ${swapOutputWorkspaces}";
|
|
||||||
|
|
||||||
"${modifier}+Ctrl+l" = "exec ${lockCmd}";
|
|
||||||
|
|
||||||
"--locked XF86AudioPlay" = "exec ${pkgs.playerctl}/bin/playerctl play-pause";
|
|
||||||
"XF86AudioPrev" = "exec ${pkgs.playerctl}/bin/playerctl previous";
|
|
||||||
"XF86AudioNext" = "exec ${pkgs.playerctl}/bin/playerctl next";
|
|
||||||
|
|
||||||
"XF86AudioRaiseVolume" = "exec ${pkgs.pulsemixer}/bin/pulsemixer --change-volume +5";
|
|
||||||
"XF86AudioLowerVolume" = "exec ${pkgs.pulsemixer}/bin/pulsemixer --change-volume -5";
|
|
||||||
"--locked XF86AudioMute" = "exec ${pkgs.pulsemixer}/bin/pulsemixer --toggle-mute";
|
|
||||||
|
|
||||||
"Print" = "exec ${pkgs.shotman}/bin/shotman --capture region";
|
|
||||||
};
|
|
||||||
|
|
||||||
terminal = "alacritty";
|
|
||||||
startup =
|
|
||||||
[
|
|
||||||
{
|
|
||||||
command = builtins.toString (pkgs.writeShellScript "ensure-graphical-session" ''
|
|
||||||
(
|
|
||||||
${pkgs.coreutils}/bin/sleep 0.2
|
|
||||||
${pkgs.systemd}/bin/systemctl --user restart graphical-session.target
|
|
||||||
) &
|
|
||||||
'');
|
|
||||||
}
|
|
||||||
]
|
|
||||||
++ lib.optionals config.services.swayidle.enable [
|
|
||||||
{
|
|
||||||
command = builtins.toString (pkgs.writeShellScript "ensure-graphical-session" ''
|
|
||||||
(
|
|
||||||
${pkgs.coreutils}/bin/sleep 0.2
|
|
||||||
${pkgs.systemd}/bin/systemctl --user restart swayidle
|
|
||||||
) &
|
|
||||||
'');
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
colors.focused = lib.mkOptionDefault {
|
|
||||||
childBorder = lib.mkForce "#ffa500";
|
|
||||||
};
|
|
||||||
|
|
||||||
window.border = 4;
|
|
||||||
|
|
||||||
# this maps to focus_on_window_activation
|
|
||||||
focus.newWindow = "urgent";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
services.swayidle = {
|
services.swayidle = {
|
||||||
|
|
|
@ -4,7 +4,12 @@
|
||||||
, nodeFlake
|
, nodeFlake
|
||||||
, ...
|
, ...
|
||||||
}: {
|
}: {
|
||||||
|
system.stateVersion = "23.05";
|
||||||
|
home-manager.users.root = _: {
|
||||||
|
home.stateVersion = "22.05";
|
||||||
|
};
|
||||||
home-manager.users.steveej = _: {
|
home-manager.users.steveej = _: {
|
||||||
|
home.stateVersion = "22.05";
|
||||||
imports = [
|
imports = [
|
||||||
../../../home-manager/configuration/graphical-fullblown.nix
|
../../../home-manager/configuration/graphical-fullblown.nix
|
||||||
|
|
||||||
|
@ -103,5 +108,4 @@
|
||||||
# # };
|
# # };
|
||||||
# };
|
# };
|
||||||
|
|
||||||
system.stateVersion = "23.05";
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,7 +8,7 @@ let
|
||||||
inherit (pkgs.callPackage ../../lib/default.nix { }) mkUser;
|
inherit (pkgs.callPackage ../../lib/default.nix { }) mkUser;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
users.extraUsers.steveej2 = mkUser {
|
users.users.steveej2 = mkUser {
|
||||||
uid = 1001;
|
uid = 1001;
|
||||||
openssh.authorizedKeys.keys = keys.users.steveej.openssh;
|
openssh.authorizedKeys.keys = keys.users.steveej.openssh;
|
||||||
hashedPasswordFile = config.sops.secrets.sharedUsers-steveej.path;
|
hashedPasswordFile = config.sops.secrets.sharedUsers-steveej.path;
|
||||||
|
|
|
@ -55,6 +55,7 @@
|
||||||
nodeFlake.inputs.home-manager.nixosModules.home-manager
|
nodeFlake.inputs.home-manager.nixosModules.home-manager
|
||||||
|
|
||||||
../../snippets/sway-desktop.nix
|
../../snippets/sway-desktop.nix
|
||||||
|
../../snippets/timezone.nix
|
||||||
# ../../snippets/radicale.nix
|
# ../../snippets/radicale.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -82,6 +83,9 @@
|
||||||
];
|
];
|
||||||
|
|
||||||
system.stateVersion = "23.11";
|
system.stateVersion = "23.11";
|
||||||
|
home-manager.users.root = _: {
|
||||||
|
home.stateVersion = "23.11";
|
||||||
|
};
|
||||||
home-manager.users.steveej = _: {
|
home-manager.users.steveej = _: {
|
||||||
home.stateVersion = "23.11";
|
home.stateVersion = "23.11";
|
||||||
|
|
||||||
|
@ -89,6 +93,9 @@
|
||||||
../../../home-manager/configuration/graphical-fullblown.nix
|
../../../home-manager/configuration/graphical-fullblown.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# seems to be broke on install
|
||||||
|
programs.chromium.enable = lib.mkForce false;
|
||||||
|
|
||||||
home.sessionVariables = { };
|
home.sessionVariables = { };
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
|
|
|
@ -30,6 +30,7 @@
|
||||||
targetPlatform = "aarch64-linux";
|
targetPlatform = "aarch64-linux";
|
||||||
buildPlatform = "x86_64-linux";
|
buildPlatform = "x86_64-linux";
|
||||||
nodeName = "steveej-x13s";
|
nodeName = "steveej-x13s";
|
||||||
|
repoFlake = get-flake ../../../..;
|
||||||
|
|
||||||
mkNixosConfiguration = { extraModules ? [ ], ... } @ attrs:
|
mkNixosConfiguration = { extraModules ? [ ], ... } @ attrs:
|
||||||
nixpkgs.lib.nixosSystem (
|
nixpkgs.lib.nixosSystem (
|
||||||
|
@ -38,15 +39,14 @@
|
||||||
{
|
{
|
||||||
specialArgs = (import ./default.nix {
|
specialArgs = (import ./default.nix {
|
||||||
system = targetPlatform;
|
system = targetPlatform;
|
||||||
inherit nodeName;
|
inherit nodeName repoFlake;
|
||||||
|
|
||||||
repoFlake = get-flake ../../../..;
|
|
||||||
nodeFlake = self;
|
nodeFlake = self;
|
||||||
}).meta.nodeSpecialArgs.${nodeName};
|
}).meta.nodeSpecialArgs.${nodeName};
|
||||||
|
|
||||||
modules =
|
modules =
|
||||||
[
|
[
|
||||||
({ repoFlake, ... }: repoFlake.nixosModules.hardware-x13s)
|
repoFlake.nixosModules.hardware-x13s
|
||||||
|
|
||||||
./configuration.nix
|
./configuration.nix
|
||||||
]
|
]
|
||||||
|
|
|
@ -65,26 +65,27 @@ in
|
||||||
|
|
||||||
security.pam.services.getty.enableGnomeKeyring = true;
|
security.pam.services.getty.enableGnomeKeyring = true;
|
||||||
services.gnome.gnome-keyring.enable = true;
|
services.gnome.gnome-keyring.enable = true;
|
||||||
|
|
||||||
# autologin steveej on tty1
|
# autologin steveej on tty1
|
||||||
|
# TODO: make user configurable
|
||||||
systemd.services."autovt@tty1".description = "Autologin at the TTY1";
|
systemd.services."autovt@tty1".description = "Autologin at the TTY1";
|
||||||
systemd.services."autovt@tty1".after = [ "systemd-logind.service" ]; # without it user session not started and xorg can't be run from this tty
|
systemd.services."autovt@tty1".after = [ "systemd-logind.service" ]; # without it user session not started and xorg can't be run from this tty
|
||||||
systemd.services."autovt@tty1".wantedBy = [ "multi-user.target" ];
|
systemd.services."autovt@tty1".wantedBy = [ "multi-user.target" ];
|
||||||
systemd.services."autovt@tty1".serviceConfig =
|
systemd.services."autovt@tty1".serviceConfig = {
|
||||||
{
|
ExecStart = [
|
||||||
ExecStart = [
|
"" # override upstream default with an empty ExecStart
|
||||||
"" # override upstream default with an empty ExecStart
|
"@${pkgs.utillinux}/sbin/agetty agetty --login-program ${pkgs.shadow}/bin/login --autologin steveej --noclear %I $TERM"
|
||||||
"@${pkgs.utillinux}/sbin/agetty agetty --login-program ${pkgs.shadow}/bin/login --autologin steveej --noclear %I $TERM"
|
];
|
||||||
];
|
Restart = "always";
|
||||||
Restart = "always";
|
Type = "idle";
|
||||||
Type = "idle";
|
};
|
||||||
};
|
|
||||||
programs.zsh.loginShellInit = ''
|
programs.zsh.loginShellInit = ''
|
||||||
if test $(id --user steveej) = $(id -u) && test $(tty) = "/dev/tty1"; then
|
if test $(id --user steveej) = $(id -u) && test $(tty) = "/dev/tty1"; then
|
||||||
exec sway
|
exec sway
|
||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
|
|
||||||
home-manager.users.${homeUser} = _: {
|
home-manager.users."${homeUser}" = _: {
|
||||||
imports = [
|
imports = [
|
||||||
../../home-manager/profiles/sway-desktop.nix
|
../../home-manager/profiles/sway-desktop.nix
|
||||||
];
|
];
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ lib, ... }:
|
{ lib, ... }:
|
||||||
|
|
||||||
let
|
let
|
||||||
passwords = import ../../../variables/passwords.crypt.nix;
|
passwords = import ../../variables/passwords.crypt.nix;
|
||||||
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue