makefu: init pnp
this is the first entry for my hosts, it provides only very basic support with a lot of copy-paste from tv/lass
This commit is contained in:
parent
461bacfd6a
commit
2b3030c7b2
@ -1,4 +1,4 @@
|
||||
deploy_host := root@uriel
|
||||
deploy_host := root@pnp
|
||||
nixpkgs_url := https://github.com/nixos/nixpkgs
|
||||
nixpkgs_rev := 961fcbabd7643171ea74bd550fee1ce5c13c2e90
|
||||
nixpkgs_rev := 4c01e6d91993b6de128795f4fbdd25f6227fb870
|
||||
secrets_dir := /home/makefu/secrets/pnp
|
||||
|
@ -0,0 +1,38 @@
|
||||
# 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’).
|
||||
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ # Include the results of the hardware scan.
|
||||
<nixpkgs/nixos/modules/profiles/qemu-guest.nix>
|
||||
../../2configs/makefu/base.nix
|
||||
];
|
||||
boot.loader.grub.enable = true;
|
||||
boot.loader.grub.version = 2;
|
||||
boot.loader.grub.device = "/dev/vda";
|
||||
|
||||
boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "ehci_pci" "virtio_pci" "virtio_blk" ];
|
||||
boot.kernelModules = [ ];
|
||||
boot.extraModulePackages = [ ];
|
||||
hardware.enableAllFirmware = true;
|
||||
hardware.cpu.amd.updateMicrocode = true;
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-label/nixos";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
nix.maxJobs = 1;
|
||||
networking.hostName = "pnp"; # Define your hostname.
|
||||
|
||||
# $ nix-env -qaP | grep wget
|
||||
environment.systemPackages = with pkgs; [
|
||||
wget
|
||||
git
|
||||
gnumake
|
||||
];
|
||||
|
||||
}
|
96
2configs/makefu/base.nix
Normal file
96
2configs/makefu/base.nix
Normal file
@ -0,0 +1,96 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
{
|
||||
imports = [ ];
|
||||
users.extraUsers = {
|
||||
root = {
|
||||
openssh.authorizedKeys.keys = map readFile [
|
||||
../../Zpubkeys/makefu_arch.ssh.pub
|
||||
];
|
||||
};
|
||||
makefu = {
|
||||
uid = 9001;
|
||||
group = "users";
|
||||
home = "/home/makefu";
|
||||
createHome = true;
|
||||
useDefaultShell = true;
|
||||
extraGroups = [
|
||||
"wheel"
|
||||
];
|
||||
openssh.authorizedKeys.keys = map readFile [
|
||||
../../Zpubkeys/makefu_arch.ssh.pub
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
services.openssh.enable = true;
|
||||
nix.useChroot = true;
|
||||
|
||||
users.mutableUsers = true;
|
||||
|
||||
boot.tmpOnTmpfs = true;
|
||||
systemd.tmpfiles.rules = [
|
||||
"d /tmp 1777 root root - -"
|
||||
];
|
||||
|
||||
environment.extraInit = ''
|
||||
EDITOR=vim
|
||||
'';
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
git
|
||||
vim
|
||||
rxvt_unicode.terminfo
|
||||
];
|
||||
|
||||
programs.bash = {
|
||||
enableCompletion = true;
|
||||
interactiveShellInit = ''
|
||||
HISTCONTROL='erasedups:ignorespace'
|
||||
HISTSIZE=900001
|
||||
HISTFILESIZE=$HISTSIZE
|
||||
|
||||
shopt -s checkhash
|
||||
shopt -s histappend histreedit histverify
|
||||
shopt -s no_empty_cmd_completion
|
||||
complete -d cd
|
||||
|
||||
'';
|
||||
promptInit = ''
|
||||
case $UID in
|
||||
0) PS1='\[\e[1;31m\]\w\[\e[0m\] ' ;;
|
||||
9001) PS1='\[\e[1;32m\]\w\[\e[0m\] ' ;;
|
||||
*) PS1='\[\e[1;35m\]\u \[\e[1;32m\]\w\[\e[0m\] ' ;;
|
||||
esac
|
||||
if test -n "$SSH_CLIENT"; then
|
||||
PS1='\[\033[35m\]\h'" $PS1"
|
||||
fi
|
||||
'';
|
||||
};
|
||||
environment.shellAliases = {
|
||||
lsl = "ls -latr";
|
||||
};
|
||||
|
||||
security.setuidPrograms = [ "sendmail" ];
|
||||
|
||||
services.journald.extraConfig = ''
|
||||
SystemMaxUse=1G
|
||||
RuntimeMaxUse=128M
|
||||
'';
|
||||
nixpkgs.config.packageOverrides = pkgs: {
|
||||
nano = pkgs.runCommand "empty" {} "mkdir -p $out";
|
||||
};
|
||||
services.cron.enable = false;
|
||||
services.nscd.enable = false;
|
||||
boot.kernel.sysctl = {
|
||||
# Enable IPv6 Privacy Extensions
|
||||
"net.ipv6.conf.all.use_tempaddr" = 2;
|
||||
"net.ipv6.conf.default.use_tempaddr" = 2;
|
||||
};
|
||||
i18n = {
|
||||
consoleKeyMap = "us";
|
||||
defaultLocale = "en_US.UTF-8";
|
||||
};
|
||||
|
||||
}
|
Loading…
Reference in New Issue
Block a user