Add custom config for root.

This commit is contained in:
niten 2021-11-15 16:23:33 -08:00
parent d1b245e42d
commit 6b04af4689
3 changed files with 129 additions and 27 deletions

View File

@ -17,7 +17,7 @@ let
user-config-map = {
niten = ./niten.nix;
# FIXME: Root shouldn't have all this stuff installed!
root = ./niten.nix;
root = ./root.nix;
viator = ./niten.nix;
xiaoxuan = ./xiaoxuan.nix;
};
@ -60,7 +60,6 @@ in {
niten-doom-config;
username = "root";
user-email = "root@${config.instance.local-domain}";
enable-gui = false;
home-dir = "/root";
};
};

View File

@ -30,21 +30,23 @@ let
};
gui-packages = with pkgs; [
exodus
gnome.gnome-tweaks
google-chrome
imagemagick
jq
minecraft
mplayer
nyxt
openttd
pv
redshift
signal-desktop
spotify
xclip
];
element-desktop
exodus
faudio
gnome.gnome-tweaks
google-chrome
imagemagick
jq
minecraft
mplayer
nyxt
openttd
pv
redshift
signal-desktop
spotify
xclip
];
common-packages = with pkgs; [
ant
@ -61,9 +63,7 @@ let
cmake
curl
doom-emacs-package
element-desktop
enca
faudio
file
fortune
git
@ -131,7 +131,7 @@ in {
};
firefox = {
enable = true;
enable = enable-gui;
## Some perm change error?
# package = (pkgs.firefox.override {
# cfg = {
@ -161,13 +161,7 @@ in {
gpg-agent.enable = true;
gnome-keyring.enable = true;
# redshift = {
# enable = true;
# latitude = "47";
# longitude = "122";
# };
gnome-keyring.enable = enable-gui;
gammastep = {
enable = true;

109
root.nix Normal file
View File

@ -0,0 +1,109 @@
{
doom-emacs,
niten-doom-config,
config,
lib,
pkgs,
username,
user-email,
home-dir,
...
}:
with lib;
let
doom-emacs-package = pkgs.callPackage doom-emacs {
doomPrivateDir = niten-doom-config;
extraPackages = with pkgs.emacsPackages; [
elpher
use-package
];
emacsPackagesOverlay = final: prev: {
irony = prev.irony.overrideAttrs (esuper: {
buildInputs = with pkgs;
esuper.buildInputs ++
[ cmake libclang clang ];
});
};
};
common-packages = with pkgs; [
atop
btrfs-progs
cdrtools
curl
doom-emacs-package
file
git
gnutls
gnupg
guile
iptables
lsof
lshw
mtr
nix-prefetch-git
nmap
pciutils
pwgen
tmux
unzip
];
ensure-directories = [ ".emacs.d/.local/etc/eshell" ];
in {
programs = {
bash = {
enable = true;
enableVteIntegration = true;
};
git = {
enable = true;
userName = username;
userEmail = user-email;
ignores = [ "*~" ];
extraConfig.pull.rebase = false;
};
};
services = {
emacs = {
enable = true;
package = doom-emacs-package;
client = {
enable = true;
};
};
};
home = {
packages = if enable-gui then (common-packages ++ gui-packages)
else
common-packages;
file = {
# For nixified emacs
".emacs.d/init.el".text = ''
(load "default.el")
(setq package-archives nil)
(package-initialize)
'';
};
sessionVariables = {
# EDITOR = "${doom-emacs}/bin/emacsclient -t";
ALTERNATE_EDITOR = "";
DOOM_EMACS_SITE_PATH = "${niten-doom-config}/site.d";
HISTCONTROL = "ignoredups:ignorespace";
};
};
systemd.user.tmpfiles.rules =
map (dir: "d ${home-dir}/${dir} 700 root - - -") ensure-directories;
}