234 lines
5.3 KiB
Nix
234 lines
5.3 KiB
Nix
|
{ config, pkgs, lib, ... }:
|
|||
|
{
|
|||
|
imports = [
|
|||
|
../users
|
|||
|
../users/pbsds
|
|||
|
../users/jornane
|
|||
|
#../users/all.nix # TODO: does not work?
|
|||
|
|
|||
|
../hardware/opengl-intel.nix
|
|||
|
|
|||
|
../profiles/web
|
|||
|
../profiles/web/index
|
|||
|
../profiles/web/cinny
|
|||
|
../profiles/web/element
|
|||
|
../profiles/web/flexget
|
|||
|
../profiles/web/gitea
|
|||
|
../profiles/web/hydra
|
|||
|
../profiles/web/invidious
|
|||
|
../profiles/web/jellyfin
|
|||
|
../profiles/web/libreddit
|
|||
|
../profiles/web/mattermost
|
|||
|
../profiles/web/navidrome
|
|||
|
../profiles/web/netdata
|
|||
|
../profiles/web/nitter
|
|||
|
../profiles/web/ntopng
|
|||
|
../profiles/web/owncast
|
|||
|
../profiles/web/paperless
|
|||
|
../profiles/web/polaris
|
|||
|
../profiles/web/resilio
|
|||
|
../profiles/web/roundcube
|
|||
|
../profiles/web/thelounge
|
|||
|
../profiles/web/vaultwarden
|
|||
|
../profiles/web/webdav-zotero
|
|||
|
#../profiles/web/convos
|
|||
|
#../profiles/web/cryptpad
|
|||
|
#../profiles/web/galene
|
|||
|
#../profiles/web/graphana
|
|||
|
#../profiles/web/hedgedoc
|
|||
|
#../profiles/web/home-assistant
|
|||
|
#../profiles/web/jitsi-meet
|
|||
|
#../profiles/web/kukkee
|
|||
|
#../profiles/web/matrix-synapse
|
|||
|
#../profiles/web/shlink
|
|||
|
#../profiles/web/sourcegraph
|
|||
|
|
|||
|
../profiles/web/pdoc
|
|||
|
../profiles/web/linktree-pbsds
|
|||
|
../profiles/web/refleksjon-no
|
|||
|
../profiles/web/roroslyd-no
|
|||
|
#../profiles/web/trivial-gradios
|
|||
|
#../profiles/web/censordodge
|
|||
|
#../profiles/web/openspeedtest
|
|||
|
|
|||
|
../profiles/domeneshop-dyndns # TODO: olavtr is hardcoded...
|
|||
|
../profiles/code-remote
|
|||
|
../profiles/remote-builders #
|
|||
|
../profiles/nfs/reidun.nix # NFS mounts
|
|||
|
../profiles/autossh-reverse-tunnels
|
|||
|
#../profiles/xrdp
|
|||
|
];
|
|||
|
|
|||
|
# TODO: remove? Move to where relevant=
|
|||
|
nixpkgs.overlays = [
|
|||
|
/** /
|
|||
|
(final: prev: {
|
|||
|
mapcrafter = prev.callPackage /home/pbsds/repos/nixpkgs-mapcrafter/pkgs/tools/games/minecraft/mapcrafter/default.nix { };
|
|||
|
mapcrafter-world112 = prev.callPackage /home/pbsds/repos/nixpkgs-mapcrafter/pkgs/tools/games/minecraft/mapcrafter/default.nix { world="world112"; };
|
|||
|
})
|
|||
|
/**/
|
|||
|
];
|
|||
|
|
|||
|
# run/build weird binaries
|
|||
|
boot.binfmt.emulatedSystems = [
|
|||
|
"wasm32-wasi"
|
|||
|
"wasm64-wasi"
|
|||
|
"x86_64-windows"
|
|||
|
"aarch64-linux"
|
|||
|
"riscv64-linux"
|
|||
|
#"x86_64-darwin"
|
|||
|
#"aarch64-darwin"
|
|||
|
];
|
|||
|
|
|||
|
services.thermald.enable = true;
|
|||
|
|
|||
|
# Virtualization
|
|||
|
virtualisation.podman.enable = true;
|
|||
|
# TODO: are these default since 22.11?
|
|||
|
virtualisation.podman.dockerCompat = true; # alias docker to podman
|
|||
|
virtualisation.oci-containers.backend = "podman";
|
|||
|
|
|||
|
# Networking
|
|||
|
networking.networkmanager.enable = true;
|
|||
|
#networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
|||
|
#networking.iwd.enable = true
|
|||
|
networking.hostName = "noximilien";
|
|||
|
networking.domain = "pbsds.net";
|
|||
|
networking.interfaces.eno1.ipv4.addresses = [
|
|||
|
{ address = "192.168.1.9"; prefixLength = 24; }
|
|||
|
];
|
|||
|
networking.nameservers = [
|
|||
|
"192.168.1.254"
|
|||
|
"8.8.8.8"
|
|||
|
"1.1.1.1"
|
|||
|
];
|
|||
|
networking.defaultGateway = {
|
|||
|
address = "192.168.1.254";
|
|||
|
interface = "eno1";
|
|||
|
};
|
|||
|
#networking.useDHCP = true;
|
|||
|
#TODO: avahi?
|
|||
|
|
|||
|
# Installed system packages
|
|||
|
# TODO: prune this, make home-manager deal with the majority
|
|||
|
environment.systemPackages = with pkgs; [
|
|||
|
lsof
|
|||
|
lshw
|
|||
|
htop
|
|||
|
file
|
|||
|
tmux
|
|||
|
#parallel # already provided by moreutils
|
|||
|
pwgen
|
|||
|
git
|
|||
|
nmap
|
|||
|
rsync
|
|||
|
bind.dnsutils
|
|||
|
graphviz
|
|||
|
dialog
|
|||
|
cowsay
|
|||
|
gnused
|
|||
|
gnumake
|
|||
|
coreutils-full
|
|||
|
moreutils
|
|||
|
binutils
|
|||
|
diffutils
|
|||
|
findutils
|
|||
|
usbutils
|
|||
|
bash-completion
|
|||
|
curl
|
|||
|
wget
|
|||
|
strace
|
|||
|
killall
|
|||
|
|
|||
|
zip
|
|||
|
unrar
|
|||
|
unzip
|
|||
|
atool
|
|||
|
p7zip
|
|||
|
bzip2
|
|||
|
gzip
|
|||
|
atool
|
|||
|
|
|||
|
micro
|
|||
|
aspell aspellDicts.en aspellDicts.nb
|
|||
|
vimv
|
|||
|
dos2unix
|
|||
|
#rmate # TODO: add to nixpkgs
|
|||
|
pandoc
|
|||
|
cargo
|
|||
|
cargo-edit
|
|||
|
sqlite
|
|||
|
#sshuttle
|
|||
|
visidata
|
|||
|
|
|||
|
weston
|
|||
|
cage
|
|||
|
vimix-gtk-themes
|
|||
|
flat-remix-icon-theme
|
|||
|
xclip
|
|||
|
feh
|
|||
|
|
|||
|
sshfs
|
|||
|
|
|||
|
glances
|
|||
|
zenith
|
|||
|
tealdeer # tldr
|
|||
|
entr
|
|||
|
axel aria
|
|||
|
bat
|
|||
|
xe # xargs alternative
|
|||
|
sd # sed alternative
|
|||
|
fd # find alternative
|
|||
|
silver-searcher # `ag`
|
|||
|
ripgrep
|
|||
|
jq
|
|||
|
yq
|
|||
|
htmlq
|
|||
|
sysz
|
|||
|
du-dust # du alternative
|
|||
|
ncdu # Disk usage analyzer with an ncurses interface
|
|||
|
|
|||
|
gh
|
|||
|
hub
|
|||
|
|
|||
|
cachix
|
|||
|
nix-output-monitor
|
|||
|
nix-prefetch
|
|||
|
nix-top
|
|||
|
#nix-index
|
|||
|
nix-tree
|
|||
|
nix-diff
|
|||
|
nixfmt
|
|||
|
alejandra
|
|||
|
];
|
|||
|
|
|||
|
# TODO: remove? Move?
|
|||
|
programs.dconf.enable = true;
|
|||
|
|
|||
|
# Some programs need SUID wrappers, can be configured further or are
|
|||
|
# started in user sessions.
|
|||
|
#programs.mtr.enable = true;
|
|||
|
#programs.gnupg.agent = {
|
|||
|
# enable = true;
|
|||
|
# enableSSHSupport = true;
|
|||
|
#};
|
|||
|
|
|||
|
# OpenSSH
|
|||
|
services.openssh.enable = true;
|
|||
|
services.openssh.forwardX11 = true;
|
|||
|
|
|||
|
# TODO: should not be system-wide
|
|||
|
#programs.ssh.extraConfig = ''
|
|||
|
# Host *.ntnu.no *.pvv.org
|
|||
|
# User pederbs
|
|||
|
#'';
|
|||
|
|
|||
|
# 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 = "22.11"; # Did you read the comment?
|
|||
|
}
|