change color of icons
This commit is contained in:
parent
d0d10a9bfe
commit
2805942060
48
flake.lock
48
flake.lock
|
@ -7,11 +7,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1654113405,
|
"lastModified": 1656169755,
|
||||||
"narHash": "sha256-VpK+0QaWG2JRgB00lw77N9TjkE3ec0iMYIX1TzGpxa4=",
|
"narHash": "sha256-Nlnm4jeQWEGjYrE6hxi/7HYHjBSZ/E0RtjCYifnNsWk=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "ac2287df5a2d6f0a44bbcbd11701dbbf6ec43675",
|
"rev": "4a3d01fb53f52ac83194081272795aa4612c2381",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -23,11 +23,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1654758790,
|
"lastModified": 1657815135,
|
||||||
"narHash": "sha256-bXimktlkjL9s8ldMzMBslxEs80cjZDqrof1g8MbhmQI=",
|
"narHash": "sha256-+5Jby1ayRjtSgsM5IpRNeUgdcIutCKQWR6sypRtd1RE=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "e5556c75ac012ee6e03f39a56c1c51b0f7d658c2",
|
"rev": "c06d5fa9c605d143b15cafdbbb61c7c95388d76e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -36,13 +36,45 @@
|
||||||
"type": "indirect"
|
"type": "indirect"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs-unstable": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1657802959,
|
||||||
|
"narHash": "sha256-9+JWARSdlL8KiH3ymnKDXltE1vM+/WEJ78F5B1kjXys=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "4a01ca36d6bfc133bc617e661916a81327c9bbc8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "nixpkgs",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nur": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1657945102,
|
||||||
|
"narHash": "sha256-1zSR0lcc8beoUX8bymst5oeWiB6BGaQAP8fX8y+P1ds=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "NUR",
|
||||||
|
"rev": "eda10ab433fa2afd852a702e0fbdba90ff9d0863",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "NUR",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs",
|
||||||
|
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||||
|
"nur": "nur"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": "root",
|
"root": "root",
|
||||||
"version": 7
|
"version": 7
|
||||||
}
|
}
|
36
flake.nix
36
flake.nix
|
@ -2,34 +2,54 @@
|
||||||
description = "My system config";
|
description = "My system config";
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "nixpkgs/nixos-22.05";
|
nixpkgs.url = "nixpkgs/nixos-22.05";
|
||||||
|
nixpkgs-unstable.url = "nixpkgs/nixos-unstable";
|
||||||
home-manager.url = "github:nix-community/home-manager/release-22.05";
|
home-manager.url = "github:nix-community/home-manager/release-22.05";
|
||||||
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
nur.url = github:nix-community/NUR;
|
||||||
};
|
};
|
||||||
outputs = { nixpkgs, home-manager, ... }:
|
outputs = { nixpkgs, nixpkgs-unstable, home-manager, nur, ... }:
|
||||||
let
|
let
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
pkgs = import nixpkgs {
|
pkgs = import nixpkgs {
|
||||||
inherit system;
|
inherit system;
|
||||||
config = { allowUnfree = true; };
|
config = { allowUnfree = true; };
|
||||||
};
|
};
|
||||||
|
overlay-unstable = final: prev: {
|
||||||
|
unstable = nixpkgs-unstable.legacyPackages.${prev.system};
|
||||||
|
# use this variant if unfree packages are needed:
|
||||||
|
# unstable = import nixpkgs-unstable {
|
||||||
|
# inherit system;
|
||||||
|
# config.allowUnfree = true;
|
||||||
|
# };
|
||||||
|
};
|
||||||
lib = nixpkgs.lib;
|
lib = nixpkgs.lib;
|
||||||
|
common_modules = [
|
||||||
|
./system/configuration.nix
|
||||||
|
# nur.nixosModules.nur
|
||||||
|
({ config, pkgs, ... }: { nixpkgs.overlays = [ overlay-unstable ]; })
|
||||||
|
home-manager.nixosModules.home-manager
|
||||||
|
{
|
||||||
|
home-manager.useGlobalPkgs = true;
|
||||||
|
home-manager.useUserPackages = true;
|
||||||
|
home-manager.users.lelgenio = import ./user/home.nix;
|
||||||
|
# Optionally, use home-manager.extraSpecialArgs to pass
|
||||||
|
# arguments to home.nix
|
||||||
|
}
|
||||||
|
];
|
||||||
in {
|
in {
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
i15 = lib.nixosSystem {
|
i15 = lib.nixosSystem {
|
||||||
inherit system;
|
inherit system;
|
||||||
modules = [
|
modules = [
|
||||||
./system/configuration.nix
|
|
||||||
./system/i15-hardware-configuration.nix
|
./system/i15-hardware-configuration.nix
|
||||||
];
|
] ++ common_modules;
|
||||||
};
|
};
|
||||||
monolith = lib.nixosSystem {
|
monolith = lib.nixosSystem {
|
||||||
inherit system;
|
inherit system;
|
||||||
modules = [
|
modules = [
|
||||||
./system/configuration.nix
|
|
||||||
./system/monolith-hardware-configuration.nix
|
./system/monolith-hardware-configuration.nix
|
||||||
];
|
] ++ common_modules;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
|
@ -1,6 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
HERE="$(dirname "$0")"
|
HERE="$(dirname "$0")"
|
||||||
|
|
||||||
# sudo nixos-rebuild switch -I nixos-config="$HERE/system/configuration.nix"
|
# sudo nixos-rebuild switch -I nixos-config="$HERE/system/configuration.nix"
|
||||||
sudo nixos-rebuild switch --flake .#
|
sudo nixos-rebuild switch --verbose --flake .#
|
|
@ -1,27 +1,24 @@
|
||||||
# Edit this configuration file to define what should be installed on
|
# Edit this configuration file to define what should be installed on
|
||||||
# your system. Help is available in the configuration.nix(5) man page
|
# your system. Help is available in the configuration.nix(5) man page
|
||||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||||
|
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
let
|
let
|
||||||
# bash script to let dbus know about important env variables and
|
# bash script to let dbus know about important env variables and
|
||||||
# propogate them to relevent services run at the end of sway config
|
# propogate them to relevent services run at the end of sway config
|
||||||
# see
|
# see
|
||||||
# https://github.com/emersion/xdg-desktop-portal-wlr/wiki/"It-doesn't-work"-Troubleshooting-Checklist
|
# https://github.com/emersion/xdg-desktop-portal-wlr/wiki/"It-doesn't-work"-Troubleshooting-Checklist
|
||||||
# note: this is pretty much the same as /etc/sway/config.d/nixos.conf but also restarts
|
# note: this is pretty much the same as /etc/sway/config.d/nixos.conf but also restarts
|
||||||
# some user services to make sure they have the correct environment variables
|
# some user services to make sure they have the correct environment variables
|
||||||
dbus-sway-environment = pkgs.writeTextFile {
|
dbus-sway-environment = pkgs.writeTextFile {
|
||||||
name = "dbus-sway-environment";
|
name = "dbus-sway-environment";
|
||||||
destination = "/bin/dbus-sway-environment";
|
destination = "/bin/dbus-sway-environment";
|
||||||
executable = true;
|
executable = true;
|
||||||
|
|
||||||
text = ''
|
text = ''
|
||||||
dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway
|
dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway
|
||||||
systemctl --user stop pipewire pipewire-media-session xdg-desktop-portal xdg-desktop-portal-wlr
|
systemctl --user stop pipewire pipewire-media-session xdg-desktop-portal xdg-desktop-portal-wlr
|
||||||
systemctl --user start pipewire pipewire-media-session xdg-desktop-portal xdg-desktop-portal-wlr
|
systemctl --user start pipewire pipewire-media-session xdg-desktop-portal xdg-desktop-portal-wlr
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
# currently, there is some friction between sway and gtk:
|
# currently, there is some friction between sway and gtk:
|
||||||
# https://github.com/swaywm/sway/wiki/GTK-3-settings-on-Wayland
|
# https://github.com/swaywm/sway/wiki/GTK-3-settings-on-Wayland
|
||||||
# the suggested way to set gtk settings is with gsettings
|
# the suggested way to set gtk settings is with gsettings
|
||||||
|
@ -41,44 +38,34 @@ let
|
||||||
gsettings set $gnome_schema gtk-theme 'Dracula'
|
gsettings set $gnome_schema gtk-theme 'Dracula'
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
# Bootloader.
|
# Bootloader.
|
||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
boot.loader.efi.efiSysMountPoint = "/boot/efi";
|
boot.loader.efi.efiSysMountPoint = "/boot/efi";
|
||||||
|
|
||||||
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
||||||
|
|
||||||
# Configure network proxy if necessary
|
# Configure network proxy if necessary
|
||||||
# networking.proxy.default = "http://user:password@proxy:port/";
|
# networking.proxy.default = "http://user:password@proxy:port/";
|
||||||
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||||
|
|
||||||
# Enable networking
|
# Enable networking
|
||||||
networking.networkmanager.enable = true;
|
networking.networkmanager.enable = true;
|
||||||
|
|
||||||
# Set your time zone.
|
# Set your time zone.
|
||||||
time.timeZone = "America/Sao_Paulo";
|
time.timeZone = "America/Sao_Paulo";
|
||||||
|
|
||||||
# Select internationalisation properties.
|
# Select internationalisation properties.
|
||||||
i18n.defaultLocale = "pt_BR.utf8";
|
i18n.defaultLocale = "pt_BR.utf8";
|
||||||
|
|
||||||
# Enable the X11 windowing system.
|
# Enable the X11 windowing system.
|
||||||
services.xserver.enable = true;
|
services.xserver.enable = false;
|
||||||
|
|
||||||
# Enable the GNOME Desktop Environment.
|
# Enable the GNOME Desktop Environment.
|
||||||
# services.xserver.displayManager.gdm.enable = true;
|
# services.xserver.displayManager.gdm.enable = true;
|
||||||
# services.xserver.desktopManager.gnome.enable = true;
|
# services.xserver.desktopManager.gnome.enable = true;
|
||||||
# services.xserver.displayManager.autologin.user = "lelgenio";
|
# services.xserver.displayManager.autologin.user = "lelgenio";
|
||||||
|
|
||||||
# Configure keymap in X11
|
# Configure keymap in X11
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
layout = "us";
|
layout = "us";
|
||||||
xkbVariant = "colemak";
|
xkbVariant = "colemak";
|
||||||
};
|
};
|
||||||
console.keyMap = "colemak";
|
console.keyMap = "colemak";
|
||||||
|
|
||||||
# Enable CUPS to print documents.
|
# Enable CUPS to print documents.
|
||||||
# services.printing.enable = true;
|
# services.printing.enable = true;
|
||||||
services.dbus.enable = true;
|
services.dbus.enable = true;
|
||||||
|
@ -91,16 +78,13 @@ in
|
||||||
};
|
};
|
||||||
services.flatpak.enable = true;
|
services.flatpak.enable = true;
|
||||||
virtualisation.docker.enable = true;
|
virtualisation.docker.enable = true;
|
||||||
|
|
||||||
# Enable sound with pipewire.
|
# Enable sound with pipewire.
|
||||||
sound.enable = true;
|
sound.enable = true;
|
||||||
hardware.pulseaudio.enable = true;
|
hardware.pulseaudio.enable = true;
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
services.pipewire.enable = true;
|
services.pipewire.enable = true;
|
||||||
|
|
||||||
# Enable touchpad support (enabled default in most desktopManager).
|
# Enable touchpad support (enabled default in most desktopManager).
|
||||||
services.xserver.libinput.enable = true;
|
services.xserver.libinput.enable = true;
|
||||||
|
|
||||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||||
users.users.lelgenio = {
|
users.users.lelgenio = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
|
@ -108,6 +92,7 @@ in
|
||||||
extraGroups = [ "networkmanager" "wheel" "docker"];
|
extraGroups = [ "networkmanager" "wheel" "docker"];
|
||||||
shell = pkgs.fish;
|
shell = pkgs.fish;
|
||||||
};
|
};
|
||||||
|
services.getty.autologinUser = "lelgenio";
|
||||||
programs.fish.enable = true;
|
programs.fish.enable = true;
|
||||||
services.syncthing = {
|
services.syncthing = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -115,29 +100,23 @@ in
|
||||||
dataDir = "/home/lelgenio/";
|
dataDir = "/home/lelgenio/";
|
||||||
configDir = "/home/lelgenio/.config/syncthing";
|
configDir = "/home/lelgenio/.config/syncthing";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Allow unfree packages
|
# Allow unfree packages
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
# List packages installed in system profile. To search, run:
|
# List packages installed in system profile. To search, run:
|
||||||
# $ nix search wget
|
# $ nix search wget
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
# vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||||
# wget
|
# wget
|
||||||
git
|
git
|
||||||
pinentry-curses
|
pinentry-curses
|
||||||
firefox
|
firefox
|
||||||
vscode
|
vscode
|
||||||
micro
|
micro
|
||||||
fd
|
fd
|
||||||
|
|
||||||
kakoune
|
kakoune
|
||||||
kak-lsp
|
kak-lsp
|
||||||
|
|
||||||
pavucontrol
|
pavucontrol
|
||||||
|
|
||||||
tdesktop
|
tdesktop
|
||||||
|
|
||||||
# recomended by nixwiki
|
# recomended by nixwiki
|
||||||
alacritty # gpu accelerated terminal
|
alacritty # gpu accelerated terminal
|
||||||
sway
|
sway
|
||||||
|
@ -154,17 +133,13 @@ in
|
||||||
wl-clipboard # wl-copy and wl-paste for copy/paste from stdin / stdout
|
wl-clipboard # wl-copy and wl-paste for copy/paste from stdin / stdout
|
||||||
bemenu # wayland clone of dmenu
|
bemenu # wayland clone of dmenu
|
||||||
mako # notification system developed by swaywm maintainer
|
mako # notification system developed by swaywm maintainer
|
||||||
|
|
||||||
(orchis-theme.override { tweaks = [ "compact" "solid" ]; })
|
(orchis-theme.override { tweaks = [ "compact" "solid" ]; })
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
||||||
# enable sway window manager
|
# enable sway window manager
|
||||||
programs.sway = {
|
programs.sway = {
|
||||||
enable = true;
|
enable = true;
|
||||||
wrapperFeatures.gtk = true;
|
wrapperFeatures.gtk = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Some programs need SUID wrappers, can be configured further or are
|
# Some programs need SUID wrappers, can be configured further or are
|
||||||
# started in user sessions.
|
# started in user sessions.
|
||||||
# programs.mtr.enable = true;
|
# programs.mtr.enable = true;
|
||||||
|
@ -174,25 +149,20 @@ in
|
||||||
enableSSHSupport = true;
|
enableSSHSupport = true;
|
||||||
pinentryFlavor = "curses";
|
pinentryFlavor = "curses";
|
||||||
};
|
};
|
||||||
|
|
||||||
# List services that you want to enable:
|
# List services that you want to enable:
|
||||||
|
|
||||||
# Enable the OpenSSH daemon.
|
# Enable the OpenSSH daemon.
|
||||||
# services.openssh.enable = true;
|
# services.openssh.enable = true;
|
||||||
|
|
||||||
# Open ports in the firewall.
|
# Open ports in the firewall.
|
||||||
# networking.firewall.allowedTCPPorts = [ ... ];
|
# networking.firewall.allowedTCPPorts = [ ... ];
|
||||||
# networking.firewall.allowedUDPPorts = [ ... ];
|
# networking.firewall.allowedUDPPorts = [ ... ];
|
||||||
# Or disable the firewall altogether.
|
# Or disable the firewall altogether.
|
||||||
networking.firewall.enable = false;
|
networking.firewall.enable = false;
|
||||||
|
|
||||||
nix = {
|
nix = {
|
||||||
package = pkgs.nixFlakes; # or versioned attributes like nixVersions.nix_2_8
|
package = pkgs.nixFlakes; # or versioned attributes like nixVersions.nix_2_8
|
||||||
extraOptions = ''
|
extraOptions = ''
|
||||||
experimental-features = nix-command flakes
|
experimental-features = nix-command flakes
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
# This value determines the NixOS release from which the default
|
# This value determines the NixOS release from which the default
|
||||||
# settings for stateful data, like file locations and database versions
|
# settings for stateful data, like file locations and database versions
|
||||||
# on your system were taken. It‘s perfectly fine and recommended to leavecatenate(variables, "bootdev", bootdev)
|
# on your system were taken. It‘s perfectly fine and recommended to leavecatenate(variables, "bootdev", bootdev)
|
||||||
|
@ -200,5 +170,4 @@ in
|
||||||
# Before changing this value read the documentation for this option
|
# Before changing this value read the documentation for this option
|
||||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||||
system.stateVersion = "22.05"; # Did you read the comment?
|
system.stateVersion = "22.05"; # Did you read the comment?
|
||||||
|
}
|
||||||
}
|
|
|
@ -2,31 +2,25 @@
|
||||||
# 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 = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" "rtsx_usb_sdmmc" ];
|
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" "rtsx_usb_sdmmc" ];
|
||||||
boot.initrd.kernelModules = [ ];
|
boot.initrd.kernelModules = [ ];
|
||||||
boot.kernelModules = [ "kvm-intel" ];
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
fileSystems."/" =
|
fileSystems."/" =
|
||||||
{ device = "/dev/disk/by-uuid/67af2da1-b4a8-4c32-a7e8-c1d0a8de21ab";
|
{ device = "/dev/disk/by-uuid/67af2da1-b4a8-4c32-a7e8-c1d0a8de21ab";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot/efi" =
|
fileSystems."/boot/efi" =
|
||||||
{ device = "/dev/disk/by-uuid/1428-8899";
|
{ device = "/dev/disk/by-uuid/1428-8899";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices =
|
swapDevices =
|
||||||
[ { device = "/dev/disk/by-uuid/4d214f1e-63d5-4a1b-94fe-50af27824325"; }
|
[ { device = "/dev/disk/by-uuid/4d214f1e-63d5-4a1b-94fe-50af27824325"; }
|
||||||
];
|
];
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
# still possible to use this option, but it's recommended to use it in conjunction
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
|
@ -34,9 +28,7 @@
|
||||||
networking.useDHCP = lib.mkDefault true;
|
networking.useDHCP = lib.mkDefault true;
|
||||||
# networking.interfaces.enp2s0.useDHCP = lib.mkDefault true;
|
# networking.interfaces.enp2s0.useDHCP = lib.mkDefault true;
|
||||||
# networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true;
|
# networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
|
||||||
networking.hostName = "i15"; # Define your hostname.
|
networking.hostName = "i15"; # Define your hostname.
|
||||||
}
|
}
|
|
@ -2,42 +2,33 @@
|
||||||
# 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" "ahci" "usb_storage" "usbhid" "sd_mod" ];
|
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
|
||||||
boot.initrd.kernelModules = [ ];
|
boot.initrd.kernelModules = [ ];
|
||||||
boot.kernelModules = [ "kvm-amd" ];
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
fileSystems."/" =
|
fileSystems."/" =
|
||||||
{ device = "/dev/disk/by-uuid/bea0fbbd-c1a2-4379-8cc5-658507e36032";
|
{ device = "/dev/disk/by-uuid/bea0fbbd-c1a2-4379-8cc5-658507e36032";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=@" ];
|
options = [ "subvol=@" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
boot.initrd.luks.devices."luks-fb41335e-cca7-47e2-a886-24549b8accb8".device = "/dev/disk/by-uuid/fb41335e-cca7-47e2-a886-24549b8accb8";
|
boot.initrd.luks.devices."luks-fb41335e-cca7-47e2-a886-24549b8accb8".device = "/dev/disk/by-uuid/fb41335e-cca7-47e2-a886-24549b8accb8";
|
||||||
|
|
||||||
fileSystems."/boot/efi" =
|
fileSystems."/boot/efi" =
|
||||||
{ device = "/dev/disk/by-uuid/E2D7-919A";
|
{ device = "/dev/disk/by-uuid/E2D7-919A";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices =
|
swapDevices =
|
||||||
[ { device = "/dev/disk/by-uuid/3e5781c7-5e56-4b5d-9720-12b384fad726"; }
|
[ { device = "/dev/disk/by-uuid/3e5781c7-5e56-4b5d-9720-12b384fad726"; }
|
||||||
];
|
];
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
# still possible to use this option, but it's recommended to use it in conjunction
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||||
networking.useDHCP = lib.mkDefault true;
|
networking.useDHCP = lib.mkDefault true;
|
||||||
# networking.interfaces.enp4s0.useDHCP = lib.mkDefault true;
|
# networking.interfaces.enp4s0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
|
||||||
networking.hostName = "monolith"; # Define your hostname.
|
networking.hostName = "monolith"; # Define your hostname.
|
||||||
}
|
}
|
|
@ -1,5 +1,3 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
HERE="$(dirname "$0")"
|
HERE="$(dirname "$0")"
|
||||||
|
home-manager switch -f "$HERE/user/home.nix"
|
||||||
home-manager switch -f "$HERE/user/home.nix"
|
|
125
user/home.nix
125
user/home.nix
|
@ -1,5 +1,5 @@
|
||||||
{ config, pkgs, lib, ... }:
|
{ config, pkgs, lib, ... }:
|
||||||
let
|
let
|
||||||
key = {
|
key = {
|
||||||
left = "n";
|
left = "n";
|
||||||
down = "e";
|
down = "e";
|
||||||
|
@ -44,7 +44,6 @@ let
|
||||||
magenta= "#C397D8";
|
magenta= "#C397D8";
|
||||||
cyan= "#70C0BA";
|
cyan= "#70C0BA";
|
||||||
white= "#EAEAEA";
|
white= "#EAEAEA";
|
||||||
|
|
||||||
#non standard
|
#non standard
|
||||||
orange= "#FF7500";
|
orange= "#FF7500";
|
||||||
brown= "#A07040";
|
brown= "#A07040";
|
||||||
|
@ -52,19 +51,9 @@ let
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
# TODO: fix
|
# TODO: fix
|
||||||
papirus_red = (pkgs.papirus-icon-theme.overrideAttrs (old: rec {
|
papirus_red = (pkgs.unstable.papirus-icon-theme.override { color = "red"; });
|
||||||
preInstall = ''
|
|
||||||
for f in {,e}Papirus*/*/folder-red*; do
|
|
||||||
ln -vsf "$f" "$\{f/-red/}"
|
|
||||||
done
|
|
||||||
'';
|
|
||||||
}));
|
|
||||||
|
|
||||||
orchis_theme_compact = (pkgs.orchis-theme.override { tweaks = [ "compact" "solid" ]; });
|
orchis_theme_compact = (pkgs.orchis-theme.override { tweaks = [ "compact" "solid" ]; });
|
||||||
|
|
||||||
accent = accents.red;
|
accent = accents.red;
|
||||||
color = themes.dark.color;
|
color = themes.dark.color;
|
||||||
in {
|
in {
|
||||||
|
@ -72,7 +61,6 @@ in {
|
||||||
# paths it should manage.
|
# paths it should manage.
|
||||||
home.username = "lelgenio";
|
home.username = "lelgenio";
|
||||||
home.homeDirectory = "/home/lelgenio";
|
home.homeDirectory = "/home/lelgenio";
|
||||||
|
|
||||||
# This value determines the Home Manager release that your
|
# This value determines the Home Manager release that your
|
||||||
# configuration is compatible with. This helps avoid breakage
|
# configuration is compatible with. This helps avoid breakage
|
||||||
# when a new Home Manager release introduces backwards
|
# when a new Home Manager release introduces backwards
|
||||||
|
@ -82,17 +70,15 @@ in {
|
||||||
# the Home Manager release notes for a list of state version
|
# the Home Manager release notes for a list of state version
|
||||||
# changes in each release.
|
# changes in each release.
|
||||||
home.stateVersion = "22.05";
|
home.stateVersion = "22.05";
|
||||||
|
|
||||||
# Let Home Manager install and manage itself.
|
# Let Home Manager install and manage itself.
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
|
# nixpkgs.config.packageOverrides = pkgs: {
|
||||||
nixpkgs.config.packageOverrides = pkgs: {
|
# nur = import (builtins.fetchTarball "https://github.com/nix-community/NUR/archive/master.tar.gz") {
|
||||||
nur = import (builtins.fetchTarball "https://github.com/nix-community/NUR/archive/master.tar.gz") {
|
# inherit pkgs;
|
||||||
inherit pkgs;
|
# };
|
||||||
};
|
# };
|
||||||
};
|
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
|
helix
|
||||||
kanshi
|
kanshi
|
||||||
alacritty
|
alacritty
|
||||||
exa
|
exa
|
||||||
|
@ -102,30 +88,26 @@ in {
|
||||||
ffmpeg
|
ffmpeg
|
||||||
imagemagick
|
imagemagick
|
||||||
mpv
|
mpv
|
||||||
|
|
||||||
xfce.thunar
|
xfce.thunar
|
||||||
|
|
||||||
liberation_ttf
|
liberation_ttf
|
||||||
hack-font
|
hack-font
|
||||||
font-awesome_5
|
font-awesome_5
|
||||||
fira-code
|
fira-code
|
||||||
(nerdfonts.override { fonts = [ "FiraCode" "Hack" ]; })
|
(nerdfonts.override { fonts = [ "FiraCode" "Hack" ]; })
|
||||||
|
orchis_theme_compact
|
||||||
orchis_theme_compact
|
|
||||||
papirus_red
|
papirus_red
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.fish.enable = true;
|
programs.fish.enable = true;
|
||||||
|
|
||||||
programs.firefox = {
|
programs.firefox = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.firefox;
|
package = pkgs.firefox;
|
||||||
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
# extensions = with config.nur.repos.rycee.firefox-addons; [
|
||||||
darkreader
|
# darkreader
|
||||||
ublock-origin
|
# ublock-origin
|
||||||
tree-style-tab
|
# tree-style-tab
|
||||||
sponsorblock
|
# sponsorblock
|
||||||
];
|
# duckduckgo-privacy-essentials
|
||||||
|
# ];
|
||||||
profiles = {
|
profiles = {
|
||||||
main = {
|
main = {
|
||||||
isDefault = true;
|
isDefault = true;
|
||||||
|
@ -135,26 +117,23 @@ in {
|
||||||
"browser.tabs.inTitlebar" = 0;
|
"browser.tabs.inTitlebar" = 0;
|
||||||
};
|
};
|
||||||
userChrome = ''
|
userChrome = ''
|
||||||
#tabbrowser-tabs { visibility: collapse !important; }
|
#tabbrowser-tabs { visibility: collapse !important; }
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.command-not-found.enable = true;
|
programs.command-not-found.enable = true;
|
||||||
|
|
||||||
# home.file = {
|
# home.file = {
|
||||||
# ".config/sway/config".source = ./sway;
|
# ".config/sway/config".source = ./sway;
|
||||||
# };
|
# };
|
||||||
|
|
||||||
programs.waybar = {
|
programs.waybar = {
|
||||||
enable = true;
|
enable = true;
|
||||||
systemd.enable = true;
|
systemd.enable = true;
|
||||||
systemd.target = "sway-session.target";
|
systemd.target = "sway-session.target";
|
||||||
settings = [{
|
settings = [{
|
||||||
layer = "top";
|
layer = "top";
|
||||||
modules-left = [
|
modules-left = [
|
||||||
"sway/workspaces"
|
"sway/workspaces"
|
||||||
];
|
];
|
||||||
modules-center = [
|
modules-center = [
|
||||||
"clock"
|
"clock"
|
||||||
|
@ -170,7 +149,6 @@ in {
|
||||||
padding: 0;
|
padding: 0;
|
||||||
transition-duration:0;
|
transition-duration:0;
|
||||||
}
|
}
|
||||||
|
|
||||||
window#waybar {
|
window#waybar {
|
||||||
/* background-color: rgba(30,30,30,.9); */
|
/* background-color: rgba(30,30,30,.9); */
|
||||||
transition-duration: .5s;
|
transition-duration: .5s;
|
||||||
|
@ -184,22 +162,17 @@ in {
|
||||||
border-bottom:
|
border-bottom:
|
||||||
2px solid ${ color.bg_dark };
|
2px solid ${ color.bg_dark };
|
||||||
}
|
}
|
||||||
|
|
||||||
window#waybar.solo {
|
window#waybar.solo {
|
||||||
background-color: ${ color.bg };
|
background-color: ${ color.bg };
|
||||||
}
|
}
|
||||||
|
|
||||||
#workspaces button {
|
#workspaces button {
|
||||||
color: ${ color.bg_light };
|
color: ${ color.bg_light };
|
||||||
|
|
||||||
min-width:50px;
|
min-width:50px;
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border: 3px solid transparent;
|
border: 3px solid transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
#workspaces button.focused {
|
#workspaces button.focused {
|
||||||
color: ${ color.txt };
|
color: ${ color.txt };
|
||||||
|
|
||||||
/*{%@@ if bar_pos == "top" @@%}
|
/*{%@@ if bar_pos == "top" @@%}
|
||||||
border-top:
|
border-top:
|
||||||
{%@@ else @@%}
|
{%@@ else @@%}
|
||||||
|
@ -209,17 +182,14 @@ in {
|
||||||
3px solid ${ accent.color };
|
3px solid ${ accent.color };
|
||||||
/* border-bottom: 3px solid transparent; */
|
/* border-bottom: 3px solid transparent; */
|
||||||
}
|
}
|
||||||
|
|
||||||
/*Window Title*/
|
/*Window Title*/
|
||||||
#window {
|
#window {
|
||||||
color: ${ color.txt };
|
color: ${ color.txt };
|
||||||
margin:0 4px;
|
margin:0 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#mode {
|
#mode {
|
||||||
color: ${ accent.color };
|
color: ${ accent.color };
|
||||||
}
|
}
|
||||||
|
|
||||||
#mpd,
|
#mpd,
|
||||||
#custom-mpd,
|
#custom-mpd,
|
||||||
#tray,
|
#tray,
|
||||||
|
@ -244,11 +214,9 @@ in {
|
||||||
color: ${ color.txt };
|
color: ${ color.txt };
|
||||||
opacity:.7;
|
opacity:.7;
|
||||||
}
|
}
|
||||||
|
|
||||||
#battery{
|
#battery{
|
||||||
margin-right:15px;
|
margin-right:15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#clock,
|
#clock,
|
||||||
#custom-weather
|
#custom-weather
|
||||||
{
|
{
|
||||||
|
@ -261,31 +229,25 @@ in {
|
||||||
margin-top:-1px;
|
margin-top:-1px;
|
||||||
font-size:16px;
|
font-size:16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#mpd,
|
#mpd,
|
||||||
#window,
|
#window,
|
||||||
#workspaces
|
#workspaces
|
||||||
{
|
{
|
||||||
font-weight:normal;
|
font-weight:normal;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#custom-unpushed,
|
#custom-unpushed,
|
||||||
#custom-recording {
|
#custom-recording {
|
||||||
min-width:15px;
|
min-width:15px;
|
||||||
color: #ee4040;
|
color: #ee4040;
|
||||||
}
|
}
|
||||||
|
|
||||||
#tray {
|
#tray {
|
||||||
padding: 0;
|
padding: 0;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#language {
|
#language {
|
||||||
font-size: ${ font.size.medium }px;
|
font-size: ${ font.size.medium }px;
|
||||||
color: ${ color.bg_light };
|
color: ${ color.bg_light };
|
||||||
}
|
}
|
||||||
|
|
||||||
#custom-sleep {
|
#custom-sleep {
|
||||||
color: ${ accent.color };
|
color: ${ accent.color };
|
||||||
font-size: ${ font.size.big }px;
|
font-size: ${ font.size.big }px;
|
||||||
|
@ -293,8 +255,6 @@ in {
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
wayland.windowManager.sway = {
|
wayland.windowManager.sway = {
|
||||||
enable = true;
|
enable = true;
|
||||||
config = {
|
config = {
|
||||||
|
@ -305,8 +265,8 @@ in {
|
||||||
smartBorders = "on";
|
smartBorders = "on";
|
||||||
inner = 5;
|
inner = 5;
|
||||||
};
|
};
|
||||||
colors =
|
colors =
|
||||||
let
|
let
|
||||||
acc = accent.color;
|
acc = accent.color;
|
||||||
fg_acc = accent.fg;
|
fg_acc = accent.fg;
|
||||||
fg_color = color.txt;
|
fg_color = color.txt;
|
||||||
|
@ -336,7 +296,7 @@ in {
|
||||||
repeat_delay = "200";
|
repeat_delay = "200";
|
||||||
};
|
};
|
||||||
keybindings =
|
keybindings =
|
||||||
let
|
let
|
||||||
mod = "Mod4";
|
mod = "Mod4";
|
||||||
floating.modifier = "Mod4";
|
floating.modifier = "Mod4";
|
||||||
menu = "bemenu-run --bottom";
|
menu = "bemenu-run --bottom";
|
||||||
|
@ -352,7 +312,6 @@ in {
|
||||||
"${mod}+8" = "workspace number 8";
|
"${mod}+8" = "workspace number 8";
|
||||||
"${mod}+9" = "workspace number 9";
|
"${mod}+9" = "workspace number 9";
|
||||||
"${mod}+0" = "workspace number 10";
|
"${mod}+0" = "workspace number 10";
|
||||||
|
|
||||||
"${mod}+Shift+1" =
|
"${mod}+Shift+1" =
|
||||||
"move container to workspace number 1";
|
"move container to workspace number 1";
|
||||||
"${mod}+Shift+2" =
|
"${mod}+Shift+2" =
|
||||||
|
@ -374,11 +333,11 @@ in {
|
||||||
"${mod}+Shift+0" =
|
"${mod}+Shift+0" =
|
||||||
"move container to workspace number 10";
|
"move container to workspace number 10";
|
||||||
};
|
};
|
||||||
prev_next_binds =
|
prev_next_binds =
|
||||||
let
|
let
|
||||||
join_dict_arr = builtins.foldl' (a: v: a//v) {};
|
join_dict_arr = builtins.foldl' (a: v: a//v) {};
|
||||||
maybe_window = key:
|
maybe_window = key:
|
||||||
if (lib.strings.hasInfix "button" key)
|
if (lib.strings.hasInfix "button" key)
|
||||||
then "--whole-window"
|
then "--whole-window"
|
||||||
else "";
|
else "";
|
||||||
prev_binds = map (key:
|
prev_binds = map (key:
|
||||||
|
@ -387,54 +346,45 @@ in {
|
||||||
next_binds = map (key:
|
next_binds = map (key:
|
||||||
{"${maybe_window key} ${mod}+${key}" = "workspace next_on_output";}
|
{"${maybe_window key} ${mod}+${key}" = "workspace next_on_output";}
|
||||||
) [ key.tabR "bracketright" "Next" "button8" "button5" ];
|
) [ key.tabR "bracketright" "Next" "button8" "button5" ];
|
||||||
in
|
in
|
||||||
join_dict_arr (prev_binds ++ next_binds);
|
join_dict_arr (prev_binds ++ next_binds);
|
||||||
movement_binds = {
|
movement_binds = {
|
||||||
"${mod}+${key.left}" = "focus left";
|
"${mod}+${key.left}" = "focus left";
|
||||||
"${mod}+${key.down}" = "focus down";
|
"${mod}+${key.down}" = "focus down";
|
||||||
"${mod}+${key.up}" = "focus up";
|
"${mod}+${key.up}" = "focus up";
|
||||||
"${mod}+${key.right}" = "focus right";
|
"${mod}+${key.right}" = "focus right";
|
||||||
|
|
||||||
"${mod}+Left" = "focus left";
|
"${mod}+Left" = "focus left";
|
||||||
"${mod}+Down" = "focus down";
|
"${mod}+Down" = "focus down";
|
||||||
"${mod}+Up" = "focus up";
|
"${mod}+Up" = "focus up";
|
||||||
"${mod}+Right" = "focus right";
|
"${mod}+Right" = "focus right";
|
||||||
|
|
||||||
"${mod}+Shift+${key.left}" = "move left";
|
"${mod}+Shift+${key.left}" = "move left";
|
||||||
"${mod}+Shift+${key.down}" = "move down";
|
"${mod}+Shift+${key.down}" = "move down";
|
||||||
"${mod}+Shift+${key.up}" = "move up";
|
"${mod}+Shift+${key.up}" = "move up";
|
||||||
"${mod}+Shift+${key.right}" = "move right";
|
"${mod}+Shift+${key.right}" = "move right";
|
||||||
|
|
||||||
"${mod}+Shift+Left" = "move left";
|
"${mod}+Shift+Left" = "move left";
|
||||||
"${mod}+Shift+Down" = "move down";
|
"${mod}+Shift+Down" = "move down";
|
||||||
"${mod}+Shift+Up" = "move up";
|
"${mod}+Shift+Up" = "move up";
|
||||||
"${mod}+Shift+Right" = "move right";
|
"${mod}+Shift+Right" = "move right";
|
||||||
|
|
||||||
"${mod}+Control+${key.left}" = "resize shrink width";
|
"${mod}+Control+${key.left}" = "resize shrink width";
|
||||||
"${mod}+Control+${key.down}" = "resize grow height";
|
"${mod}+Control+${key.down}" = "resize grow height";
|
||||||
"${mod}+Control+${key.up}" = "resize shrink height";
|
"${mod}+Control+${key.up}" = "resize shrink height";
|
||||||
"${mod}+Control+${key.right}" = "resize grow width";
|
"${mod}+Control+${key.right}" = "resize grow width";
|
||||||
|
|
||||||
"${mod}+Control+Left" = "resize shrink width";
|
"${mod}+Control+Left" = "resize shrink width";
|
||||||
"${mod}+Control+Down" = "resize grow height";
|
"${mod}+Control+Down" = "resize grow height";
|
||||||
"${mod}+Control+Up" = "resize shrink height";
|
"${mod}+Control+Up" = "resize shrink height";
|
||||||
"${mod}+Control+Right" = "resize grow width";
|
"${mod}+Control+Right" = "resize grow width";
|
||||||
|
|
||||||
"${mod}+mod1+${key.left}" = "focus output left";
|
"${mod}+mod1+${key.left}" = "focus output left";
|
||||||
"${mod}+mod1+${key.down}" = "focus output down";
|
"${mod}+mod1+${key.down}" = "focus output down";
|
||||||
"${mod}+mod1+${key.up}" = "focus output up";
|
"${mod}+mod1+${key.up}" = "focus output up";
|
||||||
"${mod}+mod1+${key.right}" = "focus output right";
|
"${mod}+mod1+${key.right}" = "focus output right";
|
||||||
|
|
||||||
"${mod}+mod1+Left" = "focus output left";
|
"${mod}+mod1+Left" = "focus output left";
|
||||||
"${mod}+mod1+Down" = "focus output down";
|
"${mod}+mod1+Down" = "focus output down";
|
||||||
"${mod}+mod1+Up" = "focus output up";
|
"${mod}+mod1+Up" = "focus output up";
|
||||||
"${mod}+mod1+Right" = "focus output right";
|
"${mod}+mod1+Right" = "focus output right";
|
||||||
|
|
||||||
"${mod}+mod1+Shift+${key.left}" = "move workspace output left";
|
"${mod}+mod1+Shift+${key.left}" = "move workspace output left";
|
||||||
"${mod}+mod1+Shift+${key.down}" = "move workspace output down";
|
"${mod}+mod1+Shift+${key.down}" = "move workspace output down";
|
||||||
"${mod}+mod1+Shift+${key.up}" = "move workspace output up";
|
"${mod}+mod1+Shift+${key.up}" = "move workspace output up";
|
||||||
"${mod}+mod1+Shift+${key.right}" = "move workspace output right";
|
"${mod}+mod1+Shift+${key.right}" = "move workspace output right";
|
||||||
|
|
||||||
"${mod}+mod1+Shift+Left" = "move workspace output left";
|
"${mod}+mod1+Shift+Left" = "move workspace output left";
|
||||||
"${mod}+mod1+Shift+Down" = "move workspace output down";
|
"${mod}+mod1+Shift+Down" = "move workspace output down";
|
||||||
"${mod}+mod1+Shift+Up" = "move workspace output up";
|
"${mod}+mod1+Shift+Up" = "move workspace output up";
|
||||||
|
@ -452,31 +402,23 @@ in {
|
||||||
XF86AudioPrev = "exec playerctl previous";
|
XF86AudioPrev = "exec playerctl previous";
|
||||||
};
|
};
|
||||||
in {
|
in {
|
||||||
|
|
||||||
"${mod}+Return" = "exec ${terminal}";
|
"${mod}+Return" = "exec ${terminal}";
|
||||||
"${mod}+x" = "kill";
|
"${mod}+x" = "kill";
|
||||||
"${mod}+s" = "exec ${menu}";
|
"${mod}+s" = "exec ${menu}";
|
||||||
|
|
||||||
|
|
||||||
"${mod}+b" = "splith";
|
"${mod}+b" = "splith";
|
||||||
"${mod}+v" = "splitv";
|
"${mod}+v" = "splitv";
|
||||||
"${mod}+f" = "fullscreen toggle";
|
"${mod}+f" = "fullscreen toggle";
|
||||||
"${mod}+a" = "focus parent";
|
"${mod}+a" = "focus parent";
|
||||||
|
|
||||||
# "${mod}+s" = "layout stacking";
|
# "${mod}+s" = "layout stacking";
|
||||||
"${mod}+w" = "layout tabbed";
|
"${mod}+w" = "layout tabbed";
|
||||||
# "${mod}+e" = "layout toggle split";
|
# "${mod}+e" = "layout toggle split";
|
||||||
|
|
||||||
"${mod}+Shift+space" = "floating toggle";
|
"${mod}+Shift+space" = "floating toggle";
|
||||||
"${mod}+space" = "focus mode_toggle";
|
"${mod}+space" = "focus mode_toggle";
|
||||||
|
|
||||||
"${mod}+Shift+minus" = "move scratchpad";
|
"${mod}+Shift+minus" = "move scratchpad";
|
||||||
"${mod}+minus" = "scratchpad show";
|
"${mod}+minus" = "scratchpad show";
|
||||||
|
|
||||||
"${mod}+Shift+c" = "reload";
|
"${mod}+Shift+c" = "reload";
|
||||||
# "${mod}+Shift+e" =
|
# "${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'";
|
# "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'";
|
||||||
|
|
||||||
"${mod}+r" = "mode resize";
|
"${mod}+r" = "mode resize";
|
||||||
}
|
}
|
||||||
// workspace_binds
|
// workspace_binds
|
||||||
|
@ -488,7 +430,6 @@ in {
|
||||||
terminal = pkgs.alacritty.executable;
|
terminal = pkgs.alacritty.executable;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
services.kanshi = {
|
services.kanshi = {
|
||||||
enable = true;
|
enable = true;
|
||||||
profiles = {
|
profiles = {
|
||||||
|
@ -503,8 +444,8 @@ in {
|
||||||
}];
|
}];
|
||||||
exec = [
|
exec = [
|
||||||
"xrdb .Xresources"
|
"xrdb .Xresources"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
nomad = {
|
nomad = {
|
||||||
outputs = [{
|
outputs = [{
|
||||||
criteria = "eDP-1";
|
criteria = "eDP-1";
|
||||||
|
@ -513,16 +454,14 @@ in {
|
||||||
}];
|
}];
|
||||||
exec = [
|
exec = [
|
||||||
"xrdb .Xresources"
|
"xrdb .Xresources"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
services.kdeconnect = {
|
services.kdeconnect = {
|
||||||
enable = true;
|
enable = true;
|
||||||
indicator = true;
|
indicator = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
gtk = {
|
gtk = {
|
||||||
enable = true;
|
enable = true;
|
||||||
theme = {
|
theme = {
|
||||||
|
@ -531,11 +470,11 @@ in {
|
||||||
};
|
};
|
||||||
iconTheme = {
|
iconTheme = {
|
||||||
name = "Papirus-Dark";
|
name = "Papirus-Dark";
|
||||||
package = pkgs.papirus-icon-theme;
|
package = papirus_red;
|
||||||
};
|
};
|
||||||
cursorTheme = {
|
cursorTheme = {
|
||||||
name = "capitaine-cursors";
|
name = "capitaine-cursors";
|
||||||
package = papirus_red;
|
package = papirus_red;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
31
user/sway
31
user/sway
|
@ -3,7 +3,6 @@
|
||||||
# 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.
|
||||||
|
@ -19,7 +18,6 @@ set $term alacritty
|
||||||
# Note: pass the final command to swaymsg so that the resulting window can be opened
|
# Note: pass the final command to swaymsg so that the resulting window can be opened
|
||||||
# on the original workspace that the command was run on.
|
# on the original workspace that the command was run on.
|
||||||
set $menu bemenu-run
|
set $menu bemenu-run
|
||||||
|
|
||||||
### Output configuration
|
### Output configuration
|
||||||
#
|
#
|
||||||
# Default wallpaper (more resolutions are available in @datadir@/backgrounds/sway/)
|
# Default wallpaper (more resolutions are available in @datadir@/backgrounds/sway/)
|
||||||
|
@ -30,7 +28,6 @@ set $menu bemenu-run
|
||||||
# output HDMI-A-1 resolution 1920x1080 position 1920,0
|
# output HDMI-A-1 resolution 1920x1080 position 1920,0
|
||||||
#
|
#
|
||||||
# You can get the names of your outputs by running: swaymsg -t get_outputs
|
# You can get the names of your outputs by running: swaymsg -t get_outputs
|
||||||
|
|
||||||
### Idle configuration
|
### Idle configuration
|
||||||
#
|
#
|
||||||
# Example configuration:
|
# Example configuration:
|
||||||
|
@ -43,7 +40,6 @@ set $menu bemenu-run
|
||||||
# This will lock your screen after 300 seconds of inactivity, then turn off
|
# This will lock your screen after 300 seconds of inactivity, then turn off
|
||||||
# your displays after another 300 seconds, and turn your screens back on when
|
# your displays after another 300 seconds, and turn your screens back on when
|
||||||
# resumed. It will also lock your screen before your computer goes to sleep.
|
# resumed. It will also lock your screen before your computer goes to sleep.
|
||||||
|
|
||||||
### Input configuration
|
### Input configuration
|
||||||
#
|
#
|
||||||
# Example configuration:
|
# Example configuration:
|
||||||
|
@ -57,36 +53,27 @@ set $menu bemenu-run
|
||||||
#
|
#
|
||||||
# You can get the names of your inputs by running: swaymsg -t get_inputs
|
# You can get the names of your inputs by running: swaymsg -t get_inputs
|
||||||
# Read `man 5 sway-input` for more information about this section.
|
# Read `man 5 sway-input` for more information about this section.
|
||||||
|
|
||||||
input * {
|
input * {
|
||||||
xkb_layout "us(colemak)"
|
xkb_layout "us(colemak)"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
### Key bindings
|
### Key bindings
|
||||||
#
|
#
|
||||||
# Basics:
|
# Basics:
|
||||||
#
|
#
|
||||||
# Start a terminal
|
# Start a terminal
|
||||||
bindsym $mod+Return exec $term
|
bindsym $mod+Return exec $term
|
||||||
|
|
||||||
# Kill focused window
|
# Kill focused window
|
||||||
bindsym $mod+Shift+q kill
|
bindsym $mod+Shift+q kill
|
||||||
|
|
||||||
# Start your launcher
|
# Start your launcher
|
||||||
bindsym $mod+s exec $menu
|
bindsym $mod+s 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'
|
||||||
#
|
#
|
||||||
|
@ -102,7 +89,6 @@ input * {
|
||||||
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
|
||||||
|
@ -148,21 +134,16 @@ input * {
|
||||||
# respectively.
|
# respectively.
|
||||||
bindsym $mod+b splith
|
bindsym $mod+b 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
|
||||||
#
|
#
|
||||||
|
@ -170,10 +151,8 @@ input * {
|
||||||
#
|
#
|
||||||
# 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
|
||||||
|
@ -189,37 +168,29 @@ mode "resize" {
|
||||||
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"
|
||||||
|
|
||||||
#
|
#
|
||||||
# Status Bar:
|
# Status Bar:
|
||||||
#
|
#
|
||||||
# Read `man 5 sway-bar` for more information about this section.
|
# Read `man 5 sway-bar` for more information about this section.
|
||||||
bar {
|
bar {
|
||||||
position top
|
position top
|
||||||
|
|
||||||
# When the status_command prints a new line to stdout, swaybar updates.
|
# When the status_command prints a new line to stdout, swaybar updates.
|
||||||
# The default just shows the current date and time.
|
# The default just shows the current date and time.
|
||||||
status_command while date +'%Y-%m-%d %I:%M:%S %p'; do sleep 1; done
|
status_command while date +'%Y-%m-%d %I:%M:%S %p'; do sleep 1; done
|
||||||
|
|
||||||
colors {
|
colors {
|
||||||
statusline #ffffff
|
statusline #ffffff
|
||||||
background #323232
|
background #323232
|
||||||
inactive_workspace #32323200 #32323200 #5c5c5c
|
inactive_workspace #32323200 #32323200 #5c5c5c
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
include @sysconfdir@/sway/config.d/*
|
||||||
|
|
||||||
include @sysconfdir@/sway/config.d/*
|
|
||||||
|
|
Loading…
Reference in a new issue