Auto-indent every file
This commit is contained in:
parent
d705ce20c3
commit
4787fea598
14 changed files with 977 additions and 997 deletions
48
base.nix
48
base.nix
|
@ -2,7 +2,7 @@
|
|||
{ config, pkgs, ... }:
|
||||
{
|
||||
#################### Packages ####################
|
||||
environment.systemPackages = with pkgs; [
|
||||
environment.systemPackages = with pkgs; [
|
||||
rxvt-unicode-emoji
|
||||
tmux
|
||||
git
|
||||
|
@ -10,12 +10,12 @@
|
|||
nano
|
||||
p7zip
|
||||
tree
|
||||
];
|
||||
];
|
||||
|
||||
#################### ZSH configuration ####################
|
||||
users.defaultUserShell = pkgs.zsh;
|
||||
environment.shells = with pkgs; [ zsh ];
|
||||
programs.zsh = {
|
||||
users.defaultUserShell = pkgs.zsh;
|
||||
environment.shells = with pkgs; [ zsh ];
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
autosuggestions.enable = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
|
@ -41,8 +41,8 @@
|
|||
|
||||
|
||||
#################### tmux configuration ####################
|
||||
programs.tmux.enable = true;
|
||||
programs.tmux.extraConfig =
|
||||
programs.tmux.enable = true;
|
||||
programs.tmux.extraConfig =
|
||||
''
|
||||
unbind C-b
|
||||
set -g prefix M-w
|
||||
|
@ -83,37 +83,37 @@
|
|||
'';
|
||||
|
||||
#################### SSH configuration ####################
|
||||
services.openssh.enable = true;
|
||||
services.openssh.settings.PasswordAuthentication = false;
|
||||
users.users.root.openssh.authorizedKeys.keys = [ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBbGREoK1uVny1s8FK3KZ74Wmaf0VtifhqPyK69C/Gez vili@helium" ];
|
||||
services.openssh.enable = true;
|
||||
services.openssh.settings.PasswordAuthentication = false;
|
||||
users.users.root.openssh.authorizedKeys.keys = [ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBbGREoK1uVny1s8FK3KZ74Wmaf0VtifhqPyK69C/Gez vili@helium" ];
|
||||
|
||||
#################### BASE ####################
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
|
||||
|
||||
users.mutableUsers = false; # Force all user management to happen throught nix-files
|
||||
users.mutableUsers = false; # Force all user management to happen throught nix-files
|
||||
|
||||
# Select internationalisation properties.
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
services.xserver.xkb = {
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
services.xserver.xkb = {
|
||||
layout = "us,";
|
||||
variant = "de_se_fi,";
|
||||
};
|
||||
console = pkgs.lib.mkForce {
|
||||
};
|
||||
console = pkgs.lib.mkForce {
|
||||
font = "Lat2-Terminus16";
|
||||
useXkbConfig = true; # use xkbOptions in tty.
|
||||
};
|
||||
time.timeZone = "Europe/Helsinki";
|
||||
};
|
||||
time.timeZone = "Europe/Helsinki";
|
||||
|
||||
|
||||
#################### Housekeeping ####################
|
||||
system.autoUpgrade = {
|
||||
system.autoUpgrade = {
|
||||
enable = true;
|
||||
dates = "04:00";
|
||||
randomizedDelaySec = "30min";
|
||||
};
|
||||
};
|
||||
|
||||
nix = {
|
||||
nix = {
|
||||
settings = {
|
||||
auto-optimise-store = true;
|
||||
tarball-ttl = 0;
|
||||
|
@ -124,10 +124,10 @@
|
|||
dates = "05:00";
|
||||
randomizedDelaySec = "30min";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Copy the NixOS configuration file and link it from the resulting system
|
||||
# (/run/current-system/configuration.nix). This is useful in case you
|
||||
# accidentally delete configuration.nix.
|
||||
system.copySystemConfiguration = true;
|
||||
system.copySystemConfiguration = true;
|
||||
}
|
||||
|
|
|
@ -9,15 +9,15 @@ let
|
|||
ref = "main";
|
||||
};
|
||||
in
|
||||
{
|
||||
{
|
||||
# Verification will be available soon, so keeping this here as a reminder
|
||||
# publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBbGREoK1uVny1s8FK3KZ74Wmaf0VtifhqPyK69C/Gez vili@helium";
|
||||
# nix.settings.experimental-features = "verified-fetches";
|
||||
|
||||
imports = [
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
"${repo}/machine-confs/${host}.nix"
|
||||
];
|
||||
];
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
|
@ -25,5 +25,5 @@ in
|
|||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = stateVersion; # Did you read the comment?
|
||||
system.stateVersion = stateVersion; # Did you read the comment?
|
||||
}
|
||||
|
|
512
desktop.nix
512
desktop.nix
|
@ -1,7 +1,7 @@
|
|||
#Config for graphical desktop
|
||||
{ config, pkgs, ... }:
|
||||
let
|
||||
i3status-conf = "${pkgs.writeText "i3status-conf"
|
||||
i3status-conf = "${pkgs.writeText "i3status-conf"
|
||||
''
|
||||
# i3status configuration file.
|
||||
# see "man i3status" for documentation.
|
||||
|
@ -11,44 +11,44 @@ i3status-conf = "${pkgs.writeText "i3status-conf"
|
|||
# ß
|
||||
# If the above line is not correctly displayed, fix your editor first!
|
||||
|
||||
general {
|
||||
general {
|
||||
output_format = "i3bar"
|
||||
colors = true
|
||||
interval = 5
|
||||
color_good = "#2AA198"
|
||||
color_bad = "#586E75"
|
||||
color_degraded = "#DC322F"
|
||||
}
|
||||
}
|
||||
|
||||
order += "battery all"
|
||||
order += "cpu_usage"
|
||||
order += "memory"
|
||||
order += "ethernet _first_"
|
||||
order += "wireless _first_"
|
||||
order += "disk /"
|
||||
order += "tztime local"
|
||||
order += "tztime helsinki"
|
||||
order += "battery all"
|
||||
order += "cpu_usage"
|
||||
order += "memory"
|
||||
order += "ethernet _first_"
|
||||
order += "wireless _first_"
|
||||
order += "disk /"
|
||||
order += "tztime local"
|
||||
order += "tztime helsinki"
|
||||
|
||||
cpu_usage {
|
||||
cpu_usage {
|
||||
format = " CPU %usage "
|
||||
}
|
||||
}
|
||||
|
||||
disk "/" {
|
||||
disk "/" {
|
||||
# format = " hdd %avail "
|
||||
format = " ⛁ %avail "
|
||||
}
|
||||
}
|
||||
|
||||
ethernet _first_ {
|
||||
ethernet _first_ {
|
||||
format_up = " LAN: %ip "
|
||||
format_down = " No LAN "
|
||||
}
|
||||
}
|
||||
|
||||
wireless _first_ {
|
||||
wireless _first_ {
|
||||
format_up = " %quality%essid: %ip "
|
||||
format_down = ""
|
||||
}
|
||||
}
|
||||
|
||||
battery all {
|
||||
battery all {
|
||||
# format = "%status %percentage %remaining %emptytime"
|
||||
format = " bat %status %percentage (%remaining left) "
|
||||
format_down = ""
|
||||
|
@ -66,206 +66,206 @@ battery all {
|
|||
status_full = "☻"
|
||||
low_threshold = 30
|
||||
threshold_type = time
|
||||
}
|
||||
}
|
||||
|
||||
memory {
|
||||
memory {
|
||||
format = " RAM %used / %total "
|
||||
threshold_degraded = "10%"
|
||||
}
|
||||
}
|
||||
|
||||
tztime local {
|
||||
tztime local {
|
||||
format = " %d.%m. %H:%M "
|
||||
}
|
||||
}
|
||||
|
||||
tztime helsinki {
|
||||
tztime helsinki {
|
||||
format = " (HEL %H:%M) "
|
||||
timezone = "Europe/Helsinki"
|
||||
hide_if_equals_localtime = true
|
||||
}
|
||||
}
|
||||
''}";
|
||||
i3-conf = "${pkgs.writeText "i3config"
|
||||
''
|
||||
# Set mod key (Mod1=<Alt>, Mod4=<Super>)
|
||||
set $mod Mod4
|
||||
set $mod Mod4
|
||||
|
||||
# Workspace names
|
||||
# to display names or symbols instead of plain workspace numbers you can use
|
||||
# something like: set $ws1 1:mail
|
||||
# set $ws2 2:
|
||||
set $ws1 1
|
||||
set $ws2 2
|
||||
set $ws3 3
|
||||
set $ws4 4
|
||||
set $ws5 5
|
||||
set $ws6 6
|
||||
set $ws7 7
|
||||
set $ws8 8
|
||||
set $ws9 9
|
||||
set $ws10 10
|
||||
set $ws11 11
|
||||
set $ws12 12
|
||||
set $ws13 13
|
||||
set $ws14 14
|
||||
set $ws15 15
|
||||
set $ws16 16
|
||||
set $ws17 17
|
||||
set $ws18 18
|
||||
set $ws19 19
|
||||
set $ws20 20
|
||||
set $ws1 1
|
||||
set $ws2 2
|
||||
set $ws3 3
|
||||
set $ws4 4
|
||||
set $ws5 5
|
||||
set $ws6 6
|
||||
set $ws7 7
|
||||
set $ws8 8
|
||||
set $ws9 9
|
||||
set $ws10 10
|
||||
set $ws11 11
|
||||
set $ws12 12
|
||||
set $ws13 13
|
||||
set $ws14 14
|
||||
set $ws15 15
|
||||
set $ws16 16
|
||||
set $ws17 17
|
||||
set $ws18 18
|
||||
set $ws19 19
|
||||
set $ws20 20
|
||||
|
||||
# switch to workspace
|
||||
bindsym $mod+1 workspace $ws1
|
||||
bindsym $mod+2 workspace $ws2
|
||||
bindsym $mod+3 workspace $ws3
|
||||
bindsym $mod+4 workspace $ws4
|
||||
bindsym $mod+5 workspace $ws5
|
||||
bindsym $mod+6 workspace $ws6
|
||||
bindsym $mod+7 workspace $ws7
|
||||
bindsym $mod+8 workspace $ws8
|
||||
bindsym $mod+9 workspace $ws9
|
||||
bindsym $mod+0 workspace $ws10
|
||||
bindsym $mod+Mod1+1 workspace $ws11
|
||||
bindsym $mod+Mod1+2 workspace $ws12
|
||||
bindsym $mod+Mod1+3 workspace $ws13
|
||||
bindsym $mod+Mod1+4 workspace $ws14
|
||||
bindsym $mod+Mod1+5 workspace $ws15
|
||||
bindsym $mod+Mod1+6 workspace $ws16
|
||||
bindsym $mod+Mod1+7 workspace $ws17
|
||||
bindsym $mod+Mod1+8 workspace $ws18
|
||||
bindsym $mod+Mod1+9 workspace $ws19
|
||||
bindsym $mod+Mod1+0 workspace $ws20
|
||||
bindsym $mod+1 workspace $ws1
|
||||
bindsym $mod+2 workspace $ws2
|
||||
bindsym $mod+3 workspace $ws3
|
||||
bindsym $mod+4 workspace $ws4
|
||||
bindsym $mod+5 workspace $ws5
|
||||
bindsym $mod+6 workspace $ws6
|
||||
bindsym $mod+7 workspace $ws7
|
||||
bindsym $mod+8 workspace $ws8
|
||||
bindsym $mod+9 workspace $ws9
|
||||
bindsym $mod+0 workspace $ws10
|
||||
bindsym $mod+Mod1+1 workspace $ws11
|
||||
bindsym $mod+Mod1+2 workspace $ws12
|
||||
bindsym $mod+Mod1+3 workspace $ws13
|
||||
bindsym $mod+Mod1+4 workspace $ws14
|
||||
bindsym $mod+Mod1+5 workspace $ws15
|
||||
bindsym $mod+Mod1+6 workspace $ws16
|
||||
bindsym $mod+Mod1+7 workspace $ws17
|
||||
bindsym $mod+Mod1+8 workspace $ws18
|
||||
bindsym $mod+Mod1+9 workspace $ws19
|
||||
bindsym $mod+Mod1+0 workspace $ws20
|
||||
|
||||
# Move focused container to workspace
|
||||
bindsym $mod+Ctrl+1 move container to workspace $ws1
|
||||
bindsym $mod+Ctrl+2 move container to workspace $ws2
|
||||
bindsym $mod+Ctrl+3 move container to workspace $ws3
|
||||
bindsym $mod+Ctrl+4 move container to workspace $ws4
|
||||
bindsym $mod+Ctrl+5 move container to workspace $ws5
|
||||
bindsym $mod+Ctrl+6 move container to workspace $ws6
|
||||
bindsym $mod+Ctrl+7 move container to workspace $ws7
|
||||
bindsym $mod+Ctrl+8 move container to workspace $ws8
|
||||
bindsym $mod+Ctrl+9 move container to workspace $ws9
|
||||
bindsym $mod+Ctrl+0 move container to workspace $ws10
|
||||
bindsym $mod+Mod1+Ctrl+1 move container to workspace $ws11
|
||||
bindsym $mod+Mod1+Ctrl+2 move container to workspace $ws12
|
||||
bindsym $mod+Mod1+Ctrl+3 move container to workspace $ws13
|
||||
bindsym $mod+Mod1+Ctrl+4 move container to workspace $ws14
|
||||
bindsym $mod+Mod1+Ctrl+5 move container to workspace $ws15
|
||||
bindsym $mod+Mod1+Ctrl+6 move container to workspace $ws16
|
||||
bindsym $mod+Mod1+Ctrl+7 move container to workspace $ws17
|
||||
bindsym $mod+Mod1+Ctrl+8 move container to workspace $ws18
|
||||
bindsym $mod+Mod1+Ctrl+9 move container to workspace $ws19
|
||||
bindsym $mod+Mod1+Ctrl+0 move container to workspace $ws20
|
||||
bindsym $mod+Ctrl+1 move container to workspace $ws1
|
||||
bindsym $mod+Ctrl+2 move container to workspace $ws2
|
||||
bindsym $mod+Ctrl+3 move container to workspace $ws3
|
||||
bindsym $mod+Ctrl+4 move container to workspace $ws4
|
||||
bindsym $mod+Ctrl+5 move container to workspace $ws5
|
||||
bindsym $mod+Ctrl+6 move container to workspace $ws6
|
||||
bindsym $mod+Ctrl+7 move container to workspace $ws7
|
||||
bindsym $mod+Ctrl+8 move container to workspace $ws8
|
||||
bindsym $mod+Ctrl+9 move container to workspace $ws9
|
||||
bindsym $mod+Ctrl+0 move container to workspace $ws10
|
||||
bindsym $mod+Mod1+Ctrl+1 move container to workspace $ws11
|
||||
bindsym $mod+Mod1+Ctrl+2 move container to workspace $ws12
|
||||
bindsym $mod+Mod1+Ctrl+3 move container to workspace $ws13
|
||||
bindsym $mod+Mod1+Ctrl+4 move container to workspace $ws14
|
||||
bindsym $mod+Mod1+Ctrl+5 move container to workspace $ws15
|
||||
bindsym $mod+Mod1+Ctrl+6 move container to workspace $ws16
|
||||
bindsym $mod+Mod1+Ctrl+7 move container to workspace $ws17
|
||||
bindsym $mod+Mod1+Ctrl+8 move container to workspace $ws18
|
||||
bindsym $mod+Mod1+Ctrl+9 move container to workspace $ws19
|
||||
bindsym $mod+Mod1+Ctrl+0 move container to workspace $ws20
|
||||
|
||||
# Move to workspace with focused container
|
||||
bindsym $mod+Shift+1 move container to workspace $ws1; workspace $ws1
|
||||
bindsym $mod+Shift+2 move container to workspace $ws2; workspace $ws2
|
||||
bindsym $mod+Shift+3 move container to workspace $ws3; workspace $ws3
|
||||
bindsym $mod+Shift+4 move container to workspace $ws4; workspace $ws4
|
||||
bindsym $mod+Shift+5 move container to workspace $ws5; workspace $ws5
|
||||
bindsym $mod+Shift+6 move container to workspace $ws6; workspace $ws6
|
||||
bindsym $mod+Shift+7 move container to workspace $ws7; workspace $ws7
|
||||
bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8
|
||||
bindsym $mod+Shift+9 move container to workspace $ws9; workspace $ws9
|
||||
bindsym $mod+Shift+0 move container to workspace $ws10; workspace $ws10
|
||||
bindsym $mod+Mod1+Shift+1 move container to workspace $ws11; workspace $ws11
|
||||
bindsym $mod+Mod1+Shift+2 move container to workspace $ws12; workspace $ws12
|
||||
bindsym $mod+Mod1+Shift+3 move container to workspace $ws13; workspace $ws13
|
||||
bindsym $mod+Mod1+Shift+4 move container to workspace $ws14; workspace $ws14
|
||||
bindsym $mod+Mod1+Shift+5 move container to workspace $ws15; workspace $ws15
|
||||
bindsym $mod+Mod1+Shift+6 move container to workspace $ws16; workspace $ws16
|
||||
bindsym $mod+Mod1+Shift+7 move container to workspace $ws17; workspace $ws17
|
||||
bindsym $mod+Mod1+Shift+8 move container to workspace $ws18; workspace $ws18
|
||||
bindsym $mod+Mod1+Shift+9 move container to workspace $ws19; workspace $ws19
|
||||
bindsym $mod+Mod1+Shift+0 move container to workspace $ws20; workspace $ws20
|
||||
bindsym $mod+Shift+1 move container to workspace $ws1; workspace $ws1
|
||||
bindsym $mod+Shift+2 move container to workspace $ws2; workspace $ws2
|
||||
bindsym $mod+Shift+3 move container to workspace $ws3; workspace $ws3
|
||||
bindsym $mod+Shift+4 move container to workspace $ws4; workspace $ws4
|
||||
bindsym $mod+Shift+5 move container to workspace $ws5; workspace $ws5
|
||||
bindsym $mod+Shift+6 move container to workspace $ws6; workspace $ws6
|
||||
bindsym $mod+Shift+7 move container to workspace $ws7; workspace $ws7
|
||||
bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8
|
||||
bindsym $mod+Shift+9 move container to workspace $ws9; workspace $ws9
|
||||
bindsym $mod+Shift+0 move container to workspace $ws10; workspace $ws10
|
||||
bindsym $mod+Mod1+Shift+1 move container to workspace $ws11; workspace $ws11
|
||||
bindsym $mod+Mod1+Shift+2 move container to workspace $ws12; workspace $ws12
|
||||
bindsym $mod+Mod1+Shift+3 move container to workspace $ws13; workspace $ws13
|
||||
bindsym $mod+Mod1+Shift+4 move container to workspace $ws14; workspace $ws14
|
||||
bindsym $mod+Mod1+Shift+5 move container to workspace $ws15; workspace $ws15
|
||||
bindsym $mod+Mod1+Shift+6 move container to workspace $ws16; workspace $ws16
|
||||
bindsym $mod+Mod1+Shift+7 move container to workspace $ws17; workspace $ws17
|
||||
bindsym $mod+Mod1+Shift+8 move container to workspace $ws18; workspace $ws18
|
||||
bindsym $mod+Mod1+Shift+9 move container to workspace $ws19; workspace $ws19
|
||||
bindsym $mod+Mod1+Shift+0 move container to workspace $ws20; workspace $ws20
|
||||
|
||||
# Configure border style <normal|1pixel|pixel xx|none|pixel>
|
||||
default_border pixel 3
|
||||
default_floating_border normal
|
||||
default_border pixel 3
|
||||
default_floating_border normal
|
||||
|
||||
# Hide borders
|
||||
hide_edge_borders none
|
||||
hide_edge_borders none
|
||||
|
||||
# Font for window titles. Will also be used by the bar unless a different font
|
||||
# is used in the bar {} block below.
|
||||
font xft:URWGothic-Book 14
|
||||
font xft:URWGothic-Book 14
|
||||
|
||||
# Use Mouse+$mod to drag floating windows
|
||||
floating_modifier $mod
|
||||
floating_modifier $mod
|
||||
|
||||
# start a terminal
|
||||
bindsym $mod+Return exec urxvt
|
||||
bindsym $mod+Return exec urxvt
|
||||
|
||||
# kill focused window
|
||||
bindsym $mod+Shift+q kill
|
||||
bindsym $mod+Shift+q kill
|
||||
|
||||
# start program launcher
|
||||
bindsym $mod+d exec --no-startup-id "rofi -theme 'Arc-Dark' -show combi -combi-modes 'run,ssh' -modes combi"
|
||||
bindsym $mod+d exec --no-startup-id "rofi -theme 'Arc-Dark' -show combi -combi-modes 'run,ssh' -modes combi"
|
||||
|
||||
# change focus
|
||||
# bindsym $mod+i focus left
|
||||
# bindsym $mod+n focus down
|
||||
# bindsym $mod+e focus up
|
||||
# bindsym $mod+o focus right
|
||||
bindsym $mod+h focus left
|
||||
bindsym $mod+j focus down
|
||||
bindsym $mod+k focus up
|
||||
bindsym $mod+l focus right
|
||||
bindsym $mod+h focus left
|
||||
bindsym $mod+j focus down
|
||||
bindsym $mod+k focus up
|
||||
bindsym $mod+l focus right
|
||||
# MARK!
|
||||
|
||||
# alternatively, you can use the cursor keys:
|
||||
bindsym $mod+Left focus left
|
||||
bindsym $mod+Down focus down
|
||||
bindsym $mod+Up focus up
|
||||
bindsym $mod+Right focus right
|
||||
bindsym $mod+Left focus left
|
||||
bindsym $mod+Down focus down
|
||||
bindsym $mod+Up focus up
|
||||
bindsym $mod+Right focus right
|
||||
|
||||
# move focused window
|
||||
# bindsym $mod+Shift+i move left
|
||||
# bindsym $mod+Shift+n move down
|
||||
# bindsym $mod+Shift+e move up
|
||||
# bindsym $mod+Shift+o move right
|
||||
bindsym $mod+Shift+h move left
|
||||
bindsym $mod+Shift+j move down
|
||||
bindsym $mod+Shift+k move up
|
||||
bindsym $mod+Shift+l move right
|
||||
bindsym $mod+Shift+h move left
|
||||
bindsym $mod+Shift+j move down
|
||||
bindsym $mod+Shift+k move up
|
||||
bindsym $mod+Shift+l move right
|
||||
# MARK!
|
||||
|
||||
# alternatively, you can use the cursor keys:
|
||||
bindsym $mod+Shift+Left move left
|
||||
bindsym $mod+Shift+Down move down
|
||||
bindsym $mod+Shift+Up move up
|
||||
bindsym $mod+Shift+Right move right
|
||||
bindsym $mod+Shift+Left move left
|
||||
bindsym $mod+Shift+Down move down
|
||||
bindsym $mod+Shift+Up move up
|
||||
bindsym $mod+Shift+Right move right
|
||||
|
||||
# split orientation
|
||||
# bindsym $mod+h split h;exec notify-send 'tile horizontally'
|
||||
bindsym $mod+e split h;exec notify-send 'tile horizontally'
|
||||
bindsym $mod+e split h;exec notify-send 'tile horizontally'
|
||||
# MARK!
|
||||
bindsym $mod+v split v;exec notify-send 'tile vertically'
|
||||
bindsym $mod+v split v;exec notify-send 'tile vertically'
|
||||
|
||||
# toggle fullscreen mode for the focused container
|
||||
bindsym $mod+f fullscreen toggle
|
||||
bindsym $mod+f fullscreen toggle
|
||||
|
||||
# change container layout (stacked, tabbed, toggle split)
|
||||
bindsym $mod+s layout stacking
|
||||
bindsym $mod+w layout tabbed
|
||||
bindsym $mod+s layout stacking
|
||||
bindsym $mod+w layout tabbed
|
||||
# bindsym $mod+l layout toggle split
|
||||
# MARK!
|
||||
|
||||
# toggle tiling / floating
|
||||
bindsym $mod+Shift+space floating toggle
|
||||
bindsym $mod+Shift+space floating toggle
|
||||
|
||||
# change focus between tiling / floating windows
|
||||
bindsym $mod+space focus mode_toggle
|
||||
bindsym $mod+space focus mode_toggle
|
||||
|
||||
# reload the configuration file
|
||||
bindsym $mod+Shift+c reload
|
||||
bindsym $mod+Shift+c reload
|
||||
|
||||
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
|
||||
bindsym $mod+Shift+r restart
|
||||
bindsym $mod+Shift+r restart
|
||||
|
||||
# Resize window (you can also use the mouse for that)
|
||||
bindsym $mod+r mode "resize"
|
||||
mode "resize" {
|
||||
bindsym $mod+r mode "resize"
|
||||
mode "resize" {
|
||||
bindsym h resize shrink width 5 px or 5 ppt
|
||||
bindsym j resize grow height 5 px or 5 ppt
|
||||
bindsym k resize shrink height 5 px or 5 ppt
|
||||
|
@ -285,7 +285,7 @@ mode "resize" {
|
|||
# exit resize mode: Enter or Escape
|
||||
bindsym Return mode "default"
|
||||
bindsym Escape mode "default"
|
||||
}
|
||||
}
|
||||
|
||||
# Color palette used for the terminal ( ~/.Xresources file )
|
||||
# Colors are gathered based on the documentation:
|
||||
|
@ -299,27 +299,27 @@ mode "resize" {
|
|||
# to:
|
||||
# background $term_background
|
||||
# Same logic applied to everything else.
|
||||
set_from_resource $term_background background
|
||||
set_from_resource $term_foreground foreground
|
||||
set_from_resource $term_color0 color0
|
||||
set_from_resource $term_color1 color1
|
||||
set_from_resource $term_color2 color2
|
||||
set_from_resource $term_color3 color3
|
||||
set_from_resource $term_color4 color4
|
||||
set_from_resource $term_color5 color5
|
||||
set_from_resource $term_color6 color6
|
||||
set_from_resource $term_color7 color7
|
||||
set_from_resource $term_color8 color8
|
||||
set_from_resource $term_color9 color9
|
||||
set_from_resource $term_color10 color10
|
||||
set_from_resource $term_color11 color11
|
||||
set_from_resource $term_color12 color12
|
||||
set_from_resource $term_color13 color13
|
||||
set_from_resource $term_color14 color14
|
||||
set_from_resource $term_color15 color15
|
||||
set_from_resource $term_background background
|
||||
set_from_resource $term_foreground foreground
|
||||
set_from_resource $term_color0 color0
|
||||
set_from_resource $term_color1 color1
|
||||
set_from_resource $term_color2 color2
|
||||
set_from_resource $term_color3 color3
|
||||
set_from_resource $term_color4 color4
|
||||
set_from_resource $term_color5 color5
|
||||
set_from_resource $term_color6 color6
|
||||
set_from_resource $term_color7 color7
|
||||
set_from_resource $term_color8 color8
|
||||
set_from_resource $term_color9 color9
|
||||
set_from_resource $term_color10 color10
|
||||
set_from_resource $term_color11 color11
|
||||
set_from_resource $term_color12 color12
|
||||
set_from_resource $term_color13 color13
|
||||
set_from_resource $term_color14 color14
|
||||
set_from_resource $term_color15 color15
|
||||
|
||||
# Start i3bar to display a workspace bar (plus the system information i3status if available)
|
||||
bar {
|
||||
bar {
|
||||
i3bar_command i3bar
|
||||
status_command i3status
|
||||
position bottom
|
||||
|
@ -343,135 +343,135 @@ bar {
|
|||
binding_mode #16a085 #2C2C2C #F9FAF9
|
||||
urgent_workspace #16a085 #FDF6E3 #E5201D
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# Theme colors
|
||||
# class border backgr. text indic. child_border
|
||||
client.focused #556064 #556064 #80FFF9 #FDF6E3
|
||||
client.focused_inactive #2F3D44 #2F3D44 #1ABC9C #454948
|
||||
client.unfocused #2F3D44 #2F3D44 #1ABC9C #454948
|
||||
client.urgent #CB4B16 #FDF6E3 #1ABC9C #268BD2
|
||||
client.placeholder #000000 #0c0c0c #ffffff #000000
|
||||
client.focused #556064 #556064 #80FFF9 #FDF6E3
|
||||
client.focused_inactive #2F3D44 #2F3D44 #1ABC9C #454948
|
||||
client.unfocused #2F3D44 #2F3D44 #1ABC9C #454948
|
||||
client.urgent #CB4B16 #FDF6E3 #1ABC9C #268BD2
|
||||
client.placeholder #000000 #0c0c0c #ffffff #000000
|
||||
|
||||
client.background #2B2C2B
|
||||
client.background #2B2C2B
|
||||
|
||||
#############################
|
||||
### settings for i3-gaps: ###
|
||||
#############################
|
||||
|
||||
# Set inner/outer gaps
|
||||
gaps inner 2
|
||||
gaps outer 0
|
||||
gaps inner 2
|
||||
gaps outer 0
|
||||
|
||||
# Smart gaps (gaps used if only more than one container on the workspace)
|
||||
smart_gaps on
|
||||
smart_gaps on
|
||||
|
||||
# Smart borders (draw borders around container only if it is not the only container on this workspace)
|
||||
smart_borders on
|
||||
smart_borders on
|
||||
|
||||
# Screen brightness controls
|
||||
bindcode 232 exec brightnessctl set 5%-
|
||||
bindcode 233 exec --no-startup-id brightnessctl set 5%+
|
||||
bindcode 232 exec brightnessctl set 5%-
|
||||
bindcode 233 exec --no-startup-id brightnessctl set 5%+
|
||||
|
||||
exec --no-startup-id nm-applet --sm-disable
|
||||
exec --no-startup-id nm-applet --sm-disable
|
||||
''}";
|
||||
Xresources = "${pkgs.writeText "Xresources" ''
|
||||
Xft.dpi: 96
|
||||
Xft.antialias: true
|
||||
Xft.hinting: true
|
||||
Xft.rgba: rgb
|
||||
Xft.autohint: false
|
||||
Xft.hintstyle: hintslight
|
||||
Xft.lcdfilter: lcddefault
|
||||
Xft.dpi: 96
|
||||
Xft.antialias: true
|
||||
Xft.hinting: true
|
||||
Xft.rgba: rgb
|
||||
Xft.autohint: false
|
||||
Xft.hintstyle: hintslight
|
||||
Xft.lcdfilter: lcddefault
|
||||
|
||||
XTerm*background: #222D31
|
||||
XTerm*foreground: #d8d8d8
|
||||
XTerm*pointerColor: #1ABB9B
|
||||
XTerm*faceName: Fixed
|
||||
XTerm*faceSize: 11
|
||||
XTerm*reverseVideo: on
|
||||
XTerm*selectToClipboard: true
|
||||
XTerm*background: #222D31
|
||||
XTerm*foreground: #d8d8d8
|
||||
XTerm*pointerColor: #1ABB9B
|
||||
XTerm*faceName: Fixed
|
||||
XTerm*faceSize: 11
|
||||
XTerm*reverseVideo: on
|
||||
XTerm*selectToClipboard: true
|
||||
|
||||
*background: #222D31
|
||||
*foreground: #d8d8d8
|
||||
*fading: 8
|
||||
*fadeColor: black
|
||||
*cursorColor: #1ABB9B
|
||||
*pointerColorBackground: #2B2C2B
|
||||
*pointerColorForeground: #16A085
|
||||
*background: #222D31
|
||||
*foreground: #d8d8d8
|
||||
*fading: 8
|
||||
*fadeColor: black
|
||||
*cursorColor: #1ABB9B
|
||||
*pointerColorBackground: #2B2C2B
|
||||
*pointerColorForeground: #16A085
|
||||
|
||||
!! black dark/light
|
||||
*color0: #222D31
|
||||
*color8: #585858
|
||||
!! black dark/light
|
||||
*color0: #222D31
|
||||
*color8: #585858
|
||||
|
||||
!! red dark/light
|
||||
*color1: #ab4642
|
||||
*color9: #ab4642
|
||||
!! red dark/light
|
||||
*color1: #ab4642
|
||||
*color9: #ab4642
|
||||
|
||||
!! green dark/light
|
||||
*color2: #7E807E
|
||||
*color10: #8D8F8D
|
||||
!! green dark/light
|
||||
*color2: #7E807E
|
||||
*color10: #8D8F8D
|
||||
|
||||
!! yellow dark/light
|
||||
*color3: #f7ca88
|
||||
*color11: #f7ca88
|
||||
!! yellow dark/light
|
||||
*color3: #f7ca88
|
||||
*color11: #f7ca88
|
||||
|
||||
!! blue dark/light
|
||||
*color4: #7cafc2
|
||||
*color12: #7cafc2
|
||||
!! blue dark/light
|
||||
*color4: #7cafc2
|
||||
*color12: #7cafc2
|
||||
|
||||
!! magenta dark/light
|
||||
*color5: #ba8baf
|
||||
*color13: #ba8baf
|
||||
!! magenta dark/light
|
||||
*color5: #ba8baf
|
||||
*color13: #ba8baf
|
||||
|
||||
!! cyan dark/light
|
||||
*color6: #1ABB9B
|
||||
*color14: #1ABB9B
|
||||
!! cyan dark/light
|
||||
*color6: #1ABB9B
|
||||
*color14: #1ABB9B
|
||||
|
||||
!! white dark/light
|
||||
*color7: #d8d8d8
|
||||
*color15: #f8f8f8
|
||||
!! white dark/light
|
||||
*color7: #d8d8d8
|
||||
*color15: #f8f8f8
|
||||
|
||||
Xcursor.theme: xcursor-breeze
|
||||
Xcursor.size: 0
|
||||
Xcursor.theme: xcursor-breeze
|
||||
Xcursor.size: 0
|
||||
|
||||
URxvt.font: 9x15,xft:TerminessTTFNerdFontMono
|
||||
URxvt.font: 9x15,xft:TerminessTTFNerdFontMono
|
||||
|
||||
! alternative font settings with 'terminus':
|
||||
! URxvt.font: -xos4-terminus-medium-r-normal--16-160-72-72-c-80-iso10646-1
|
||||
! URxvt.bold.font: -xos4-terminus-bold-r-normal--16-160-72-72-c-80-iso10646-1
|
||||
!! terminus names see end of file!
|
||||
! alternative font settings with 'terminus':
|
||||
! URxvt.font: -xos4-terminus-medium-r-normal--16-160-72-72-c-80-iso10646-1
|
||||
! URxvt.bold.font: -xos4-terminus-bold-r-normal--16-160-72-72-c-80-iso10646-1
|
||||
!! terminus names see end of file!
|
||||
|
||||
URxvt.depth: 32
|
||||
URxvt.background: [100]#0f0f0f
|
||||
URxvt.foreground: #a0a0a0
|
||||
URxvt*scrollBar: false
|
||||
URxvt*mouseWheelScrollPage: false
|
||||
URxvt*cursorBlink: true
|
||||
URxvt*background: black
|
||||
URxvt*saveLines: 5000
|
||||
URxvt.depth: 32
|
||||
URxvt.background: [100]#0f0f0f
|
||||
URxvt.foreground: #a0a0a0
|
||||
URxvt*scrollBar: false
|
||||
URxvt*mouseWheelScrollPage: false
|
||||
URxvt*cursorBlink: true
|
||||
URxvt*background: black
|
||||
URxvt*saveLines: 5000
|
||||
|
||||
! for 'fake' transparency (without Compton) uncomment the following three lines
|
||||
! URxvt*inheritPixmap: true
|
||||
! URxvt*transparent: true
|
||||
! URxvt*shading: 138
|
||||
! for 'fake' transparency (without Compton) uncomment the following three lines
|
||||
! URxvt*inheritPixmap: true
|
||||
! URxvt*transparent: true
|
||||
! URxvt*shading: 138
|
||||
|
||||
! Normal copy-paste keybindings without perls
|
||||
URxvt.iso14755: false
|
||||
URxvt.keysym.Shift-Control-V: eval:paste_clipboard
|
||||
URxvt.keysym.Shift-Control-C: eval:selection_to_clipboard
|
||||
!Xterm escape codes, word by word movement
|
||||
URxvt.keysym.Control-Left: \033[1;5D
|
||||
URxvt.keysym.Shift-Control-Left: \033[1;6D
|
||||
URxvt.keysym.Control-Right: \033[1;5C
|
||||
URxvt.keysym.Shift-Control-Right: \033[1;6C
|
||||
URxvt.keysym.Control-Up: \033[1;5A
|
||||
URxvt.keysym.Shift-Control-Up: \033[1;6A
|
||||
URxvt.keysym.Control-Down: \033[1;5B
|
||||
URxvt.keysym.Shift-Control-Down: \033[1;6B
|
||||
! Normal copy-paste keybindings without perls
|
||||
URxvt.iso14755: false
|
||||
URxvt.keysym.Shift-Control-V: eval:paste_clipboard
|
||||
URxvt.keysym.Shift-Control-C: eval:selection_to_clipboard
|
||||
!Xterm escape codes, word by word movement
|
||||
URxvt.keysym.Control-Left: \033[1;5D
|
||||
URxvt.keysym.Shift-Control-Left: \033[1;6D
|
||||
URxvt.keysym.Control-Right: \033[1;5C
|
||||
URxvt.keysym.Shift-Control-Right: \033[1;6C
|
||||
URxvt.keysym.Control-Up: \033[1;5A
|
||||
URxvt.keysym.Shift-Control-Up: \033[1;6A
|
||||
URxvt.keysym.Control-Down: \033[1;5B
|
||||
URxvt.keysym.Shift-Control-Down: \033[1;6B
|
||||
''}";
|
||||
in
|
||||
{
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
i3status rofi arandr btop
|
||||
firefox
|
||||
|
@ -554,4 +554,4 @@ in
|
|||
};
|
||||
|
||||
security.polkit.enable = true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
{ config, pkgs, ... }:
|
||||
{
|
||||
#################### Git configuration ####################
|
||||
programs.git = {
|
||||
programs.git = {
|
||||
enable = true;
|
||||
lfs.enable = true;
|
||||
config = {
|
||||
|
@ -20,10 +20,10 @@
|
|||
gpg.format = "ssh";
|
||||
commit.gpgsign = "true";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
#################### Packages ####################
|
||||
environment.systemPackages = with pkgs; [
|
||||
environment.systemPackages = with pkgs; [
|
||||
cmake
|
||||
gnumake
|
||||
gcc
|
||||
|
@ -35,10 +35,10 @@
|
|||
python311Packages.pip
|
||||
pypy3
|
||||
rustup
|
||||
];
|
||||
];
|
||||
|
||||
#################### Neovim configuration ####################
|
||||
programs.neovim = {
|
||||
programs.neovim = {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
viAlias = true;
|
||||
|
@ -65,8 +65,8 @@
|
|||
customRC =
|
||||
let
|
||||
coc-config = "${pkgs.writeTextDir "coc-settings.json"
|
||||
''
|
||||
{
|
||||
''
|
||||
{
|
||||
"workspace.ignoredFolders": [
|
||||
"$HOME",
|
||||
"$HOME/.cargo/**",
|
||||
|
@ -79,8 +79,8 @@
|
|||
rust-analyzer.inlayHints.expressionAdjustmentHints.hideOutsideUnsafe: true,
|
||||
rust-analyzer.inlayHints.lifetimeElisionHints.enable: "always",
|
||||
rust-analyzer.inlayHints.lifetimeElisionHints.useParameterNames: true
|
||||
}
|
||||
''}";
|
||||
}
|
||||
''}";
|
||||
|
||||
in
|
||||
''
|
||||
|
@ -160,6 +160,6 @@
|
|||
" Nnoremap <S-k> <S-n>
|
||||
" Let NERDTreeMapOpenExpl='\e'
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -67,8 +67,8 @@
|
|||
];
|
||||
|
||||
# HARDWARE SPECIFIC
|
||||
boot.initrd.kernelModules = [ "amdgpu" ];
|
||||
hardware = {
|
||||
boot.initrd.kernelModules = [ "amdgpu" ];
|
||||
hardware = {
|
||||
opengl.extraPackages = with pkgs; [
|
||||
rocmPackages.clr.icd
|
||||
];
|
||||
|
@ -76,9 +76,9 @@
|
|||
enable = true;
|
||||
enableGraphical = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
services = {
|
||||
services = {
|
||||
xserver = {
|
||||
videoDrivers = [ "amdgpu" "modesetting" ];
|
||||
deviceSection = ''
|
||||
|
@ -113,31 +113,31 @@
|
|||
devmon.enable = true;
|
||||
gvfs.enable = true;
|
||||
udisks2.enable = true;
|
||||
};
|
||||
location = {
|
||||
};
|
||||
location = {
|
||||
latitude = 60.17;
|
||||
longitude = 24.94;
|
||||
};
|
||||
};
|
||||
|
||||
# Swap + hibernate
|
||||
swapDevices = [
|
||||
swapDevices = [
|
||||
{
|
||||
device = "/var/lib/swapfile";
|
||||
size = 16*1024;
|
||||
}
|
||||
];
|
||||
boot.resumeDevice = "/dev/mapper/luks-f6e1979b-0dee-4ee9-8170-10490019854b";
|
||||
boot.kernelParams = [ "resume_offset=44537856" ];
|
||||
services.logind = {
|
||||
lidSwitch = "hibernate";
|
||||
};
|
||||
];
|
||||
boot.resumeDevice = "/dev/mapper/luks-f6e1979b-0dee-4ee9-8170-10490019854b";
|
||||
boot.kernelParams = [ "resume_offset=44537856" ];
|
||||
services.logind = {
|
||||
lidSwitch = "hibernate";
|
||||
};
|
||||
|
||||
# Keychron Q11
|
||||
services.udev.extraRules = ''
|
||||
services.udev.extraRules = ''
|
||||
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="3434", ATTRS{idProduct}=="01e0", MODE="0660", GROUP="users", TAG+="uaccess", TAG+="udev-acl"
|
||||
'';
|
||||
'';
|
||||
|
||||
# Bootloader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
}
|
||||
|
|
|
@ -9,9 +9,9 @@
|
|||
|
||||
# HARDWARE SPECIFIC
|
||||
|
||||
services.qemuGuest.enable = true;
|
||||
services.qemuGuest.enable = true;
|
||||
|
||||
# Bootloader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
}
|
||||
|
|
|
@ -11,9 +11,9 @@
|
|||
|
||||
# HARDWARE SPECIFIC
|
||||
|
||||
services.qemuGuest.enable = true;
|
||||
services.qemuGuest.enable = true;
|
||||
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
|
||||
}
|
||||
|
|
|
@ -9,9 +9,9 @@
|
|||
|
||||
# HARDWARE SPECIFIC
|
||||
|
||||
services.qemuGuest.enable = true;
|
||||
services.qemuGuest.enable = true;
|
||||
|
||||
# Bootloader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
}
|
||||
|
|
|
@ -33,12 +33,12 @@ in {
|
|||
# This allows the wireguard server to route your traffic to the internet and hence be like a VPN
|
||||
# For this to work you have to set the dnsserver IP of your router (or dnsserver of choice) in your clients
|
||||
postSetup = ''
|
||||
${pkgs.iptables}/bin/iptables -t nat -A POSTROUTING -s 10.100.0.0/24 -o ${wg_interface} -j MASQUERADE
|
||||
${pkgs.iptables}/bin/iptables -t nat -A POSTROUTING -s 10.100.0.0/24 -o ${wg_interface} -j MASQUERADE
|
||||
'';
|
||||
|
||||
# This undoes the above command
|
||||
postShutdown = ''
|
||||
${pkgs.iptables}/bin/iptables -t nat -D POSTROUTING -s 10.100.0.0/24 -o ${wg_interface} -j MASQUERADE
|
||||
${pkgs.iptables}/bin/iptables -t nat -D POSTROUTING -s 10.100.0.0/24 -o ${wg_interface} -j MASQUERADE
|
||||
'';
|
||||
|
||||
|
||||
|
@ -78,14 +78,14 @@ ${pkgs.iptables}/bin/iptables -t nat -D POSTROUTING -s 10.100.0.0/24 -o ${wg_int
|
|||
};
|
||||
};
|
||||
|
||||
services.ddclient = {
|
||||
services.ddclient = {
|
||||
enable = true;
|
||||
domains = [ "netflood.ddnsfree.com" ];
|
||||
use = "web, web=checkip.dynu.com/, web-skip='IP Address'";
|
||||
server = "api.dynu.com";
|
||||
username = "VSinerva";
|
||||
passwordFile = ddPassFile;
|
||||
};
|
||||
};
|
||||
#################### EVERYTHING BELOW THIS SHOULD NOT NEED TO CHANGE ####################
|
||||
|
||||
boot = {
|
||||
|
|
|
@ -32,4 +32,4 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,20 +0,0 @@
|
|||
#Main local NFS server with /home/vili etc.
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
networking.firewall.allowedTCPPorts = [ 111 2049 4000 4001 4002 20048 ];
|
||||
networking.firewall.allowedUDPPorts = [ 111 2049 4000 4001 4002 20048 ];
|
||||
|
||||
services.nfs.server =
|
||||
{
|
||||
enable = true;
|
||||
# fixed rpc.statd port; for (proxmox) firewall
|
||||
statdPort = 4000;
|
||||
lockdPort = 4001;
|
||||
mountdPort = 4002;
|
||||
extraNfsdConfig = '''';
|
||||
createMountPoints = true;
|
||||
exports = ''
|
||||
/mnt/srv/nixos-conf 192.168.0.0/23(rw,no_root_squash) 172.16.0.0/24(rw,no_root_squash) 192.168.2.0/23(no_root_squash) 192.168.4.0/22(no_root_squash) 192.168.8.0/23(no_root_squash)
|
||||
'';
|
||||
};
|
||||
}
|
|
@ -56,4 +56,4 @@
|
|||
#TCP/UDP 22000 for transfers and UDP 21027 for discovery
|
||||
openDefaultPorts = true;
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue