Compare commits
50 Commits
6ef275870d
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 2be1db1075 | |||
| e6842b86f2 | |||
| dc7c56b81d | |||
| 053cbe7ee3 | |||
| a1cfce2743 | |||
| ea8df341e6 | |||
| 1f73e1ff9d | |||
| 74501adfca | |||
| 6ee7bfb78a | |||
| 5fcfd51b4a | |||
| 20e97efe95 | |||
| cc8299c5f5 | |||
| 1763871dda | |||
| 3d0484222e | |||
| bc9b620733 | |||
| f028201829 | |||
| d45c47d157 | |||
| 749ba8fc25 | |||
| 70c865fd72 | |||
| 256b849f2f | |||
| 729d2d44f7 | |||
| ace638529b | |||
| e71bb26d7d | |||
| 1b05b0cc6f | |||
| 0d20030f58 | |||
| 61606f433b | |||
| 513c6eae3c | |||
| d94c786424 | |||
| 87a00571f7 | |||
| 258303b5b3 | |||
| f19b5b45b4 | |||
| c52c3a9f01 | |||
| 56d21fd8a2 | |||
| 2df69949cb | |||
| c0a7615fc2 | |||
| c2db9db949 | |||
| 9a76694af3 | |||
| a196e47fb7 | |||
| 605c1b4ea3 | |||
| 9d5ffed340 | |||
| 726fce7949 | |||
| 1927c2ca09 | |||
| 51764389c5 | |||
| 33d9482892 | |||
| b652047222 | |||
| 1707567e36 | |||
| acdfe76b54 | |||
| c3c3649e21 | |||
| 678d9874ff | |||
| d41f27f465 |
@@ -6,21 +6,72 @@
|
||||
let
|
||||
myRizin = pkgs.rizin.passthru.withPlugins
|
||||
(plugins: [ plugins.jsdec plugins.rz-ghidra ]);
|
||||
in
|
||||
{
|
||||
in {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
./services/virtual.nix
|
||||
./services/x.nix
|
||||
./services/timer.nix
|
||||
./services/sound.nix
|
||||
./programs/hyprland.nix
|
||||
];
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.loader.grub.device = "/dev/nvme1n1p1";
|
||||
services.nfs.server = {
|
||||
enable = true;
|
||||
exports = ''
|
||||
/home/vagrant *(rw,sync,no_subtree_check,no_root_squash)
|
||||
'';
|
||||
};
|
||||
|
||||
services.resolved = {
|
||||
enable = true;
|
||||
dnssec = "true";
|
||||
};
|
||||
networking.nameservers = [ "1.1.1.1" "8.8.8.8" ];
|
||||
|
||||
boot.loader = {
|
||||
systemd-boot.enable = false;
|
||||
efi = {
|
||||
canTouchEfiVariables = true;
|
||||
efiSysMountPoint = "/boot/efi";
|
||||
};
|
||||
grub = {
|
||||
efiSupport = true;
|
||||
device = "nodev";
|
||||
extraConfig = ''
|
||||
GRUB_DEFAULT=saved
|
||||
GRUB_SAFEDEFAULT=false
|
||||
'';
|
||||
useOSProber = true;
|
||||
};
|
||||
};
|
||||
|
||||
security.sudo = {
|
||||
enable = true;
|
||||
extraRules = [{
|
||||
commands = [{
|
||||
command = "${pkgs.grub2}/bin/grub-reboot";
|
||||
options = [ "NOPASSWD" ];
|
||||
}];
|
||||
groups = [ "wheel" ];
|
||||
}];
|
||||
};
|
||||
|
||||
security.pam.loginLimits = [
|
||||
{
|
||||
domain = "*";
|
||||
type = "soft";
|
||||
item = "nofile";
|
||||
value = "32768";
|
||||
}
|
||||
{
|
||||
domain = "*";
|
||||
type = "hard";
|
||||
item = "nofile";
|
||||
value = "65537";
|
||||
}
|
||||
];
|
||||
|
||||
networking.hostName = "haskell"; # Define your hostname.
|
||||
|
||||
@@ -46,7 +97,7 @@ in
|
||||
# useXkbConfig = true; # use xkb.options in tty.
|
||||
# };
|
||||
|
||||
services.udev.packages = [ pkgs.libwacom ];
|
||||
services.udev.packages = with pkgs; [ libwacom rtl-sdr platformio-core.udev ];
|
||||
|
||||
services.usbmuxd = {
|
||||
enable = false;
|
||||
@@ -61,16 +112,19 @@ in
|
||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
users.users.allen = {
|
||||
isNormalUser = true;
|
||||
extraGroups = [ "wheel" "wireshark" ]; # Enable ‘sudo’ for the user.
|
||||
shell = pkgs.fish;
|
||||
extraGroups =
|
||||
[ "wheel" "wireshark" "podman" "dialout" ]; # Enable ‘sudo’ for the user.
|
||||
shell = pkgs.nushell;
|
||||
home = "/home/allen";
|
||||
packages = with pkgs; [ tree ];
|
||||
};
|
||||
|
||||
users.groups.libvirtd.members = [ "allen" ];
|
||||
users.groups.plugdev.members = [ "allen" ];
|
||||
|
||||
programs.firefox.enable = true;
|
||||
programs.wireshark.enable = true;
|
||||
services.printing.enable = true;
|
||||
|
||||
# List packages installed in system profile.
|
||||
# You can use https://search.nixos.org/ to find more packages (and options).
|
||||
@@ -93,19 +147,18 @@ in
|
||||
libGL
|
||||
openal
|
||||
myRizin
|
||||
libgit2
|
||||
ntfs3g
|
||||
inputs.helix.packages."${pkgs.system}".helix
|
||||
];
|
||||
|
||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||
|
||||
environment.sessionVariables = {
|
||||
LD_LIBRARY_PATH = lib.makeLibraryPath [
|
||||
pkgs.libglvnd
|
||||
pkgs.libGL
|
||||
pkgs.glfw
|
||||
pkgs.pulseaudio
|
||||
pkgs.libgit2
|
||||
];
|
||||
programs.hyprland.enable = true;
|
||||
|
||||
environment.variables = {
|
||||
LD_LIBRARY_PATH = lib.makeLibraryPath
|
||||
(with pkgs; [ libglvnd libGL glfw pulseaudio libgit2 ]);
|
||||
};
|
||||
|
||||
environment.variables.EDITOR = "vim";
|
||||
|
||||
516
flake.lock
generated
516
flake.lock
generated
@@ -1,5 +1,76 @@
|
||||
{
|
||||
"nodes": {
|
||||
"aquamarine": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"hyprwayland-scanner": [
|
||||
"hyprland",
|
||||
"hyprwayland-scanner"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762356719,
|
||||
"narHash": "sha256-qwd/xdoOya1m8FENle+4hWnydCtlXUWLAW/Auk6WL7s=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "aquamarine",
|
||||
"rev": "6d0b3567584691bf9d8fedb5d0093309e2f979c7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "aquamarine",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1747046372,
|
||||
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitignore": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"pre-commit-hooks",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709087332,
|
||||
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"helix": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs",
|
||||
@@ -41,6 +112,331 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprcursor": {
|
||||
"inputs": {
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1753964049,
|
||||
"narHash": "sha256-lIqabfBY7z/OANxHoPeIrDJrFyYy9jAM4GQLzZ2feCM=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"rev": "44e91d467bdad8dcf8bbd2ac7cf49972540980a5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprgraphics": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762462052,
|
||||
"narHash": "sha256-6roLYzcDf4V38RUMSqycsOwAnqfodL6BmhRkUtwIgdA=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprgraphics",
|
||||
"rev": "ffc999d980c7b3bca85d3ebd0a9fbadf984a8162",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprgraphics",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland": {
|
||||
"inputs": {
|
||||
"aquamarine": "aquamarine",
|
||||
"hyprcursor": "hyprcursor",
|
||||
"hyprgraphics": "hyprgraphics",
|
||||
"hyprland-guiutils": "hyprland-guiutils",
|
||||
"hyprland-protocols": "hyprland-protocols",
|
||||
"hyprlang": "hyprlang",
|
||||
"hyprutils": "hyprutils",
|
||||
"hyprwayland-scanner": "hyprwayland-scanner_2",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"pre-commit-hooks": "pre-commit-hooks",
|
||||
"systems": "systems",
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762542520,
|
||||
"narHash": "sha256-hMWWVGEoJRNDaAJxHoL1YL+IXGxdQooEw8lABELVopg=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"rev": "522edc87126a48f3ce4891747b6a92a22385b1e7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-guiutils": {
|
||||
"inputs": {
|
||||
"aquamarine": [
|
||||
"hyprland",
|
||||
"aquamarine"
|
||||
],
|
||||
"hyprgraphics": [
|
||||
"hyprland",
|
||||
"hyprgraphics"
|
||||
],
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"hyprtoolkit": "hyprtoolkit",
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762465111,
|
||||
"narHash": "sha256-dS13YZdWjgGGLBjpT4FHB6xf8I/WiAU+mgNWXsZgDUs=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-guiutils",
|
||||
"rev": "a415eba866a953f3096d661318f771aa0082eb98",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-guiutils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-protocols": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1759610243,
|
||||
"narHash": "sha256-+KEVnKBe8wz+a6dTLq8YDcF3UrhQElwsYJaVaHXJtoI=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"rev": "bd153e76f751f150a09328dbdeb5e4fab9d23622",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprlang": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1758927902,
|
||||
"narHash": "sha256-LZgMds7M94+vuMql2bERQ6LiFFdhgsEFezE4Vn+Ys3A=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"rev": "4dafa28d4f79877d67a7d1a654cddccf8ebf15da",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprtoolkit": {
|
||||
"inputs": {
|
||||
"aquamarine": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"aquamarine"
|
||||
],
|
||||
"hyprgraphics": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"hyprgraphics"
|
||||
],
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"hyprlang"
|
||||
],
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"hyprutils"
|
||||
],
|
||||
"hyprwayland-scanner": "hyprwayland-scanner",
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762463729,
|
||||
"narHash": "sha256-2fYkU/mdz8WKY3dkDPlE/j6hTxIwqultsx4gMMsMns0=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprtoolkit",
|
||||
"rev": "88483bdee5329ec985f0c8f834c519cd18cfe532",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprtoolkit",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprutils": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762387740,
|
||||
"narHash": "sha256-gQ9zJ+pUI4o+Gh4Z6jhJll7jjCSwi8ZqJIhCE2oqwhQ=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprutils",
|
||||
"rev": "926689ddb9c0a8787e58c02c765a62e32d63d1f7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprutils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprwayland-scanner": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"hyprtoolkit",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"hyprtoolkit",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1755184602,
|
||||
"narHash": "sha256-RCBQN8xuADB0LEgaKbfRqwm6CdyopE1xIEhNc67FAbw=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"rev": "b3b0f1f40ae09d4447c20608e5a4faf8bf3c492d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprwayland-scanner_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1755184602,
|
||||
"narHash": "sha256-RCBQN8xuADB0LEgaKbfRqwm6CdyopE1xIEhNc67FAbw=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"rev": "b3b0f1f40ae09d4447c20608e5a4faf8bf3c492d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-filter": {
|
||||
"locked": {
|
||||
"lastModified": 1693833173,
|
||||
"narHash": "sha256-hlMABKrGbEiJD5dwUSfnw1CQ3bG7KKwDV+Nx3bEZd7U=",
|
||||
"owner": "numtide",
|
||||
"repo": "nix-filter",
|
||||
"rev": "ac030bd9ba98e318e1f4c4328d60766ade8ebe8b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "nix-filter",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1740560979,
|
||||
@@ -58,6 +454,22 @@
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1762363567,
|
||||
"narHash": "sha256-YRqMDEtSMbitIMj+JLpheSz0pwEr0Rmy5mC7myl17xs=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "ae814fd3904b621d8ab97418f1d0f2eb0d3716f4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1748889542,
|
||||
"narHash": "sha256-Hb4iMhIbjX45GcrgOp3b8xnyli+ysRPqAgZ/LZgyT5k=",
|
||||
@@ -73,11 +485,36 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
"gitignore": "gitignore",
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762441963,
|
||||
"narHash": "sha256-j+rNQ119ffYUkYt2YYS6rnd6Jh/crMZmbqpkGLXaEt0=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "8e7576e79b88c16d7ee3bbd112c8d90070832885",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"helix": "helix",
|
||||
"home-manager": "home-manager",
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
"hyprland": "hyprland",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"split-monitor-workspaces": "split-monitor-workspaces"
|
||||
}
|
||||
},
|
||||
"rust-overlay": {
|
||||
@@ -100,6 +537,83 @@
|
||||
"repo": "rust-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"split-monitor-workspaces": {
|
||||
"inputs": {
|
||||
"hyprland": [
|
||||
"hyprland"
|
||||
],
|
||||
"nix-filter": "nix-filter"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1759855608,
|
||||
"narHash": "sha256-DO6OaOY8G4HFP7Rz6gRCG6K2PZ8NrXkDIF6NJGRVcbs=",
|
||||
"owner": "Duckonaut",
|
||||
"repo": "split-monitor-workspaces",
|
||||
"rev": "10719e725ade06da410db52268f4b9cf8ea5f63c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Duckonaut",
|
||||
"repo": "split-monitor-workspaces",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"xdph": {
|
||||
"inputs": {
|
||||
"hyprland-protocols": [
|
||||
"hyprland",
|
||||
"hyprland-protocols"
|
||||
],
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"hyprwayland-scanner": [
|
||||
"hyprland",
|
||||
"hyprwayland-scanner"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761431178,
|
||||
"narHash": "sha256-xzjC1CV3+wpUQKNF+GnadnkeGUCJX+vgaWIZsnz9tzI=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"rev": "4b8801228ff958d028f588f0c2b911dbf32297f9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
||||
48
flake.nix
48
flake.nix
@@ -8,22 +8,40 @@
|
||||
url = "github:nix-community/home-manager/release-25.05";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs, home-manager, ... }@inputs: {
|
||||
nixosConfigurations.haskell = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
specialArgs = { inherit inputs; };
|
||||
modules = [
|
||||
./configuration.nix
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
|
||||
home-manager.users.allen = import ./home.nix;
|
||||
}
|
||||
];
|
||||
hyprland.url = "github:hyprwm/Hyprland";
|
||||
split-monitor-workspaces = {
|
||||
url = "github:Duckonaut/split-monitor-workspaces";
|
||||
inputs.hyprland.follows = "hyprland";
|
||||
};
|
||||
};
|
||||
|
||||
outputs =
|
||||
{ self, nixpkgs, home-manager, split-monitor-workspaces, ... }@inputs:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
config = { allowUnfree = true; };
|
||||
};
|
||||
in {
|
||||
nixosConfigurations.haskell = nixpkgs.lib.nixosSystem {
|
||||
inherit system;
|
||||
specialArgs = { inherit inputs; };
|
||||
modules = [
|
||||
./configuration.nix
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
|
||||
home-manager.users.allen = import ./home.nix {
|
||||
inherit split-monitor-workspaces;
|
||||
inherit pkgs;
|
||||
inherit inputs;
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,14 +9,20 @@
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "uas" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelParams = [ "intel_iommu=on" ];
|
||||
boot.kernelParams =
|
||||
[ "intel_iommu=on" "modprobe.blacklist=dvb_usb_rtl28xxu" ];
|
||||
boot.kernelModules = [ "kvm-intel" "vfio_pci" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
# 1050 passthrough
|
||||
# boot.extraModprobeConfig = ''
|
||||
# options vfio-pci ids=10de:1c81,10de:0fb9
|
||||
# '';
|
||||
boot.extraModprobeConfig = ""
|
||||
# + "options vfio-pci ids=10de:1c81,10de:0fb9\n"
|
||||
+ ''
|
||||
options hid_apple fnmode=2
|
||||
'';
|
||||
# hid_apple -> remove AK68 keyboard F1-F12 not pressing issue
|
||||
|
||||
boot.kernel.sysctl = { "hid_apple.fnmode" = 2; };
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/4e08142c-1b09-4265-a497-822e4a83d4c8";
|
||||
@@ -24,6 +30,12 @@
|
||||
options = [ "subvol=root" ];
|
||||
};
|
||||
|
||||
fileSystems."/x" = {
|
||||
device = "tmpfs";
|
||||
fsType = "tmpfs";
|
||||
options = [ "size=8G" "mode=1777" ];
|
||||
};
|
||||
|
||||
fileSystems."/home" = {
|
||||
device = "/dev/disk/by-uuid/4e08142c-1b09-4265-a497-822e4a83d4c8";
|
||||
fsType = "btrfs";
|
||||
@@ -36,16 +48,22 @@
|
||||
options = [ "subvol=nix" ];
|
||||
};
|
||||
|
||||
fileSystems."/boot" = {
|
||||
fileSystems."/boot/efi" = {
|
||||
device = "/dev/disk/by-uuid/E808-5876";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0022" "dmask=0022" ];
|
||||
};
|
||||
|
||||
fileSystems."/mnt/hdd1" = {
|
||||
device = "/dev/disk/by-uuid/EC40940C4093DC20";
|
||||
fsType = "ntfs-3g";
|
||||
options = [ "rw" "uid=1000" "umask=0022" ];
|
||||
# fileSystems."/mnt/hdd1" = {
|
||||
# device = "/dev/disk/by-uuid/EC40940C4093DC20";
|
||||
# fsType = "ntfs-3g";
|
||||
# options = [ "rw" "uid=1000" "umask=0022" "noauto" ];
|
||||
# };
|
||||
|
||||
fileSystems."/mnt/ssd1" = {
|
||||
device = "/dev/disk/by-uuid/4e1710bb-2cc9-41c3-909c-34f24bd1f63e";
|
||||
fsType = "btrfs";
|
||||
options = [ "defaults" "ssd" "noatime" "noauto" ];
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
26
home.nix
26
home.nix
@@ -1,4 +1,4 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ inputs, split-monitor-workspaces, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
@@ -9,6 +9,7 @@
|
||||
./modules/home/starship.nix
|
||||
./modules/home/alacritty.nix
|
||||
./modules/home/bash.nix
|
||||
./modules/home/nushell.nix
|
||||
];
|
||||
|
||||
home.username = "allen";
|
||||
@@ -28,11 +29,32 @@
|
||||
tools = import ./pkgs/tools.nix { inherit pkgs; };
|
||||
util = import ./pkgs/util.nix { inherit pkgs; };
|
||||
games = import ./pkgs/games.nix { inherit pkgs; };
|
||||
unstable = import (builtins.fetchTarball {
|
||||
url = "https://github.com/NixOS/nixpkgs/archive/nixos-unstable.tar.gz";
|
||||
sha256 = "1ijgd8hy1ii0k0s48yhnzw09c7zdjnp1fq8wfj7jgajwmlfwy3xg";
|
||||
}) { system = "x86_64-linux"; };
|
||||
unstables = import ./pkgs/unstable.nix {
|
||||
inherit pkgs;
|
||||
inherit unstable;
|
||||
};
|
||||
|
||||
in fonts ++ minecraft ++ misc ++ network ++ programming ++ tools ++ util
|
||||
++ games;
|
||||
++ games ++ unstables;
|
||||
|
||||
programs.direnv.enable = true;
|
||||
programs.direnv.nix-direnv.enable = true;
|
||||
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
xwayland.enable = true;
|
||||
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
||||
plugins = [
|
||||
split-monitor-workspaces.packages.x86_64-linux.split-monitor-workspaces
|
||||
];
|
||||
extraConfig = ''
|
||||
source = ~/.config/hypr/hyprland-custom.conf
|
||||
'';
|
||||
};
|
||||
|
||||
home.stateVersion = "25.05";
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
};
|
||||
scrolling.multiplier = 5;
|
||||
selection.save_to_clipboard = true;
|
||||
colors = { primary = { background = "#040404"; }; };
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,20 +1,12 @@
|
||||
{ pkgs, ... }: {
|
||||
imports = [ ./fish/aliases.nix ./fish/config.nix ];
|
||||
|
||||
home.file.".config/fish/completions/flux.fish".source =
|
||||
../../shell/completions/flux.fish;
|
||||
home.file.".config/fish/kube.fish".source = ../../shell/kube.fish;
|
||||
|
||||
programs.fish = {
|
||||
enable = true;
|
||||
shellInit = ''
|
||||
set -gx EDITOR nvim
|
||||
set -gx PNPM_HOME $HOME/.local/share/pnpm
|
||||
fish_add_path $PNPM_HOME
|
||||
fish_add_path $HOME/.local/bin
|
||||
set -gx OPENSSL_DIR ${pkgs.openssl.dev};
|
||||
set -gx KUBECONFIG $HOME/.kube/config;
|
||||
set -gx OPENSSL_LIB_DIR ${pkgs.openssl.out}/lib;
|
||||
set -gx OPENSSL_INCLUDE_DIR ${pkgs.openssl.dev}/include;
|
||||
set -gx PKG_CONFIG_PATH ${pkgs.openssl.dev}/lib/pkgconfig;
|
||||
alias vi="nvim"
|
||||
alias rb="sudo nixos-rebuild switch --flake ~/nixos-config#"
|
||||
alias dry-rb="sudo nixos-rebuild dry-build --flake ~/nixos-config#"
|
||||
'';
|
||||
plugins = [
|
||||
# Enable a plugin (here grc for colorized command output) from nixpkgs
|
||||
{
|
||||
@@ -34,3 +26,4 @@
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
15
modules/home/fish/aliases.nix
Normal file
15
modules/home/fish/aliases.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{
|
||||
programs.fish.shellAliases = {
|
||||
v = "nvim";
|
||||
c = "clear";
|
||||
rb = "sudo nixos-rebuild switch --flake ~/nixos-config#";
|
||||
"boot-rb" = "sudo nixos-rebuild --install-bootloader boot --flake ~/nixos-config#";
|
||||
clc = "cloc . --exclude-dir=target,node_modules,.venv --exclude-ext=yml,yaml,csv -v";
|
||||
"dry-rb" = "sudo nixos-rebuild dry-build --flake ~/nixos-config#";
|
||||
devim = "NVIM_APPNAME=nvim-dev nvim";
|
||||
win = "grub-reboot 'Windows Boot Manager (on /dev/sda2)' && reboot";
|
||||
qwer = "reboot";
|
||||
zxcv = "shutdown now";
|
||||
lg = "lazygit";
|
||||
};
|
||||
}
|
||||
1
modules/home/fish/config.nix
Normal file
1
modules/home/fish/config.nix
Normal file
@@ -0,0 +1 @@
|
||||
{ config, ... }: { imports = [ ./env.nix ./functions.nix ]; }
|
||||
13
modules/home/fish/env.nix
Normal file
13
modules/home/fish/env.nix
Normal file
@@ -0,0 +1,13 @@
|
||||
{ config, ... }: {
|
||||
home.sessionVariables = {
|
||||
EDITOR = "nvim";
|
||||
PNPM_HOME = "${config.home.homeDirectory}/.local/share/pnpm";
|
||||
KUBECONFIG = "${config.home.homeDirectory}/.kube/config";
|
||||
# OPENSSL_DIR = "${pkgs.openssl.dev}";
|
||||
#OPENSSL_LIB_DIR = "${pkgs.openssl.out}/lib";
|
||||
# OPENSSL_INCLUDE_DIR = "${pkgs.openssl.dev}/include";
|
||||
# PKG_CONFIG_PATH = "${pkgs.openssl.dev}/lib/pkgconfig";
|
||||
NIX_DEV_SHELL_DEFAULT_SHELL = "(which nu)";
|
||||
};
|
||||
}
|
||||
|
||||
20
modules/home/fish/functions.nix
Normal file
20
modules/home/fish/functions.nix
Normal file
@@ -0,0 +1,20 @@
|
||||
{
|
||||
programs.fish.functions = {
|
||||
mkcd = {
|
||||
body = ''
|
||||
if test (count $argv) -eq 0
|
||||
echo "Usage: mkcd <directory>"
|
||||
return 1
|
||||
end
|
||||
|
||||
mkdir -p $argv[1]
|
||||
and cd $argv[1]
|
||||
'';
|
||||
};
|
||||
};
|
||||
programs.fish.interactiveShellInit = ''
|
||||
if test -f $HOME/.config/fish/kube.fish
|
||||
source $HOME/.config/fish/kube.fish
|
||||
end
|
||||
'';
|
||||
}
|
||||
@@ -10,6 +10,7 @@
|
||||
credential.credentialStore = "store";
|
||||
init.defaultBranch = "main";
|
||||
core.editor = "nvim";
|
||||
push.autoSetupRemote = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
42
modules/home/nushell.nix
Normal file
42
modules/home/nushell.nix
Normal file
@@ -0,0 +1,42 @@
|
||||
{ config, ... }: {
|
||||
imports = [ ./fish/env.nix ];
|
||||
|
||||
home.file.".config/nushell/nu".source = ../../shell/nu;
|
||||
programs = {
|
||||
nushell = {
|
||||
enable = true;
|
||||
shellAliases = { vi = "nvim"; };
|
||||
environmentVariables =
|
||||
let env = import ./fish/env.nix { inherit config; };
|
||||
in env.home.sessionVariables;
|
||||
extraConfig = ''
|
||||
source ~/.config/nushell/nu/config.nu
|
||||
let carapace_completer = {|spans|
|
||||
carapace $spans.0 nushell ...$spans | from json
|
||||
}
|
||||
$env.config = {
|
||||
show_banner: false,
|
||||
completions: {
|
||||
case_sensitive: false # case-sensitive completions
|
||||
quick: true # set to false to prevent auto-selecting completions
|
||||
partial: true # set to false to prevent partial filling of the prompt
|
||||
algorithm: "fuzzy" # prefix or fuzzy
|
||||
external: {
|
||||
# set to false to prevent nushell looking into $env.PATH to find more suggestions
|
||||
enable: true
|
||||
# set to lower can improve completion performance at the cost of omitting some options
|
||||
max_results: 100
|
||||
completer: $carapace_completer # check 'carapace_completer'
|
||||
}
|
||||
}
|
||||
}
|
||||
$env.PATH = ($env.PATH |
|
||||
split row (char esep) |
|
||||
append /usr/bin/env | append $"($env.HOME)/.local/share/pnpm"
|
||||
)
|
||||
'';
|
||||
};
|
||||
carapace.enable = true;
|
||||
carapace.enableNushellIntegration = true;
|
||||
};
|
||||
}
|
||||
@@ -18,6 +18,7 @@ with pkgs; [
|
||||
zlib.dev
|
||||
gdk-pixbuf
|
||||
glib
|
||||
#glibc
|
||||
gtk3
|
||||
icu
|
||||
wayland
|
||||
@@ -43,7 +44,6 @@ with pkgs; [
|
||||
openssl
|
||||
pango
|
||||
pipewire
|
||||
stdenv.cc.cc
|
||||
systemd
|
||||
vulkan-loader
|
||||
xorg.libX11
|
||||
@@ -64,4 +64,6 @@ with pkgs; [
|
||||
zlib.dev
|
||||
pkg-config
|
||||
haskellPackages.zlib
|
||||
stdenv.cc.cc
|
||||
imagemagick
|
||||
]
|
||||
|
||||
31
nixpkgs/blockbench-5.nix
Normal file
31
nixpkgs/blockbench-5.nix
Normal file
@@ -0,0 +1,31 @@
|
||||
{ pkgs ? import <nixpkgs> { } }:
|
||||
with pkgs;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "blockbench";
|
||||
version = "5.0.2";
|
||||
|
||||
src = fetchurl {
|
||||
url =
|
||||
"https://github.com/JannisX11/blockbench/releases/download/v${version}/Blockbench_${version}.AppImage";
|
||||
sha256 = "e4e1edc6df725c54a675e201f3366c4245f36b6f558bf9b68b0f66f00e360b58";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
unpackPhase = "true"; # AppImage, we won’t unpack fully
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp ${src} $out/bin/blockbench
|
||||
chmod +x $out/bin/blockbench
|
||||
wrapProgram $out/bin/blockbench \
|
||||
--prefix PATH : "${pkgs.nodejs}/bin" \
|
||||
--set BLOCKBENCH_APPIMAGE "$out/bin/blockbench"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Blockbench 3D model editor (low-poly / Minecraft style)";
|
||||
homepage = "https://blockbench.net/";
|
||||
license = licenses.gpl3;
|
||||
};
|
||||
}
|
||||
@@ -4,24 +4,32 @@
|
||||
|
||||
with pkgs; [
|
||||
radare2
|
||||
(python3.withPackages (python-pkgs: with python-pkgs; [ jupyter-client ]))
|
||||
# (python3.withPackages (python-pkgs: with python-pkgs; [ jupyter-client ]))
|
||||
# gdb
|
||||
zap
|
||||
lldb
|
||||
clang-tools
|
||||
tokio-console
|
||||
iaito
|
||||
deno
|
||||
#iaito
|
||||
clang
|
||||
valgrind
|
||||
ghidra-bin
|
||||
protobuf
|
||||
buf
|
||||
uv
|
||||
unityhub
|
||||
gh
|
||||
platformio
|
||||
python313Packages.r2pipe
|
||||
python312Packages.r2pipe
|
||||
python312Packages.pip
|
||||
(python313.withPackages(ps: with ps; [ jupyter-client pynvim wand ipykernel ]))
|
||||
python313Packages.pip
|
||||
nodejs
|
||||
go
|
||||
ninja
|
||||
binwalk
|
||||
dotnet-sdk_9
|
||||
csharp-ls
|
||||
gcc
|
||||
cmake
|
||||
gnumake
|
||||
graalvmPackages.graalvm-ce
|
||||
@@ -49,4 +57,7 @@ with pkgs; [
|
||||
haskellPackages.zlib
|
||||
bpf-linker
|
||||
zlib.dev
|
||||
conan
|
||||
lld
|
||||
libllvm
|
||||
]
|
||||
|
||||
@@ -6,6 +6,8 @@ with pkgs; [
|
||||
zathura
|
||||
google-chrome
|
||||
speed-cloudflare-cli
|
||||
ansible
|
||||
vagrant
|
||||
gqrx
|
||||
libreoffice
|
||||
act
|
||||
@@ -26,6 +28,7 @@ with pkgs; [
|
||||
win2xcur
|
||||
waypaper
|
||||
swww
|
||||
sdrpp
|
||||
rofi-wayland
|
||||
hyprshot
|
||||
vesktop
|
||||
@@ -38,7 +41,6 @@ with pkgs; [
|
||||
yt-dlp
|
||||
stellarium
|
||||
blender
|
||||
blockbench
|
||||
jetbrains.idea-ultimate
|
||||
krita
|
||||
barrier
|
||||
@@ -48,4 +50,9 @@ with pkgs; [
|
||||
texlive.combined.scheme-full
|
||||
hugo
|
||||
glow
|
||||
blockbench
|
||||
xmonad-with-packages
|
||||
pureref
|
||||
freerdp
|
||||
prusa-slicer
|
||||
]
|
||||
|
||||
6
pkgs/unstable.nix
Normal file
6
pkgs/unstable.nix
Normal file
@@ -0,0 +1,6 @@
|
||||
# things in the nixos unstable registry
|
||||
|
||||
{ pkgs, unstable, ... }:
|
||||
|
||||
with pkgs;
|
||||
[ ]
|
||||
@@ -5,19 +5,35 @@
|
||||
with pkgs; [
|
||||
neofetch
|
||||
nnn # terminal file manager
|
||||
nushell
|
||||
|
||||
# archives
|
||||
zip
|
||||
tre-command
|
||||
xz
|
||||
rtl-sdr
|
||||
hyprpicker
|
||||
grub2
|
||||
zlib
|
||||
masscan
|
||||
unzip
|
||||
p7zip
|
||||
fd
|
||||
|
||||
# k8s
|
||||
kubectx
|
||||
k9s
|
||||
lens
|
||||
fluxcd
|
||||
kubescape
|
||||
|
||||
# utils
|
||||
xclip
|
||||
openssl
|
||||
ffmpeg
|
||||
reptyr
|
||||
cloc
|
||||
protocol
|
||||
piper-tts
|
||||
pavucontrol
|
||||
ripgrep
|
||||
@@ -55,6 +71,20 @@ with pkgs; [
|
||||
bridge-utils
|
||||
|
||||
cudaPackages.cudatoolkit
|
||||
airspy
|
||||
airspyhf
|
||||
pstree
|
||||
gptfdisk
|
||||
nix-search
|
||||
just
|
||||
adr-tools
|
||||
xmobar
|
||||
mosquitto
|
||||
universal-ctags
|
||||
smartmontools
|
||||
partclone
|
||||
ncdu
|
||||
dua
|
||||
pv
|
||||
squashfsTools
|
||||
kubernetes-helm
|
||||
]
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
{ inputs, pkgs, ... }: { programs.hyprland = { enable = true; }; }
|
||||
18
services/timer.nix
Normal file
18
services/timer.nix
Normal file
@@ -0,0 +1,18 @@
|
||||
{ config, pkgs, ... }: {
|
||||
# systemd.services.auto-shutdown = {
|
||||
# description = "Automatic daily shutdown at 9:30 pm";
|
||||
# serviceConfig = {
|
||||
# Type = "oneshot";
|
||||
# ExecStart = [ "${pkgs.systemd}/bin/systemctl poweroff" ];
|
||||
# };
|
||||
# };
|
||||
|
||||
# systemd.timers.auto-shutdown = {
|
||||
# description = "Timer for daily shutdown at 9:30 pm";
|
||||
# wantedBy = [ "timers.target" ];
|
||||
# timerConfig = {
|
||||
# OnCalendar = "21:40";
|
||||
# Persistent = true;
|
||||
# };
|
||||
# };
|
||||
}
|
||||
@@ -6,6 +6,7 @@
|
||||
podman = {
|
||||
enable = true;
|
||||
dockerCompat = true;
|
||||
dockerSocket.enable = true;
|
||||
defaultNetwork.settings.dns_enabled = true;
|
||||
};
|
||||
libvirtd.enable = true;
|
||||
@@ -13,11 +14,5 @@
|
||||
};
|
||||
|
||||
programs.virt-manager.enable = true;
|
||||
|
||||
services.k3s = {
|
||||
enable = true;
|
||||
clusterInit = true;
|
||||
extraFlags =
|
||||
"--cluster-cidr=10.42.0.0/16,2a10:3781:25ac:2::/64 --service-cidr=10.43.0.0/16,2a10:3781:25ac:3::/112 --flannel-iface enp5s0";
|
||||
};
|
||||
virtualisation.virtualbox.host.enable = true;
|
||||
}
|
||||
|
||||
@@ -8,7 +8,16 @@
|
||||
hardware.nvidia.open = false;
|
||||
|
||||
services.xserver.displayManager.gdm.enable = true;
|
||||
# services.xserver.displayManager.sddm.enable = true;
|
||||
|
||||
services.xserver.desktopManager.gnome.enable = true;
|
||||
services.xserver.xkb.layout = "us";
|
||||
|
||||
services.picom.enable = true;
|
||||
|
||||
services.xserver.windowManager.xmonad = {
|
||||
enable = true;
|
||||
enableContribAndExtras = true;
|
||||
config = builtins.readFile ./xmonad.hs;
|
||||
};
|
||||
}
|
||||
|
||||
9
services/xmonad.hs
Normal file
9
services/xmonad.hs
Normal file
@@ -0,0 +1,9 @@
|
||||
import XMonad
|
||||
|
||||
main =
|
||||
xmonad
|
||||
def
|
||||
{ terminal = "alacritty"
|
||||
, modMask = mod4Mask
|
||||
, borderWidth = 3
|
||||
}
|
||||
235
shell/completions/flux.fish
Normal file
235
shell/completions/flux.fish
Normal file
@@ -0,0 +1,235 @@
|
||||
# fish completion for flux -*- shell-script -*-
|
||||
|
||||
function __flux_debug
|
||||
set -l file "$BASH_COMP_DEBUG_FILE"
|
||||
if test -n "$file"
|
||||
echo "$argv" >> $file
|
||||
end
|
||||
end
|
||||
|
||||
function __flux_perform_completion
|
||||
__flux_debug "Starting __flux_perform_completion"
|
||||
|
||||
# Extract all args except the last one
|
||||
set -l args (commandline -opc)
|
||||
# Extract the last arg and escape it in case it is a space
|
||||
set -l lastArg (string escape -- (commandline -ct))
|
||||
|
||||
__flux_debug "args: $args"
|
||||
__flux_debug "last arg: $lastArg"
|
||||
|
||||
# Disable ActiveHelp which is not supported for fish shell
|
||||
set -l requestComp "FLUX_ACTIVE_HELP=0 $args[1] __complete $args[2..-1] $lastArg"
|
||||
|
||||
__flux_debug "Calling $requestComp"
|
||||
set -l results (eval $requestComp 2> /dev/null)
|
||||
|
||||
# Some programs may output extra empty lines after the directive.
|
||||
# Let's ignore them or else it will break completion.
|
||||
# Ref: https://github.com/spf13/cobra/issues/1279
|
||||
for line in $results[-1..1]
|
||||
if test (string trim -- $line) = ""
|
||||
# Found an empty line, remove it
|
||||
set results $results[1..-2]
|
||||
else
|
||||
# Found non-empty line, we have our proper output
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
set -l comps $results[1..-2]
|
||||
set -l directiveLine $results[-1]
|
||||
|
||||
# For Fish, when completing a flag with an = (e.g., <program> -n=<TAB>)
|
||||
# completions must be prefixed with the flag
|
||||
set -l flagPrefix (string match -r -- '-.*=' "$lastArg")
|
||||
|
||||
__flux_debug "Comps: $comps"
|
||||
__flux_debug "DirectiveLine: $directiveLine"
|
||||
__flux_debug "flagPrefix: $flagPrefix"
|
||||
|
||||
for comp in $comps
|
||||
printf "%s%s\n" "$flagPrefix" "$comp"
|
||||
end
|
||||
|
||||
printf "%s\n" "$directiveLine"
|
||||
end
|
||||
|
||||
# this function limits calls to __flux_perform_completion, by caching the result behind $__flux_perform_completion_once_result
|
||||
function __flux_perform_completion_once
|
||||
__flux_debug "Starting __flux_perform_completion_once"
|
||||
|
||||
if test -n "$__flux_perform_completion_once_result"
|
||||
__flux_debug "Seems like a valid result already exists, skipping __flux_perform_completion"
|
||||
return 0
|
||||
end
|
||||
|
||||
set --global __flux_perform_completion_once_result (__flux_perform_completion)
|
||||
if test -z "$__flux_perform_completion_once_result"
|
||||
__flux_debug "No completions, probably due to a failure"
|
||||
return 1
|
||||
end
|
||||
|
||||
__flux_debug "Performed completions and set __flux_perform_completion_once_result"
|
||||
return 0
|
||||
end
|
||||
|
||||
# this function is used to clear the $__flux_perform_completion_once_result variable after completions are run
|
||||
function __flux_clear_perform_completion_once_result
|
||||
__flux_debug ""
|
||||
__flux_debug "========= clearing previously set __flux_perform_completion_once_result variable =========="
|
||||
set --erase __flux_perform_completion_once_result
|
||||
__flux_debug "Successfully erased the variable __flux_perform_completion_once_result"
|
||||
end
|
||||
|
||||
function __flux_requires_order_preservation
|
||||
__flux_debug ""
|
||||
__flux_debug "========= checking if order preservation is required =========="
|
||||
|
||||
__flux_perform_completion_once
|
||||
if test -z "$__flux_perform_completion_once_result"
|
||||
__flux_debug "Error determining if order preservation is required"
|
||||
return 1
|
||||
end
|
||||
|
||||
set -l directive (string sub --start 2 $__flux_perform_completion_once_result[-1])
|
||||
__flux_debug "Directive is: $directive"
|
||||
|
||||
set -l shellCompDirectiveKeepOrder 32
|
||||
set -l keeporder (math (math --scale 0 $directive / $shellCompDirectiveKeepOrder) % 2)
|
||||
__flux_debug "Keeporder is: $keeporder"
|
||||
|
||||
if test $keeporder -ne 0
|
||||
__flux_debug "This does require order preservation"
|
||||
return 0
|
||||
end
|
||||
|
||||
__flux_debug "This doesn't require order preservation"
|
||||
return 1
|
||||
end
|
||||
|
||||
|
||||
# This function does two things:
|
||||
# - Obtain the completions and store them in the global __flux_comp_results
|
||||
# - Return false if file completion should be performed
|
||||
function __flux_prepare_completions
|
||||
__flux_debug ""
|
||||
__flux_debug "========= starting completion logic =========="
|
||||
|
||||
# Start fresh
|
||||
set --erase __flux_comp_results
|
||||
|
||||
__flux_perform_completion_once
|
||||
__flux_debug "Completion results: $__flux_perform_completion_once_result"
|
||||
|
||||
if test -z "$__flux_perform_completion_once_result"
|
||||
__flux_debug "No completion, probably due to a failure"
|
||||
# Might as well do file completion, in case it helps
|
||||
return 1
|
||||
end
|
||||
|
||||
set -l directive (string sub --start 2 $__flux_perform_completion_once_result[-1])
|
||||
set --global __flux_comp_results $__flux_perform_completion_once_result[1..-2]
|
||||
|
||||
__flux_debug "Completions are: $__flux_comp_results"
|
||||
__flux_debug "Directive is: $directive"
|
||||
|
||||
set -l shellCompDirectiveError 1
|
||||
set -l shellCompDirectiveNoSpace 2
|
||||
set -l shellCompDirectiveNoFileComp 4
|
||||
set -l shellCompDirectiveFilterFileExt 8
|
||||
set -l shellCompDirectiveFilterDirs 16
|
||||
|
||||
if test -z "$directive"
|
||||
set directive 0
|
||||
end
|
||||
|
||||
set -l compErr (math (math --scale 0 $directive / $shellCompDirectiveError) % 2)
|
||||
if test $compErr -eq 1
|
||||
__flux_debug "Received error directive: aborting."
|
||||
# Might as well do file completion, in case it helps
|
||||
return 1
|
||||
end
|
||||
|
||||
set -l filefilter (math (math --scale 0 $directive / $shellCompDirectiveFilterFileExt) % 2)
|
||||
set -l dirfilter (math (math --scale 0 $directive / $shellCompDirectiveFilterDirs) % 2)
|
||||
if test $filefilter -eq 1; or test $dirfilter -eq 1
|
||||
__flux_debug "File extension filtering or directory filtering not supported"
|
||||
# Do full file completion instead
|
||||
return 1
|
||||
end
|
||||
|
||||
set -l nospace (math (math --scale 0 $directive / $shellCompDirectiveNoSpace) % 2)
|
||||
set -l nofiles (math (math --scale 0 $directive / $shellCompDirectiveNoFileComp) % 2)
|
||||
|
||||
__flux_debug "nospace: $nospace, nofiles: $nofiles"
|
||||
|
||||
# If we want to prevent a space, or if file completion is NOT disabled,
|
||||
# we need to count the number of valid completions.
|
||||
# To do so, we will filter on prefix as the completions we have received
|
||||
# may not already be filtered so as to allow fish to match on different
|
||||
# criteria than the prefix.
|
||||
if test $nospace -ne 0; or test $nofiles -eq 0
|
||||
set -l prefix (commandline -t | string escape --style=regex)
|
||||
__flux_debug "prefix: $prefix"
|
||||
|
||||
set -l completions (string match -r -- "^$prefix.*" $__flux_comp_results)
|
||||
set --global __flux_comp_results $completions
|
||||
__flux_debug "Filtered completions are: $__flux_comp_results"
|
||||
|
||||
# Important not to quote the variable for count to work
|
||||
set -l numComps (count $__flux_comp_results)
|
||||
__flux_debug "numComps: $numComps"
|
||||
|
||||
if test $numComps -eq 1; and test $nospace -ne 0
|
||||
# We must first split on \t to get rid of the descriptions to be
|
||||
# able to check what the actual completion will be.
|
||||
# We don't need descriptions anyway since there is only a single
|
||||
# real completion which the shell will expand immediately.
|
||||
set -l split (string split --max 1 \t $__flux_comp_results[1])
|
||||
|
||||
# Fish won't add a space if the completion ends with any
|
||||
# of the following characters: @=/:.,
|
||||
set -l lastChar (string sub -s -1 -- $split)
|
||||
if not string match -r -q "[@=/:.,]" -- "$lastChar"
|
||||
# In other cases, to support the "nospace" directive we trick the shell
|
||||
# by outputting an extra, longer completion.
|
||||
__flux_debug "Adding second completion to perform nospace directive"
|
||||
set --global __flux_comp_results $split[1] $split[1].
|
||||
__flux_debug "Completions are now: $__flux_comp_results"
|
||||
end
|
||||
end
|
||||
|
||||
if test $numComps -eq 0; and test $nofiles -eq 0
|
||||
# To be consistent with bash and zsh, we only trigger file
|
||||
# completion when there are no other completions
|
||||
__flux_debug "Requesting file completion"
|
||||
return 1
|
||||
end
|
||||
end
|
||||
|
||||
return 0
|
||||
end
|
||||
|
||||
# Since Fish completions are only loaded once the user triggers them, we trigger them ourselves
|
||||
# so we can properly delete any completions provided by another script.
|
||||
# Only do this if the program can be found, or else fish may print some errors; besides,
|
||||
# the existing completions will only be loaded if the program can be found.
|
||||
if type -q "flux"
|
||||
# The space after the program name is essential to trigger completion for the program
|
||||
# and not completion of the program name itself.
|
||||
# Also, we use '> /dev/null 2>&1' since '&>' is not supported in older versions of fish.
|
||||
complete --do-complete "flux " > /dev/null 2>&1
|
||||
end
|
||||
|
||||
# Remove any pre-existing completions for the program since we will be handling all of them.
|
||||
complete -c flux -e
|
||||
|
||||
# this will get called after the two calls below and clear the $__flux_perform_completion_once_result global
|
||||
complete -c flux -n '__flux_clear_perform_completion_once_result'
|
||||
# The call to __flux_prepare_completions will setup __flux_comp_results
|
||||
# which provides the program's completion choices.
|
||||
# If this doesn't require order preservation, we don't use the -k flag
|
||||
complete -c flux -n 'not __flux_requires_order_preservation && __flux_prepare_completions' -f -a '$__flux_comp_results'
|
||||
# otherwise we use the -k flag
|
||||
complete -k -c flux -n '__flux_requires_order_preservation && __flux_prepare_completions' -f -a '$__flux_comp_results'
|
||||
119
shell/kube.fish
Normal file
119
shell/kube.fish
Normal file
@@ -0,0 +1,119 @@
|
||||
alias kn="kubens"
|
||||
|
||||
# other
|
||||
alias k='kubectl'
|
||||
alias kl='kubectl logs'
|
||||
alias kexec='kubectl exec -it'
|
||||
alias kpf='kubectl port-forward'
|
||||
alias kaci='kubectl auth can-i'
|
||||
alias kat='kubectl attach'
|
||||
alias kapir='kubectl api-resources'
|
||||
alias kapiv='kubectl api-versions'
|
||||
|
||||
# get
|
||||
alias kg='kubectl get'
|
||||
alias kgns='kubectl get ns'
|
||||
alias kgp='kubectl get pods'
|
||||
alias kgs='kubectl get secrets'
|
||||
alias kgd='kubectl get deploy'
|
||||
alias kgrs='kubectl get rs'
|
||||
alias kgss='kubectl get sts'
|
||||
alias kgds='kubectl get ds'
|
||||
alias kgcm='kubectl get configmap'
|
||||
alias kgcj='kubectl get cronjob'
|
||||
alias kgj='kubectl get job'
|
||||
alias kgsvc='kubectl get svc -o wide'
|
||||
alias kgn='kubectl get no -o wide'
|
||||
alias kgr='kubectl get roles'
|
||||
alias kgrb='kubectl get rolebindings'
|
||||
alias kgcr='kubectl get clusterroles'
|
||||
alias kgrb='kubectl get clusterrolebindings'
|
||||
alias kgsa='kubectl get sa'
|
||||
alias kgnp='kubectl get netpol'
|
||||
|
||||
# edit
|
||||
alias ke='kubectl edit'
|
||||
alias kens='kubectl edit ns'
|
||||
alias kes='kubectl edit secrets'
|
||||
alias ked='kubectl edit deploy'
|
||||
alias kers='kubectl edit rs'
|
||||
alias kess='kubectl edit sts'
|
||||
alias keds='kubectl edit ds'
|
||||
alias kesvc='kubectl edit svc'
|
||||
alias kecm='kubectl edit cm'
|
||||
alias kecj='kubectl edit cj'
|
||||
alias ker='kubectl edit roles'
|
||||
alias kecr='kubectl edit clusterroles'
|
||||
alias kerb='kubectl edit clusterrolebindings'
|
||||
alias kesa='kubectl edit sa'
|
||||
alias kenp='kubectl edit netpol'
|
||||
|
||||
# describe
|
||||
alias kd='kubectl describe'
|
||||
alias kdns='kubectl describe ns'
|
||||
alias kdp='kubectl describe pod'
|
||||
alias kds='kubectl describe secrets'
|
||||
alias kdd='kubectl describe deploy'
|
||||
alias kdrs='kubectl describe rs'
|
||||
alias kdss='kubectl describe sts'
|
||||
alias kdds='kubectl describe ds'
|
||||
alias kdsvc='kubectl describe svc'
|
||||
alias kdcm='kubectl describe cm'
|
||||
alias kdcj='kubectl describe cj'
|
||||
alias kdj='kubectl describe job'
|
||||
alias kdsa='kubectl describe sa'
|
||||
alias kdr='kubectl describe roles'
|
||||
alias kdrb='kubectl describe rolebindings'
|
||||
alias kdcr='kubectl describe clusterroles'
|
||||
alias kdcrb='kubectl describe clusterrolebindings'
|
||||
alias kdnp='kubectl describe netpol'
|
||||
|
||||
# delete
|
||||
alias kdel='kubectl delete'
|
||||
alias kdelns='kubectl delete ns'
|
||||
alias kdels='kubectl delete secrets'
|
||||
alias kdelp='kubectl delete po'
|
||||
alias kdeld='kubectl delete deployment'
|
||||
alias kdelrs='kubectl delete rs'
|
||||
alias kdelss='kubectl delete sts'
|
||||
alias kdelds='kubectl delete ds'
|
||||
alias kdelsvc='kubectl delete svc'
|
||||
alias kdelcm='kubectl delete cm'
|
||||
alias kdelcj='kubectl delete cj'
|
||||
alias kdelj='kubectl delete job'
|
||||
alias kdelr='kubectl delete roles'
|
||||
alias kdelrb='kubectl delete rolebindings'
|
||||
alias kdelcr='kubectl delete clusterroles'
|
||||
alias kdelrb='kubectl delete clusterrolebindings'
|
||||
alias kdelsa='kubectl delete sa'
|
||||
alias kdelnp='kubectl delete netpol'
|
||||
|
||||
# mock
|
||||
alias kmock='kubectl create mock -o yaml --dry-run=client'
|
||||
alias kmockns='kubectl create ns mock -o yaml --dry-run=client'
|
||||
alias kmockcm='kubectl create cm mock -o yaml --dry-run=client'
|
||||
alias kmocksa='kubectl create sa mock -o yaml --dry-run=client'
|
||||
|
||||
# config
|
||||
alias kcfg='kubectl config'
|
||||
alias kcfgv='kubectl config view'
|
||||
alias kcfgns='kubectl config set-context --current --namespace'
|
||||
alias kcfgcurrent='kubectl config current-context'
|
||||
alias kcfggc='kubectl config get-contexts'
|
||||
alias kcfgsc='kubectl config set-context'
|
||||
alias kcfguc='kubectl config use-context'
|
||||
alias kcfgv='kubectl config view'
|
||||
|
||||
# Kubescape related
|
||||
alias kssbom='kubectl -n kubescape get sbomspdxv2p3s'
|
||||
alias kssbomf='kubectl -n kubescape get sbomspdxv2p3filtereds'
|
||||
alias kssboms='kubectl -n kubescape get sbomsummaries'
|
||||
alias ksvulns='kubectl -n kubescape get vulnerabilitymanifestsummaries'
|
||||
alias ksvuln='kubectl -n kubescape get vulnerabilitymanifests'
|
||||
|
||||
# Kubescape related with labels
|
||||
alias kssboml='kubectl -n kubescape get sbomspdxv2p3s --show-labels'
|
||||
alias kssbomfl='kubectl -n kubescape get sbomspdxv2p3filtereds --show-labels'
|
||||
alias kssbomsl='kubectl -n kubescape get sbomsummaries --show-labels'
|
||||
alias ksvulnsl='kubectl -n kubescape get vulnerabilitymanifestsummaries --show-labels'
|
||||
alias ksvulnl='kubectl -n kubescape get vulnerabilitymanifests --show-labels'
|
||||
29
shell/nu/config.nu
Normal file
29
shell/nu/config.nu
Normal file
@@ -0,0 +1,29 @@
|
||||
def line-count [row] {
|
||||
open $row.path | lines | length
|
||||
}
|
||||
|
||||
def add-line-count [row] {
|
||||
$row | merge { line_count: (open $row.path | lines | length) }
|
||||
}
|
||||
|
||||
$env.KUBECONFIG = ("/home/allen/.kube/config")
|
||||
$env.PATH = ($env.PATH | append "/home/allen/.local/share/pnpm")
|
||||
$env.PATH = ($env.PATH | append "/home/allen/.local/bin")
|
||||
$env.PATH = ($env.PATH | append "/home/allen/.cargo/bin")
|
||||
|
||||
alias c = clear
|
||||
alias rb = sudo nixos-rebuild switch --flake ~/nixos-config#
|
||||
alias clc = cloc . --exclude-dir=target,node_modules,.venv --exclude-ext=yml,yaml,csv -v
|
||||
alias lg = lazygit
|
||||
alias zxcv = shutdown now
|
||||
alias qwer = reboot
|
||||
alias ssd = cd /mnt/ssd1
|
||||
|
||||
alias woman = man
|
||||
|
||||
alias boy = man
|
||||
alias male = man
|
||||
alias girl = woman
|
||||
alias female = woman
|
||||
|
||||
source ~/.config/nushell/nu/kube.nu
|
||||
94
shell/nu/kube.nu
Normal file
94
shell/nu/kube.nu
Normal file
@@ -0,0 +1,94 @@
|
||||
alias kcfgcj = kubectl config cronjob
|
||||
alias kcfgcm = kubectl config configmap
|
||||
alias kcfgcr = kubectl config clusterroles
|
||||
alias kcfgd = kubectl config deployment
|
||||
alias kcfgds = kubectl config daemonset
|
||||
alias kcfgj = kubectl config job
|
||||
alias kcfgn = kubectl config node
|
||||
alias kcfgnp = kubectl config networkpolicy
|
||||
alias kcfgns = kubectl config namespace
|
||||
alias kcfgp = kubectl config pods
|
||||
alias kcfgr = kubectl config roles
|
||||
alias kcfgrb = kubectl config rolebindings
|
||||
alias kcfgrs = kubectl config replicaset
|
||||
alias kcfgs = kubectl config secrets
|
||||
alias kcfgsa = kubectl config serviceaccount
|
||||
alias kcfgss = kubectl config statefulset
|
||||
alias kcfgsvc = kubectl config service
|
||||
alias kdcj = kubectl describe cronjob
|
||||
alias kdcm = kubectl describe configmap
|
||||
alias kdcr = kubectl describe clusterroles
|
||||
alias kdd = kubectl describe deployment
|
||||
alias kdds = kubectl describe daemonset
|
||||
alias kdj = kubectl describe job
|
||||
alias kdn = kubectl describe node
|
||||
alias kdnp = kubectl describe networkpolicy
|
||||
alias kdns = kubectl describe namespace
|
||||
alias kdp = kubectl describe pods
|
||||
alias kdr = kubectl describe roles
|
||||
alias kdrb = kubectl describe rolebindings
|
||||
alias kdrs = kubectl describe replicaset
|
||||
alias kds = kubectl describe secrets
|
||||
alias kdsa = kubectl describe serviceaccount
|
||||
alias kdss = kubectl describe statefulset
|
||||
alias kdsvc = kubectl describe service
|
||||
alias kdelcj = kubectl delete cronjob
|
||||
alias kdelcm = kubectl delete configmap
|
||||
alias kdelcr = kubectl delete clusterroles
|
||||
alias kdeld = kubectl delete deployment
|
||||
alias kdelds = kubectl delete daemonset
|
||||
alias kdelj = kubectl delete job
|
||||
alias kdeln = kubectl delete node
|
||||
alias kdelnp = kubectl delete networkpolicy
|
||||
alias kdelns = kubectl delete namespace
|
||||
alias kdelp = kubectl delete pods
|
||||
alias kdelr = kubectl delete roles
|
||||
alias kdelrb = kubectl delete rolebindings
|
||||
alias kdelrs = kubectl delete replicaset
|
||||
alias kdels = kubectl delete secrets
|
||||
alias kdelsa = kubectl delete serviceaccount
|
||||
alias kdelss = kubectl delete statefulset
|
||||
alias kdelsvc = kubectl delete service
|
||||
alias kecj = kubectl edit cronjob
|
||||
alias kecm = kubectl edit configmap
|
||||
alias kecr = kubectl edit clusterroles
|
||||
alias ked = kubectl edit deployment
|
||||
alias keds = kubectl edit daemonset
|
||||
alias kej = kubectl edit job
|
||||
alias ken = kubectl edit node
|
||||
alias kenp = kubectl edit networkpolicy
|
||||
alias kens = kubectl edit namespace
|
||||
alias kep = kubectl edit pods
|
||||
alias ker = kubectl edit roles
|
||||
alias kerb = kubectl edit rolebindings
|
||||
alias kers = kubectl edit replicaset
|
||||
alias kes = kubectl edit secrets
|
||||
alias kesa = kubectl edit serviceaccount
|
||||
alias kess = kubectl edit statefulset
|
||||
alias kesvc = kubectl edit service
|
||||
alias kgcj = kubectl get cronjob
|
||||
alias kgcm = kubectl get configmap
|
||||
alias kgcr = kubectl get clusterroles
|
||||
alias kgd = kubectl get deployment
|
||||
alias kgds = kubectl get daemonset
|
||||
alias kgj = kubectl get job
|
||||
alias kgn = kubectl get node
|
||||
alias kgnp = kubectl get networkpolicy
|
||||
alias kgns = kubectl get namespace
|
||||
alias kgp = kubectl get pods
|
||||
alias kgr = kubectl get roles
|
||||
alias kgrb = kubectl get rolebindings
|
||||
alias kgrs = kubectl get replicaset
|
||||
alias kgs = kubectl get secrets
|
||||
alias kgsa = kubectl get serviceaccount
|
||||
alias kgss = kubectl get statefulset
|
||||
alias kgsvc = kubectl get service
|
||||
alias kexec = kubectl exec -it
|
||||
alias kl = kubectl logs
|
||||
alias kpf = kubectl port-forward
|
||||
alias kcfg = kubectl config
|
||||
alias kd = kubectl describe
|
||||
alias kdel = kubectl delete
|
||||
alias ke = kubectl edit
|
||||
alias kg = kubectl get
|
||||
alias k = kubectl
|
||||
Reference in New Issue
Block a user