here's some CTF prep
This commit is contained in:
parent
61bc29a0ac
commit
5d40f2db72
|
@ -30,6 +30,8 @@ in {
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
strace
|
strace
|
||||||
|
rr
|
||||||
|
qemu-user
|
||||||
|
|
||||||
# language servers
|
# language servers
|
||||||
nil
|
nil
|
||||||
|
@ -48,6 +50,7 @@ in {
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
virt-manager.enable = true;
|
virt-manager.enable = true;
|
||||||
|
nix-ld.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
services.zfs.zed = {
|
services.zfs.zed = {
|
||||||
|
|
|
@ -1,100 +1,115 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{ config, lib, pkgs, ... }:
|
||||||
{
|
let rhelmot = config.rhelmot;
|
||||||
imports = [ ./overlays/packages.nix ./configuration-cross.nix ];
|
in {
|
||||||
nixpkgs.config.allowUnfree = true;
|
options.rhelmot = {
|
||||||
|
globalPythonPackages = lib.mkOption {
|
||||||
nix.settings.extra-experimental-features = "nix-command flakes";
|
type = with lib.types; listOf (functionTo (listOf package));
|
||||||
nix.settings.trusted-users = [ "audrey" ];
|
default = [];
|
||||||
nix.settings.max-jobs = 1;
|
description = "python packages (p: with p; [ x ]) to include in the global python environment";
|
||||||
nix.settings.cores = 0;
|
};
|
||||||
nix.settings.secret-key-files = [ "/var/lib/nix/binary-cache-key" ];
|
|
||||||
|
|
||||||
# Select internationalisation properties.
|
|
||||||
i18n.defaultLocale = "en_US.UTF-8";
|
|
||||||
|
|
||||||
# Configure keymap in X11
|
|
||||||
services.xserver.xkb.layout = "us";
|
|
||||||
services.xserver.xkb.options = "caps:escape";
|
|
||||||
|
|
||||||
users.defaultUserShell = pkgs.zsh;
|
|
||||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
|
||||||
users.users.audrey = {
|
|
||||||
uid = 1000;
|
|
||||||
description = "Audrey Dutcher";
|
|
||||||
isNormalUser = true;
|
|
||||||
extraGroups = [ "wheel" "docker" ];
|
|
||||||
openssh.authorizedKeys.keyFiles = [ ./dotfiles/authorized_keys ];
|
|
||||||
};
|
};
|
||||||
|
imports = [ ./overlays/packages.nix ./configuration-cross.nix ];
|
||||||
|
config = {
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
nix.settings.extra-experimental-features = "nix-command flakes repl-flake";
|
||||||
wget
|
nix.settings.trusted-users = [ "audrey" ];
|
||||||
ripgrep
|
nix.settings.max-jobs = 1;
|
||||||
fd
|
nix.settings.cores = 0;
|
||||||
curl
|
nix.settings.secret-key-files = [ "/var/lib/nix/binary-cache-key" ];
|
||||||
btop
|
|
||||||
file
|
|
||||||
patchelf
|
|
||||||
gdb
|
|
||||||
p7zip
|
|
||||||
unzip
|
|
||||||
|
|
||||||
(python3.withPackages (p: with p; [
|
# Select internationalisation properties.
|
||||||
|
i18n.defaultLocale = "en_US.UTF-8";
|
||||||
|
|
||||||
|
# Configure keymap in X11
|
||||||
|
services.xserver.xkb.layout = "us";
|
||||||
|
services.xserver.xkb.options = "caps:escape";
|
||||||
|
|
||||||
|
users.defaultUserShell = pkgs.zsh;
|
||||||
|
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||||
|
users.users.audrey = {
|
||||||
|
uid = 1000;
|
||||||
|
description = "Audrey Dutcher";
|
||||||
|
isNormalUser = true;
|
||||||
|
extraGroups = [ "wheel" "docker" ];
|
||||||
|
openssh.authorizedKeys.keyFiles = [ ./dotfiles/authorized_keys ];
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
wget
|
||||||
|
ripgrep
|
||||||
|
fd
|
||||||
|
curl
|
||||||
|
btop
|
||||||
|
file
|
||||||
|
patchelf
|
||||||
|
gdb
|
||||||
|
p7zip
|
||||||
|
unzip
|
||||||
|
foremost
|
||||||
|
binwalk
|
||||||
|
(python3.withPackages (p: lib.concatMap (pl: pl p) rhelmot.globalPythonPackages))
|
||||||
|
];
|
||||||
|
|
||||||
|
rhelmot.globalPythonPackages = [ (p: with p; [
|
||||||
virtualenvwrapper
|
virtualenvwrapper
|
||||||
pylint
|
pylint
|
||||||
pytest
|
pytest
|
||||||
ipdb
|
ipdb
|
||||||
ipython
|
ipython
|
||||||
]))
|
nclib
|
||||||
];
|
pyyaml
|
||||||
|
]) ];
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
zsh = {
|
zsh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableCompletion = true;
|
enableCompletion = true;
|
||||||
syntaxHighlighting.enable = true;
|
syntaxHighlighting.enable = true;
|
||||||
vteIntegration = true;
|
vteIntegration = true;
|
||||||
enableLsColors = true;
|
enableLsColors = true;
|
||||||
histSize = 10000;
|
histSize = 10000;
|
||||||
promptInit = ''
|
promptInit = ''
|
||||||
. ${pkgs.python3Packages.virtualenvwrapper}/bin/virtualenvwrapper.sh
|
. ${pkgs.python3Packages.virtualenvwrapper}/bin/virtualenvwrapper.sh
|
||||||
'' + builtins.readFile ./dotfiles/zsh-prompt.sh;
|
'' + builtins.readFile ./dotfiles/zsh-prompt.sh;
|
||||||
shellInit = builtins.readFile ./dotfiles/zsh-init.sh;
|
shellInit = builtins.readFile ./dotfiles/zsh-init.sh;
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
grep = "grep --color=auto";
|
grep = "grep --color=auto";
|
||||||
egrep = "egrep --color=auto";
|
egrep = "egrep --color=auto";
|
||||||
objdump = "objdump -M intel";
|
objdump = "objdump -M intel";
|
||||||
gits = "git status";
|
gits = "git status";
|
||||||
pag = "ps aux | grep -v grep | grep -i";
|
pag = "ps aux | grep -v grep | grep -i";
|
||||||
hd = "hexdump -C";
|
hd = "hexdump -C";
|
||||||
man = "MAN_POSIXLY_CORRECT=1 man";
|
man = "MAN_POSIXLY_CORRECT=1 man";
|
||||||
nose = "pytest -v --capture=no --pdbcls=IPython.terminal.debugger:TerminalPdb";
|
nose = "pytest -v --capture=no --pdbcls=IPython.terminal.debugger:TerminalPdb";
|
||||||
mkvirtualenv = "mkvirtualenv -r /etc/venv-default.txt";
|
mkvirtualenv = "mkvirtualenv -r /etc/venv-default.txt";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
tmux = {
|
tmux = {
|
||||||
enable = true;
|
enable = true;
|
||||||
extraConfig = builtins.readFile ./dotfiles/tmux.conf;
|
extraConfig = builtins.readFile ./dotfiles/tmux.conf;
|
||||||
};
|
};
|
||||||
direnv.enable = true;
|
direnv.enable = true;
|
||||||
htop.enable = true;
|
htop.enable = true;
|
||||||
git = {
|
git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
lfs.enable = true;
|
lfs.enable = true;
|
||||||
config = {
|
config = {
|
||||||
user.email = "audrey@rhelmot.io";
|
user.email = "audrey@rhelmot.io";
|
||||||
user.name = "Audrey Dutcher";
|
user.name = "Audrey Dutcher";
|
||||||
init.defaultBranch = "main";
|
init.defaultBranch = "main";
|
||||||
blame.markUnblamableLines = true;
|
blame.markUnblamableLines = true;
|
||||||
credential.helper = "store";
|
credential.helper = "store";
|
||||||
url."ssh://git@".insteadOf = "git://";
|
url."ssh://git@".insteadOf = "git://";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
environment.etc."gdb/gdbinit".source = ./dotfiles/gdb-init.gdb;
|
||||||
|
environment.etc."venv-default.txt".source = ./dotfiles/venv-default.txt;
|
||||||
|
|
||||||
|
# Enable the OpenSSH daemon.
|
||||||
|
services.openssh.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.etc."gdb/gdbinit".source = ./dotfiles/gdb-init.gdb;
|
|
||||||
environment.etc."venv-default.txt".source = ./dotfiles/venv-default.txt;
|
|
||||||
|
|
||||||
# Enable the OpenSSH daemon.
|
|
||||||
services.openssh.enable = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue