2021-10-13 16:49:41 +02:00
|
|
|
|
# Edit this configuration file to define what should be installed on
|
|
|
|
|
# your system. Help is available in the configuration.nix(5) man page
|
|
|
|
|
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
|
|
|
|
|
2021-11-16 16:28:55 +01:00
|
|
|
|
{ pkgs, ... }:
|
|
|
|
|
let
|
|
|
|
|
fix-vscode = pkgs.writeScriptBin "fix-vscode" ''
|
|
|
|
|
#!${pkgs.stdenv.shell}
|
2022-07-28 12:36:55 +02:00
|
|
|
|
# Check if vscode-server dir exists
|
2021-11-16 16:28:55 +01:00
|
|
|
|
if [[ -d "$HOME/.vscode-server/bin" ]]; then
|
2022-07-28 12:36:55 +02:00
|
|
|
|
# For every bin folder within
|
2021-11-16 16:28:55 +01:00
|
|
|
|
for versiondir in "$HOME"/.vscode-server/bin/*; do
|
2022-07-28 12:36:55 +02:00
|
|
|
|
# Remove bundled node (dynamic links are borked for nix)
|
2021-11-16 16:28:55 +01:00
|
|
|
|
rm "$versiondir/node"
|
2022-07-28 12:36:55 +02:00
|
|
|
|
# symlink node form the nixpkg
|
2022-04-29 22:24:44 +02:00
|
|
|
|
ln -s "${pkgs.nodejs-16_x}/bin/node" "$versiondir/node"
|
2021-11-16 16:28:55 +01:00
|
|
|
|
done
|
|
|
|
|
fi
|
|
|
|
|
'';
|
|
|
|
|
in {
|
2021-10-25 12:50:04 +02:00
|
|
|
|
imports = [
|
|
|
|
|
# Include the results of the hardware scan.
|
|
|
|
|
./hardware-configuration.nix
|
|
|
|
|
];
|
2021-10-13 16:49:41 +02:00
|
|
|
|
|
|
|
|
|
# Use the GRUB 2 boot loader.
|
|
|
|
|
boot.loader.grub.enable = true;
|
|
|
|
|
boot.loader.grub.version = 2;
|
2021-10-14 00:04:24 +02:00
|
|
|
|
boot.loader.grub.device = "/dev/sda";
|
2021-10-13 16:49:41 +02:00
|
|
|
|
|
2021-10-14 00:04:24 +02:00
|
|
|
|
networking.hostName = "bastion";
|
2021-10-13 16:49:41 +02:00
|
|
|
|
|
|
|
|
|
# This value determines the NixOS release from which the default
|
|
|
|
|
# settings for stateful data, like file locations and database versions
|
|
|
|
|
# on your system were taken. It‘s perfectly fine and recommended to leave
|
|
|
|
|
# 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 = "21.05"; # Did you read the comment?
|
2021-10-14 00:04:24 +02:00
|
|
|
|
|
2022-06-12 12:25:46 +02:00
|
|
|
|
virtualisation.podman = {
|
|
|
|
|
enable = true;
|
|
|
|
|
};
|
|
|
|
|
|
2021-10-14 00:04:24 +02:00
|
|
|
|
# Additional packages
|
|
|
|
|
environment.systemPackages = with pkgs; [
|
2021-12-12 15:51:56 +01:00
|
|
|
|
binutils
|
2022-05-22 21:51:05 +02:00
|
|
|
|
checkov
|
2021-11-16 16:28:55 +01:00
|
|
|
|
fix-vscode
|
2021-10-19 21:21:42 +02:00
|
|
|
|
fluxcd
|
|
|
|
|
k9s
|
|
|
|
|
kubectl
|
|
|
|
|
kubectx
|
2022-04-28 17:17:15 +02:00
|
|
|
|
nix-prefetch-git
|
2022-04-29 22:24:44 +02:00
|
|
|
|
nixpkgs-fmt
|
|
|
|
|
nixpkgs-review
|
2021-10-14 00:04:24 +02:00
|
|
|
|
ripgrep
|
2022-04-29 22:24:44 +02:00
|
|
|
|
rnix-lsp
|
2021-10-14 00:04:24 +02:00
|
|
|
|
rsync
|
|
|
|
|
tmux
|
|
|
|
|
vault
|
2021-10-19 21:21:42 +02:00
|
|
|
|
vim
|
2021-10-14 00:04:24 +02:00
|
|
|
|
];
|
2021-11-16 16:28:55 +01:00
|
|
|
|
|
2021-10-19 21:21:42 +02:00
|
|
|
|
programs.gnupg.agent = {
|
|
|
|
|
enable = true;
|
|
|
|
|
pinentryFlavor = "curses";
|
|
|
|
|
};
|
2021-10-13 16:49:41 +02:00
|
|
|
|
}
|