Reformat all nix files.
This commit is contained in:
parent
764a8c58ce
commit
e26118af4f
@ -1,7 +1,12 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [];
|
imports = [ ];
|
||||||
|
|
||||||
boot.loader.grub.enable = false;
|
boot.loader.grub.enable = false;
|
||||||
# Use the systemd-boot EFI boot loader.
|
# Use the systemd-boot EFI boot loader.
|
||||||
@ -15,7 +20,6 @@
|
|||||||
|
|
||||||
# efibootmgr -c -d /dev/sda -p 1 -L NixOS-boot -l '\EFI\NixOS-boot\grubx64.efi'
|
# efibootmgr -c -d /dev/sda -p 1 -L NixOS-boot -l '\EFI\NixOS-boot\grubx64.efi'
|
||||||
|
|
||||||
|
|
||||||
# Text-only:
|
# Text-only:
|
||||||
# sudo cp "$(nix-build '<nixpkgs>' --no-out-link -A 'refind')/share/refind/refind_x64.efi" /boot/EFI/boot/bootx64.efi
|
# sudo cp "$(nix-build '<nixpkgs>' --no-out-link -A 'refind')/share/refind/refind_x64.efi" /boot/EFI/boot/bootx64.efi
|
||||||
|
|
||||||
|
@ -1,27 +1,41 @@
|
|||||||
{ config, lib, pkgs, pkgs-unstable, home-manager, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
pkgs-unstable,
|
||||||
|
home-manager,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
imports = [
|
||||||
[
|
./roles/reset
|
||||||
./roles/reset
|
./hosts/odo
|
||||||
./hosts/odo
|
"${
|
||||||
"${builtins.fetchTarball {url="https://github.com/nix-community/disko/archive/refs/tags/v1.9.0.tar.gz";sha256="0j76ar4qz320fakdii4659w5lww8wiz6yb7g47npywqvf2lbp388";}}/module.nix"
|
builtins.fetchTarball {
|
||||||
./boot.nix
|
url = "https://github.com/nix-community/disko/archive/refs/tags/v1.9.0.tar.gz";
|
||||||
./zfs.nix
|
sha256 = "0j76ar4qz320fakdii4659w5lww8wiz6yb7g47npywqvf2lbp388";
|
||||||
./network.nix
|
}
|
||||||
./roles/firewall
|
}/module.nix"
|
||||||
./roles/graphics
|
./boot.nix
|
||||||
./roles/sound
|
./zfs.nix
|
||||||
./roles/sway
|
./network.nix
|
||||||
./roles/alacritty
|
./roles/firewall
|
||||||
./roles/firefox
|
./roles/graphics
|
||||||
./roles/emacs
|
./roles/sound
|
||||||
./roles/git
|
./roles/sway
|
||||||
./roles/fonts
|
./roles/alacritty
|
||||||
./roles/gpg
|
./roles/firefox
|
||||||
];
|
./roles/emacs
|
||||||
|
./roles/git
|
||||||
|
./roles/fonts
|
||||||
|
./roles/gpg
|
||||||
|
];
|
||||||
|
|
||||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
nix.settings.experimental-features = [
|
||||||
|
"nix-command"
|
||||||
|
"flakes"
|
||||||
|
];
|
||||||
nix.settings.trusted-users = [ "@wheel" ];
|
nix.settings.trusted-users = [ "@wheel" ];
|
||||||
|
|
||||||
boot.kernelPackages = pkgs.linuxPackages_6_11;
|
boot.kernelPackages = pkgs.linuxPackages_6_11;
|
||||||
@ -46,14 +60,19 @@
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
users.groups.talexander.gid = 11235;
|
users.groups.talexander.gid = 11235;
|
||||||
home-manager.users.talexander = { pkgs, ... }: {
|
home-manager.users.talexander =
|
||||||
home.packages = [ pkgs.atool pkgs.httpie ];
|
{ pkgs, ... }:
|
||||||
programs.bash.enable = true;
|
{
|
||||||
|
home.packages = [
|
||||||
|
pkgs.atool
|
||||||
|
pkgs.httpie
|
||||||
|
];
|
||||||
|
programs.bash.enable = true;
|
||||||
|
|
||||||
# The state version is required and should stay at the version you
|
# The state version is required and should stay at the version you
|
||||||
# originally installed.
|
# originally installed.
|
||||||
home.stateVersion = "24.11";
|
home.stateVersion = "24.11";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Automatic garbage collection
|
# Automatic garbage collection
|
||||||
nix.gc = {
|
nix.gc = {
|
||||||
@ -67,14 +86,16 @@
|
|||||||
security.doas.enable = true;
|
security.doas.enable = true;
|
||||||
security.doas.wheelNeedsPassword = false;
|
security.doas.wheelNeedsPassword = false;
|
||||||
security.sudo.enable = false;
|
security.sudo.enable = false;
|
||||||
security.doas.extraRules = [{
|
security.doas.extraRules = [
|
||||||
# Retain environment (for example NIX_PATH)
|
{
|
||||||
keepEnv = true;
|
# Retain environment (for example NIX_PATH)
|
||||||
persist = true; # Only ask for a password the first time.
|
keepEnv = true;
|
||||||
}];
|
persist = true; # Only ask for a password the first time.
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
# Do not use default packages (nixos includes some defaults like nano)
|
# Do not use default packages (nixos includes some defaults like nano)
|
||||||
environment.defaultPackages = lib.mkForce [];
|
environment.defaultPackages = lib.mkForce [ ];
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
wget
|
wget
|
||||||
@ -163,7 +184,7 @@
|
|||||||
sortedUnique = builtins.sort builtins.lessThan (lib.unique packages);
|
sortedUnique = builtins.sort builtins.lessThan (lib.unique packages);
|
||||||
formatted = builtins.concatStringsSep "\n" sortedUnique;
|
formatted = builtins.concatStringsSep "\n" sortedUnique;
|
||||||
in
|
in
|
||||||
formatted;
|
formatted;
|
||||||
|
|
||||||
# nixpkgs.overlays = [
|
# nixpkgs.overlays = [
|
||||||
# (final: prev: {
|
# (final: prev: {
|
||||||
@ -171,8 +192,6 @@
|
|||||||
# })
|
# })
|
||||||
# ];
|
# ];
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Copy the NixOS configuration file and link it from the resulting system
|
# Copy the NixOS configuration file and link it from the resulting system
|
||||||
# (/run/current-system/configuration.nix). This is useful in case you
|
# (/run/current-system/configuration.nix). This is useful in case you
|
||||||
# accidentally delete configuration.nix.
|
# accidentally delete configuration.nix.
|
||||||
|
@ -12,72 +12,85 @@
|
|||||||
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, nixpkgs, nixpkgs-unstable, nixpkgs-b93b4e9b5, impermanence, home-manager, ... }@inputs: let
|
outputs =
|
||||||
base-system = {};
|
{
|
||||||
odoqemu = nixpkgs.lib.nixosSystem rec {
|
self,
|
||||||
system = "x86_64-linux";
|
nixpkgs,
|
||||||
specialArgs = {
|
nixpkgs-unstable,
|
||||||
pkgs-b93b4e9b5 = import nixpkgs-b93b4e9b5 {
|
nixpkgs-b93b4e9b5,
|
||||||
inherit system;
|
impermanence,
|
||||||
# config.allowUnfree = true;
|
home-manager,
|
||||||
};
|
...
|
||||||
pkgs-unstable = import nixpkgs-unstable {
|
}@inputs:
|
||||||
inherit system;
|
let
|
||||||
# config.allowUnfree = true;
|
base-system = { };
|
||||||
};
|
odoqemu = nixpkgs.lib.nixosSystem rec {
|
||||||
};
|
system = "x86_64-linux";
|
||||||
modules = [
|
specialArgs = {
|
||||||
impermanence.nixosModules.impermanence
|
pkgs-b93b4e9b5 = import nixpkgs-b93b4e9b5 {
|
||||||
home-manager.nixosModules.home-manager
|
inherit system;
|
||||||
{
|
# config.allowUnfree = true;
|
||||||
home-manager.useGlobalPkgs = true;
|
};
|
||||||
home-manager.useUserPackages = true;
|
pkgs-unstable = import nixpkgs-unstable {
|
||||||
}
|
inherit system;
|
||||||
./configuration.nix
|
# config.allowUnfree = true;
|
||||||
({lib, ...}: {
|
|
||||||
imports = [ <nixpkgs/nixos/modules/virtualisation/qemu-vm.nix> ];
|
|
||||||
virtualisation.qemu.options = [
|
|
||||||
"-device virtio-vga"
|
|
||||||
];
|
|
||||||
virtualisation.vmVariant = {
|
|
||||||
# following configuration is added only when building VM with build-vm
|
|
||||||
virtualisation = {
|
|
||||||
memorySize = 2048; # Use 2048MiB memory.
|
|
||||||
cores = 3;
|
|
||||||
graphics = false;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
networking.dhcpcd.enable = lib.mkForce true;
|
|
||||||
networking.useDHCP = lib.mkForce true;
|
|
||||||
boot.loader.efi.canTouchEfiVariables = lib.mkForce true;
|
|
||||||
# doas nixos-rebuild build-vm --flake .#odoqemu
|
|
||||||
#./result/bin/run-nixos-vm
|
|
||||||
})
|
|
||||||
];
|
|
||||||
};
|
|
||||||
odo = nixpkgs.lib.nixosSystem rec {
|
|
||||||
system = "x86_64-linux";
|
|
||||||
specialArgs = {
|
|
||||||
pkgs-b93b4e9b5 = import nixpkgs-b93b4e9b5 {
|
|
||||||
inherit system;
|
|
||||||
# config.allowUnfree = true;
|
|
||||||
};
|
|
||||||
pkgs-unstable = import nixpkgs-unstable {
|
|
||||||
inherit system;
|
|
||||||
# config.allowUnfree = true;
|
|
||||||
};
|
};
|
||||||
|
modules = [
|
||||||
|
impermanence.nixosModules.impermanence
|
||||||
|
home-manager.nixosModules.home-manager
|
||||||
|
{
|
||||||
|
home-manager.useGlobalPkgs = true;
|
||||||
|
home-manager.useUserPackages = true;
|
||||||
|
}
|
||||||
|
./configuration.nix
|
||||||
|
(
|
||||||
|
{ lib, ... }:
|
||||||
|
{
|
||||||
|
imports = [ <nixpkgs/nixos/modules/virtualisation/qemu-vm.nix> ];
|
||||||
|
virtualisation.qemu.options = [
|
||||||
|
"-device virtio-vga"
|
||||||
|
];
|
||||||
|
virtualisation.vmVariant = {
|
||||||
|
# following configuration is added only when building VM with build-vm
|
||||||
|
virtualisation = {
|
||||||
|
memorySize = 2048; # Use 2048MiB memory.
|
||||||
|
cores = 3;
|
||||||
|
graphics = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
networking.dhcpcd.enable = lib.mkForce true;
|
||||||
|
networking.useDHCP = lib.mkForce true;
|
||||||
|
boot.loader.efi.canTouchEfiVariables = lib.mkForce true;
|
||||||
|
# doas nixos-rebuild build-vm --flake .#odoqemu
|
||||||
|
#./result/bin/run-nixos-vm
|
||||||
|
}
|
||||||
|
)
|
||||||
|
];
|
||||||
};
|
};
|
||||||
modules = [
|
odo = nixpkgs.lib.nixosSystem rec {
|
||||||
impermanence.nixosModules.impermanence
|
system = "x86_64-linux";
|
||||||
home-manager.nixosModules.home-manager
|
specialArgs = {
|
||||||
{
|
pkgs-b93b4e9b5 = import nixpkgs-b93b4e9b5 {
|
||||||
home-manager.useGlobalPkgs = true;
|
inherit system;
|
||||||
home-manager.useUserPackages = true;
|
# config.allowUnfree = true;
|
||||||
}
|
};
|
||||||
./configuration.nix
|
pkgs-unstable = import nixpkgs-unstable {
|
||||||
];
|
inherit system;
|
||||||
};
|
# config.allowUnfree = true;
|
||||||
in
|
};
|
||||||
|
};
|
||||||
|
modules = [
|
||||||
|
impermanence.nixosModules.impermanence
|
||||||
|
home-manager.nixosModules.home-manager
|
||||||
|
{
|
||||||
|
home-manager.useGlobalPkgs = true;
|
||||||
|
home-manager.useUserPackages = true;
|
||||||
|
}
|
||||||
|
./configuration.nix
|
||||||
|
];
|
||||||
|
};
|
||||||
|
in
|
||||||
{
|
{
|
||||||
# doas nix build --extra-experimental-features nix-command --extra-experimental-features flakes .#vms.odo
|
# doas nix build --extra-experimental-features nix-command --extra-experimental-features flakes .#vms.odo
|
||||||
# ./result/bin/run-nixos-vim
|
# ./result/bin/run-nixos-vim
|
||||||
@ -104,11 +117,14 @@
|
|||||||
home-manager.useUserPackages = true;
|
home-manager.useUserPackages = true;
|
||||||
}
|
}
|
||||||
./configuration.nix
|
./configuration.nix
|
||||||
({lib, ...}: {
|
(
|
||||||
networking.dhcpcd.enable = lib.mkForce true;
|
{ lib, ... }:
|
||||||
networking.useDHCP = lib.mkForce true;
|
{
|
||||||
boot.loader.efi.canTouchEfiVariables = lib.mkForce true;
|
networking.dhcpcd.enable = lib.mkForce true;
|
||||||
})
|
networking.useDHCP = lib.mkForce true;
|
||||||
|
boot.loader.efi.canTouchEfiVariables = lib.mkForce true;
|
||||||
|
}
|
||||||
|
)
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -14,7 +14,11 @@
|
|||||||
type = "filesystem";
|
type = "filesystem";
|
||||||
format = "vfat";
|
format = "vfat";
|
||||||
mountpoint = "/boot";
|
mountpoint = "/boot";
|
||||||
mountOptions = [ "umask=0077" "noatime" "discard" ];
|
mountOptions = [
|
||||||
|
"umask=0077"
|
||||||
|
"noatime"
|
||||||
|
"discard"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
zfs = {
|
zfs = {
|
||||||
|
@ -1,14 +1,24 @@
|
|||||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
# and may be overwritten by future invocations. Please make changes
|
# and may be overwritten by future invocations. Please make changes
|
||||||
# to /etc/nixos/configuration.nix instead.
|
# to /etc/nixos/configuration.nix instead.
|
||||||
{ config, lib, pkgs, modulesPath, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
imports = [
|
||||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
(modulesPath + "/installer/scan/not-detected.nix")
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" ];
|
boot.initrd.availableKernelModules = [
|
||||||
|
"nvme"
|
||||||
|
"xhci_pci"
|
||||||
|
"thunderbolt"
|
||||||
|
];
|
||||||
boot.initrd.kernelModules = [ ];
|
boot.initrd.kernelModules = [ ];
|
||||||
boot.kernelModules = [ "kvm-amd" ];
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
|
@ -1,11 +1,19 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [];
|
imports = [ ];
|
||||||
|
|
||||||
networking.dhcpcd.enable = false;
|
networking.dhcpcd.enable = false;
|
||||||
networking.useDHCP = false;
|
networking.useDHCP = false;
|
||||||
networking.nameservers = [ "194.242.2.2#doh.mullvad.net" "2a07:e340::2#doh.mullvad.net" ];
|
networking.nameservers = [
|
||||||
|
"194.242.2.2#doh.mullvad.net"
|
||||||
|
"2a07:e340::2#doh.mullvad.net"
|
||||||
|
];
|
||||||
services.resolved = {
|
services.resolved = {
|
||||||
enable = true;
|
enable = true;
|
||||||
dnssec = "true";
|
dnssec = "true";
|
||||||
@ -14,7 +22,6 @@
|
|||||||
dnsovertls = "true";
|
dnsovertls = "true";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
# Without this, systemd-resolved will send DNS requests for <X>.home.arpa to the per-link DNS server (172.16.0.1) which does not support DNS-over-TLS. This leads to the connection anging and timing out. This causes firefox startup to take an extra 10+ seconds.
|
# Without this, systemd-resolved will send DNS requests for <X>.home.arpa to the per-link DNS server (172.16.0.1) which does not support DNS-over-TLS. This leads to the connection anging and timing out. This causes firefox startup to take an extra 10+ seconds.
|
||||||
#
|
#
|
||||||
# Test with: drill @127.0.0.53 odo.home.arpa
|
# Test with: drill @127.0.0.53 odo.home.arpa
|
||||||
|
@ -1,17 +1,24 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [];
|
imports = [ ];
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
alacritty
|
alacritty
|
||||||
xdg-utils # for xdg-open
|
xdg-utils # for xdg-open
|
||||||
];
|
];
|
||||||
|
|
||||||
home-manager.users.talexander = { pkgs, ... }: {
|
home-manager.users.talexander =
|
||||||
home.file.".config/alacritty/alacritty.toml" = {
|
{ pkgs, ... }:
|
||||||
source = ./files/alacritty.toml;
|
{
|
||||||
|
home.file.".config/alacritty/alacritty.toml" = {
|
||||||
|
source = ./files/alacritty.toml;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,11 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [];
|
imports = [ ];
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,11 +1,16 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [];
|
imports = [ ];
|
||||||
|
|
||||||
programs.firefox = {
|
programs.firefox = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = (pkgs.wrapFirefox (pkgs.firefox-unwrapped.override { pipewireSupport = true;}) {});
|
package = (pkgs.wrapFirefox (pkgs.firefox-unwrapped.override { pipewireSupport = true; }) { });
|
||||||
languagePacks = [ "en-US" ];
|
languagePacks = [ "en-US" ];
|
||||||
preferences = {
|
preferences = {
|
||||||
# "identity.sync.tokenserver.uri": "https://ffsync.fizz.buzz/token/1.0/sync/1.5";
|
# "identity.sync.tokenserver.uri": "https://ffsync.fizz.buzz/token/1.0/sync/1.5";
|
||||||
@ -52,7 +57,8 @@
|
|||||||
"privacy.fingerprintingProtection" = true;
|
"privacy.fingerprintingProtection" = true;
|
||||||
# Allow sending dark mode preference to websites.
|
# Allow sending dark mode preference to websites.
|
||||||
# Allow sending timezone to websites.
|
# Allow sending timezone to websites.
|
||||||
"privacy.fingerprintingProtection.overrides" = "+AllTargets,-CSSPrefersColorScheme,-JSDateTimeUTC,-CanvasExtractionBeforeUserInputIsBlocked";
|
"privacy.fingerprintingProtection.overrides" =
|
||||||
|
"+AllTargets,-CSSPrefersColorScheme,-JSDateTimeUTC,-CanvasExtractionBeforeUserInputIsBlocked";
|
||||||
# Disable weather on new tab page
|
# Disable weather on new tab page
|
||||||
"browser.newtabpage.activity-stream.showWeather" = false;
|
"browser.newtabpage.activity-stream.showWeather" = false;
|
||||||
};
|
};
|
||||||
@ -82,7 +88,12 @@
|
|||||||
hideMounts = true;
|
hideMounts = true;
|
||||||
users.talexander = {
|
users.talexander = {
|
||||||
directories = [
|
directories = [
|
||||||
{ directory = ".mozilla"; user = "talexander"; group = "talexander"; mode = "0700"; }
|
{
|
||||||
|
directory = ".mozilla";
|
||||||
|
user = "talexander";
|
||||||
|
group = "talexander";
|
||||||
|
mode = "0700";
|
||||||
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -90,7 +101,12 @@
|
|||||||
hideMounts = true;
|
hideMounts = true;
|
||||||
users.talexander = {
|
users.talexander = {
|
||||||
directories = [
|
directories = [
|
||||||
{ directory = ".cache/mozilla"; user = "talexander"; group = "talexander"; mode = "0700"; }
|
{
|
||||||
|
directory = ".cache/mozilla";
|
||||||
|
user = "talexander";
|
||||||
|
group = "talexander";
|
||||||
|
mode = "0700";
|
||||||
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -1,7 +1,12 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [];
|
imports = [ ];
|
||||||
|
|
||||||
# Open ports in the firewall.
|
# Open ports in the firewall.
|
||||||
networking.firewall.allowedTCPPorts = [
|
networking.firewall.allowedTCPPorts = [
|
||||||
|
@ -1,7 +1,12 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [];
|
imports = [ ];
|
||||||
|
|
||||||
fonts = {
|
fonts = {
|
||||||
enableDefaultPackages = true;
|
enableDefaultPackages = true;
|
||||||
@ -13,106 +18,106 @@
|
|||||||
|
|
||||||
fontconfig = {
|
fontconfig = {
|
||||||
localConf = ''
|
localConf = ''
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
||||||
<fontconfig>
|
<fontconfig>
|
||||||
<!-- reject all bitmap fonts, with the exception of 'terminus' -->
|
<!-- reject all bitmap fonts, with the exception of 'terminus' -->
|
||||||
<selectfont>
|
<selectfont>
|
||||||
<!-- <acceptfont> -->
|
<!-- <acceptfont> -->
|
||||||
<!-- <pattern> -->
|
<!-- <pattern> -->
|
||||||
<!-- <patelt name="family"> <string>Terminus</string> </patelt> -->
|
<!-- <patelt name="family"> <string>Terminus</string> </patelt> -->
|
||||||
<!-- </pattern> -->
|
<!-- </pattern> -->
|
||||||
<!-- </acceptfont> -->
|
<!-- </acceptfont> -->
|
||||||
<rejectfont>
|
<rejectfont>
|
||||||
<pattern>
|
<pattern>
|
||||||
<patelt name="scalable"> <bool>false</bool> </patelt>
|
<patelt name="scalable"> <bool>false</bool> </patelt>
|
||||||
</pattern>
|
</pattern>
|
||||||
</rejectfont>
|
</rejectfont>
|
||||||
<rejectfont>
|
<rejectfont>
|
||||||
<!-- You don't want ghostscript fonts in your web browsing because of annoying ligatures like ffi -->
|
<!-- You don't want ghostscript fonts in your web browsing because of annoying ligatures like ffi -->
|
||||||
<glob>/usr/share/fonts/gsfonts/*</glob>
|
<glob>/usr/share/fonts/gsfonts/*</glob>
|
||||||
</rejectfont>
|
</rejectfont>
|
||||||
</selectfont>
|
</selectfont>
|
||||||
|
|
||||||
<!-- preferred aliases -->
|
<!-- preferred aliases -->
|
||||||
<alias>
|
<alias>
|
||||||
<family>serif</family>
|
<family>serif</family>
|
||||||
<prefer>
|
<prefer>
|
||||||
<family>Source Serif Pro</family>
|
<family>Source Serif Pro</family>
|
||||||
<family>Source Sans Pro</family>
|
<family>Source Sans Pro</family>
|
||||||
</prefer>
|
</prefer>
|
||||||
</alias>
|
</alias>
|
||||||
|
|
||||||
<!-- preferred aliases -->
|
<!-- preferred aliases -->
|
||||||
<alias>
|
<alias>
|
||||||
<family>sans-serif</family>
|
<family>sans-serif</family>
|
||||||
<prefer>
|
<prefer>
|
||||||
<family>Source Sans Pro</family>
|
<family>Source Sans Pro</family>
|
||||||
<family>Source Serif Pro</family>
|
<family>Source Serif Pro</family>
|
||||||
</prefer>
|
</prefer>
|
||||||
</alias>
|
</alias>
|
||||||
|
|
||||||
<!-- preferred aliases -->
|
<!-- preferred aliases -->
|
||||||
<alias>
|
<alias>
|
||||||
<family>monospace</family>
|
<family>monospace</family>
|
||||||
<prefer>
|
<prefer>
|
||||||
<family>Cascadia Mono</family>
|
<family>Cascadia Mono</family>
|
||||||
<family>Cascadia Code</family>
|
<family>Cascadia Code</family>
|
||||||
</prefer>
|
</prefer>
|
||||||
</alias>
|
</alias>
|
||||||
|
|
||||||
|
|
||||||
<!-- Screw it. Force Liberation Mono to be source code pro. -->
|
<!-- Screw it. Force Liberation Mono to be source code pro. -->
|
||||||
<match target="pattern">
|
<match target="pattern">
|
||||||
<test qual="any" name="family"><string>Liberation Mono</string></test>
|
<test qual="any" name="family"><string>Liberation Mono</string></test>
|
||||||
<edit name="family" mode="assign" binding="same"><string>Cascadia Mono</string></edit>
|
<edit name="family" mode="assign" binding="same"><string>Cascadia Mono</string></edit>
|
||||||
</match>
|
</match>
|
||||||
|
|
||||||
<!-- Dejavu Sans Mono keeps coming back when I query "monospace". Doesn't happen when I'm using Souce Code Pro but does happen with cascadia... force it to cascadia -->
|
<!-- Dejavu Sans Mono keeps coming back when I query "monospace". Doesn't happen when I'm using Souce Code Pro but does happen with cascadia... force it to cascadia -->
|
||||||
<match target="pattern">
|
<match target="pattern">
|
||||||
<test qual="any" name="family"><string>monospace</string></test>
|
<test qual="any" name="family"><string>monospace</string></test>
|
||||||
<edit name="family" mode="assign" binding="same"><string>Cascadia Mono</string></edit>
|
<edit name="family" mode="assign" binding="same"><string>Cascadia Mono</string></edit>
|
||||||
</match>
|
</match>
|
||||||
|
|
||||||
<!-- Disable ligatures in monospace fonts. -->
|
<!-- Disable ligatures in monospace fonts. -->
|
||||||
<match target="font">
|
<match target="font">
|
||||||
<test name="family" compare="eq" ignore-blanks="true">
|
<test name="family" compare="eq" ignore-blanks="true">
|
||||||
<string>Cascadia Code</string>
|
<string>Cascadia Code</string>
|
||||||
</test>
|
</test>
|
||||||
<edit name="fontfeatures" mode="append">
|
<edit name="fontfeatures" mode="append">
|
||||||
<string>liga off</string>
|
<string>liga off</string>
|
||||||
<string>dlig off</string>
|
<string>dlig off</string>
|
||||||
</edit>
|
</edit>
|
||||||
</match>
|
</match>
|
||||||
|
|
||||||
<!-- Font Display Settings -->
|
<!-- Font Display Settings -->
|
||||||
<match target="font" >
|
<match target="font" >
|
||||||
<edit mode="assign" name="rgba" >
|
<edit mode="assign" name="rgba" >
|
||||||
<const>rgb</const>
|
<const>rgb</const>
|
||||||
</edit>
|
</edit>
|
||||||
</match>
|
</match>
|
||||||
<match target="font" >
|
<match target="font" >
|
||||||
<edit mode="assign" name="hinting" >
|
<edit mode="assign" name="hinting" >
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
</edit>
|
</edit>
|
||||||
</match>
|
</match>
|
||||||
<match target="font" >
|
<match target="font" >
|
||||||
<edit mode="assign" name="hintstyle" >
|
<edit mode="assign" name="hintstyle" >
|
||||||
<const>hintslight</const>
|
<const>hintslight</const>
|
||||||
</edit>
|
</edit>
|
||||||
</match>
|
</match>
|
||||||
<match target="font" >
|
<match target="font" >
|
||||||
<edit mode="assign" name="antialias" >
|
<edit mode="assign" name="antialias" >
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
</edit>
|
</edit>
|
||||||
</match>
|
</match>
|
||||||
<match target="font" >
|
<match target="font" >
|
||||||
<edit mode="assign" name="lcdfilter" >
|
<edit mode="assign" name="lcdfilter" >
|
||||||
<const>lcddefault</const>
|
<const>lcddefault</const>
|
||||||
</edit>
|
</edit>
|
||||||
</match>
|
</match>
|
||||||
</fontconfig>
|
</fontconfig>
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,15 +1,22 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [];
|
imports = [ ];
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
git
|
git
|
||||||
];
|
];
|
||||||
|
|
||||||
home-manager.users.talexander = { pkgs, ... }: {
|
home-manager.users.talexander =
|
||||||
home.file.".gitconfig" = {
|
{ pkgs, ... }:
|
||||||
source = ./files/gitconfig_home;
|
{
|
||||||
|
home.file.".gitconfig" = {
|
||||||
|
source = ./files/gitconfig_home;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,12 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [];
|
imports = [ ];
|
||||||
|
|
||||||
# Fetch public keys:
|
# Fetch public keys:
|
||||||
# gpg --locate-keys tom@fizz.buzz
|
# gpg --locate-keys tom@fizz.buzz
|
||||||
@ -17,7 +22,12 @@
|
|||||||
hideMounts = true;
|
hideMounts = true;
|
||||||
users.talexander = {
|
users.talexander = {
|
||||||
directories = [
|
directories = [
|
||||||
{ directory = ".gnupg"; user = "talexander"; group = "talexander"; mode = "0700"; } # Local keyring
|
{
|
||||||
|
directory = ".gnupg";
|
||||||
|
user = "talexander";
|
||||||
|
group = "talexander";
|
||||||
|
mode = "0700";
|
||||||
|
} # Local keyring
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -1,7 +1,12 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [];
|
imports = [ ];
|
||||||
|
|
||||||
hardware.graphics.enable = true;
|
hardware.graphics.enable = true;
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,12 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [];
|
imports = [ ];
|
||||||
|
|
||||||
# Reset some defaults to start from a minimal more-arch-linux-like state. Think of this like a CSS reset sheet.
|
# Reset some defaults to start from a minimal more-arch-linux-like state. Think of this like a CSS reset sheet.
|
||||||
|
|
||||||
|
@ -1,7 +1,12 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [];
|
imports = [ ];
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
pavucontrol
|
pavucontrol
|
||||||
|
@ -1,213 +1,218 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
sway-config = pkgs.writeTextFile {
|
sway-config = pkgs.writeTextFile {
|
||||||
name = "config";
|
name = "config";
|
||||||
text = ''
|
text = ''
|
||||||
# Default config for sway
|
# Default config for sway
|
||||||
#
|
#
|
||||||
# Copy this to ~/.config/sway/config and edit it to your liking.
|
# Copy this to ~/.config/sway/config and edit it to your liking.
|
||||||
#
|
#
|
||||||
# Read `man 5 sway` for a complete reference.
|
# Read `man 5 sway` for a complete reference.
|
||||||
|
|
||||||
### Variables
|
### Variables
|
||||||
#
|
#
|
||||||
# Logo key. Use Mod1 for Alt.
|
# Logo key. Use Mod1 for Alt.
|
||||||
set $mod Mod4
|
set $mod Mod4
|
||||||
# set $mod Mod1
|
# set $mod Mod1
|
||||||
# Home row direction keys, like vim
|
# Home row direction keys, like vim
|
||||||
set $left h
|
set $left h
|
||||||
set $down j
|
set $down j
|
||||||
set $up k
|
set $up k
|
||||||
set $right l
|
set $right l
|
||||||
# Your preferred terminal emulator
|
# Your preferred terminal emulator
|
||||||
set $term ${pkgs.alacritty}/bin/alacritty
|
set $term ${pkgs.alacritty}/bin/alacritty
|
||||||
# Your preferred application launcher
|
# Your preferred application launcher
|
||||||
# Note: it's recommended that you pass the final command to sway
|
# Note: it's recommended that you pass the final command to sway
|
||||||
# set $menu dmenu_path | dmenu | xargs swaymsg exec
|
# set $menu dmenu_path | dmenu | xargs swaymsg exec
|
||||||
set $menu ${pkgs.wofi}/bin/wofi --show drun --gtk-dark
|
set $menu ${pkgs.wofi}/bin/wofi --show drun --gtk-dark
|
||||||
|
|
||||||
# Do not show a title bar on windows
|
# Do not show a title bar on windows
|
||||||
default_border pixel 2
|
default_border pixel 2
|
||||||
|
|
||||||
bindsym $mod+grave exec $term
|
bindsym $mod+grave exec $term
|
||||||
|
|
||||||
include ${base-hotkeys}
|
include ${base-hotkeys}
|
||||||
include ${display-configs}
|
include ${display-configs}
|
||||||
include ${window-management}
|
include ${window-management}
|
||||||
include ${movement}
|
include ${movement}
|
||||||
include ${disable-focus-follows-mouse}
|
include ${disable-focus-follows-mouse}
|
||||||
include ~/.config/sway/config.d/*.conf
|
include ~/.config/sway/config.d/*.conf
|
||||||
include /etc/sway/config.d/*
|
include /etc/sway/config.d/*
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
base-hotkeys = pkgs.writeTextFile {
|
base-hotkeys = pkgs.writeTextFile {
|
||||||
name = "base-hotkeys.conf";
|
name = "base-hotkeys.conf";
|
||||||
text = ''
|
text = ''
|
||||||
### Key bindings
|
### Key bindings
|
||||||
#
|
#
|
||||||
# Basics:
|
# Basics:
|
||||||
#
|
#
|
||||||
# kill focused window
|
# kill focused window
|
||||||
bindsym $mod+Shift+q kill
|
bindsym $mod+Shift+q kill
|
||||||
|
|
||||||
# start your launcher
|
# start your launcher
|
||||||
bindsym $mod+Return exec $menu
|
bindsym $mod+Return exec $menu
|
||||||
|
|
||||||
# Drag floating windows by holding down $mod and left mouse button.
|
# Drag floating windows by holding down $mod and left mouse button.
|
||||||
# Resize them with right mouse button + $mod.
|
# Resize them with right mouse button + $mod.
|
||||||
# Despite the name, also works for non-floating windows.
|
# Despite the name, also works for non-floating windows.
|
||||||
# Change normal to inverse to use left mouse button for resizing and right
|
# Change normal to inverse to use left mouse button for resizing and right
|
||||||
# mouse button for dragging.
|
# mouse button for dragging.
|
||||||
floating_modifier $mod normal
|
floating_modifier $mod normal
|
||||||
|
|
||||||
# reload the configuration file
|
# reload the configuration file
|
||||||
bindsym $mod+Shift+c reload
|
bindsym $mod+Shift+c reload
|
||||||
|
|
||||||
# exit sway (logs you out of your Wayland session)
|
# exit sway (logs you out of your Wayland session)
|
||||||
bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
|
bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
display-configs = pkgs.writeTextFile {
|
display-configs = pkgs.writeTextFile {
|
||||||
name = "display-configs.conf";
|
name = "display-configs.conf";
|
||||||
text = ''
|
text = ''
|
||||||
output 'Unknown 0x095F 0x00000000' scale 1.5
|
output 'Unknown 0x095F 0x00000000' scale 1.5
|
||||||
output 'BOE 0x095F Unknown' scale 1.5
|
output 'BOE 0x095F Unknown' scale 1.5
|
||||||
output 'BOE 0x0BCA Unknown' scale 1.5
|
output 'BOE 0x0BCA Unknown' scale 1.5
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
window-management = pkgs.writeTextFile {
|
window-management = pkgs.writeTextFile {
|
||||||
name = "window-management.conf";
|
name = "window-management.conf";
|
||||||
text = ''
|
text = ''
|
||||||
#
|
#
|
||||||
# Layout stuff:
|
# Layout stuff:
|
||||||
#
|
#
|
||||||
# You can "split" the current object of your focus with
|
# You can "split" the current object of your focus with
|
||||||
# $mod+b or $mod+v, for horizontal and vertical splits
|
# $mod+b or $mod+v, for horizontal and vertical splits
|
||||||
# respectively.
|
# respectively.
|
||||||
bindsym $mod+h splith
|
bindsym $mod+h splith
|
||||||
bindsym $mod+v splitv
|
bindsym $mod+v splitv
|
||||||
|
|
||||||
# Switch the current container between different layout styles
|
# Switch the current container between different layout styles
|
||||||
bindsym $mod+s layout stacking
|
bindsym $mod+s layout stacking
|
||||||
bindsym $mod+w layout tabbed
|
bindsym $mod+w layout tabbed
|
||||||
bindsym $mod+e layout toggle split
|
bindsym $mod+e layout toggle split
|
||||||
|
|
||||||
# Make the current focus fullscreen
|
# Make the current focus fullscreen
|
||||||
bindsym $mod+f fullscreen
|
bindsym $mod+f fullscreen
|
||||||
|
|
||||||
# Toggle the current focus between tiling and floating mode
|
# Toggle the current focus between tiling and floating mode
|
||||||
bindsym $mod+Shift+space floating toggle
|
bindsym $mod+Shift+space floating toggle
|
||||||
|
|
||||||
# Swap focus between the tiling area and the floating area
|
# Swap focus between the tiling area and the floating area
|
||||||
bindsym $mod+space focus mode_toggle
|
bindsym $mod+space focus mode_toggle
|
||||||
|
|
||||||
# move focus to the parent container
|
# move focus to the parent container
|
||||||
bindsym $mod+a focus parent
|
bindsym $mod+a focus parent
|
||||||
#
|
#
|
||||||
# Scratchpad:
|
# Scratchpad:
|
||||||
#
|
#
|
||||||
# Sway has a "scratchpad", which is a bag of holding for windows.
|
# Sway has a "scratchpad", which is a bag of holding for windows.
|
||||||
# You can send windows there and get them back later.
|
# You can send windows there and get them back later.
|
||||||
|
|
||||||
# Move the currently focused window to the scratchpad
|
# Move the currently focused window to the scratchpad
|
||||||
bindsym $mod+Shift+minus move scratchpad
|
bindsym $mod+Shift+minus move scratchpad
|
||||||
|
|
||||||
# Show the next scratchpad window or hide the focused scratchpad window.
|
# Show the next scratchpad window or hide the focused scratchpad window.
|
||||||
# If there are multiple scratchpad windows, this command cycles through them.
|
# If there are multiple scratchpad windows, this command cycles through them.
|
||||||
bindsym $mod+minus scratchpad show
|
bindsym $mod+minus scratchpad show
|
||||||
#
|
#
|
||||||
# Resizing containers:
|
# Resizing containers:
|
||||||
#
|
#
|
||||||
mode "resize" {
|
mode "resize" {
|
||||||
# left will shrink the containers width
|
# left will shrink the containers width
|
||||||
# right will grow the containers width
|
# right will grow the containers width
|
||||||
# up will shrink the containers height
|
# up will shrink the containers height
|
||||||
# down will grow the containers height
|
# down will grow the containers height
|
||||||
bindsym $left resize shrink width 10px
|
bindsym $left resize shrink width 10px
|
||||||
bindsym $down resize grow height 10px
|
bindsym $down resize grow height 10px
|
||||||
bindsym $up resize shrink height 10px
|
bindsym $up resize shrink height 10px
|
||||||
bindsym $right resize grow width 10px
|
bindsym $right resize grow width 10px
|
||||||
|
|
||||||
# ditto, with arrow keys
|
# ditto, with arrow keys
|
||||||
bindsym Left resize shrink width 10px
|
bindsym Left resize shrink width 10px
|
||||||
bindsym Down resize grow height 10px
|
bindsym Down resize grow height 10px
|
||||||
bindsym Up resize shrink height 10px
|
bindsym Up resize shrink height 10px
|
||||||
bindsym Right resize grow width 10px
|
bindsym Right resize grow width 10px
|
||||||
|
|
||||||
# return to default mode
|
# return to default mode
|
||||||
bindsym Return mode "default"
|
bindsym Return mode "default"
|
||||||
bindsym Escape mode "default"
|
bindsym Escape mode "default"
|
||||||
}
|
}
|
||||||
bindsym $mod+r mode "resize"
|
bindsym $mod+r mode "resize"
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
movement = pkgs.writeTextFile {
|
movement = pkgs.writeTextFile {
|
||||||
name = "movement.conf";
|
name = "movement.conf";
|
||||||
text = ''
|
text = ''
|
||||||
#
|
#
|
||||||
# Moving around:
|
# Moving around:
|
||||||
#
|
#
|
||||||
# Move your focus around
|
# Move your focus around
|
||||||
# bindsym $mod+$left focus left
|
# bindsym $mod+$left focus left
|
||||||
# bindsym $mod+$down focus down
|
# bindsym $mod+$down focus down
|
||||||
# bindsym $mod+$up focus up
|
# bindsym $mod+$up focus up
|
||||||
# bindsym $mod+$right focus right
|
# bindsym $mod+$right focus right
|
||||||
# or use $mod+[up|down|left|right]
|
# or use $mod+[up|down|left|right]
|
||||||
bindsym $mod+Left focus left
|
bindsym $mod+Left focus left
|
||||||
bindsym $mod+Down focus down
|
bindsym $mod+Down focus down
|
||||||
bindsym $mod+Up focus up
|
bindsym $mod+Up focus up
|
||||||
bindsym $mod+Right focus right
|
bindsym $mod+Right focus right
|
||||||
|
|
||||||
# _move_ the focused window with the same, but add Shift
|
# _move_ the focused window with the same, but add Shift
|
||||||
bindsym $mod+Shift+$left move left
|
bindsym $mod+Shift+$left move left
|
||||||
bindsym $mod+Shift+$down move down
|
bindsym $mod+Shift+$down move down
|
||||||
bindsym $mod+Shift+$up move up
|
bindsym $mod+Shift+$up move up
|
||||||
bindsym $mod+Shift+$right move right
|
bindsym $mod+Shift+$right move right
|
||||||
# ditto, with arrow keys
|
# ditto, with arrow keys
|
||||||
bindsym $mod+Shift+Left move left
|
bindsym $mod+Shift+Left move left
|
||||||
bindsym $mod+Shift+Down move down
|
bindsym $mod+Shift+Down move down
|
||||||
bindsym $mod+Shift+Up move up
|
bindsym $mod+Shift+Up move up
|
||||||
bindsym $mod+Shift+Right move right
|
bindsym $mod+Shift+Right move right
|
||||||
#
|
#
|
||||||
# Workspaces:
|
# Workspaces:
|
||||||
#
|
#
|
||||||
# switch to workspace
|
# switch to workspace
|
||||||
bindsym $mod+1 workspace 1
|
bindsym $mod+1 workspace 1
|
||||||
bindsym $mod+2 workspace 2
|
bindsym $mod+2 workspace 2
|
||||||
bindsym $mod+3 workspace 3
|
bindsym $mod+3 workspace 3
|
||||||
bindsym $mod+4 workspace 4
|
bindsym $mod+4 workspace 4
|
||||||
bindsym $mod+5 workspace 5
|
bindsym $mod+5 workspace 5
|
||||||
bindsym $mod+6 workspace 6
|
bindsym $mod+6 workspace 6
|
||||||
bindsym $mod+7 workspace 7
|
bindsym $mod+7 workspace 7
|
||||||
bindsym $mod+8 workspace 8
|
bindsym $mod+8 workspace 8
|
||||||
bindsym $mod+9 workspace 9
|
bindsym $mod+9 workspace 9
|
||||||
bindsym $mod+0 workspace 10
|
bindsym $mod+0 workspace 10
|
||||||
# move focused container to workspace
|
# move focused container to workspace
|
||||||
bindsym $mod+Shift+1 move container to workspace 1
|
bindsym $mod+Shift+1 move container to workspace 1
|
||||||
bindsym $mod+Shift+2 move container to workspace 2
|
bindsym $mod+Shift+2 move container to workspace 2
|
||||||
bindsym $mod+Shift+3 move container to workspace 3
|
bindsym $mod+Shift+3 move container to workspace 3
|
||||||
bindsym $mod+Shift+4 move container to workspace 4
|
bindsym $mod+Shift+4 move container to workspace 4
|
||||||
bindsym $mod+Shift+5 move container to workspace 5
|
bindsym $mod+Shift+5 move container to workspace 5
|
||||||
bindsym $mod+Shift+6 move container to workspace 6
|
bindsym $mod+Shift+6 move container to workspace 6
|
||||||
bindsym $mod+Shift+7 move container to workspace 7
|
bindsym $mod+Shift+7 move container to workspace 7
|
||||||
bindsym $mod+Shift+8 move container to workspace 8
|
bindsym $mod+Shift+8 move container to workspace 8
|
||||||
bindsym $mod+Shift+9 move container to workspace 9
|
bindsym $mod+Shift+9 move container to workspace 9
|
||||||
bindsym $mod+Shift+0 move container to workspace 10
|
bindsym $mod+Shift+0 move container to workspace 10
|
||||||
# Note: workspaces can have any name you want, not just numbers.
|
# Note: workspaces can have any name you want, not just numbers.
|
||||||
# We just use 1-10 as the default.
|
# We just use 1-10 as the default.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
disable-focus-follows-mouse = pkgs.writeTextFile {
|
disable-focus-follows-mouse = pkgs.writeTextFile {
|
||||||
name = "disable-focus-follows-mouse.conf";
|
name = "disable-focus-follows-mouse.conf";
|
||||||
text = ''
|
text = ''
|
||||||
# Disable focus following mouse
|
# Disable focus following mouse
|
||||||
focus_follows_mouse no
|
focus_follows_mouse no
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
imports = [];
|
imports = [ ];
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
alacritty
|
alacritty
|
||||||
|
@ -1,7 +1,12 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [];
|
imports = [ ];
|
||||||
|
|
||||||
boot.zfs.devNodes = "/dev/disk/by-partuuid";
|
boot.zfs.devNodes = "/dev/disk/by-partuuid";
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user