add base nix conf
This commit is contained in:
parent
39254e5c3b
commit
292a03354f
33 changed files with 360 additions and 674 deletions
327
jupiter/configuration.nix
Normal file
327
jupiter/configuration.nix
Normal file
|
|
@ -0,0 +1,327 @@
|
|||
{ config, pkgs, ... }:
|
||||
let
|
||||
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
|
||||
in
|
||||
let
|
||||
unstableTarball =
|
||||
fetchTarball
|
||||
https://github.com/NixOS/nixpkgs/archive/nixos-unstable.tar.gz;
|
||||
in
|
||||
{
|
||||
imports =
|
||||
[
|
||||
./hardware-configuration.nix
|
||||
(import "${home-manager}/nixos")
|
||||
];
|
||||
|
||||
# Bootloader.
|
||||
boot = {
|
||||
loader = {
|
||||
grub = {
|
||||
enable = true;
|
||||
device = "/dev/sda";
|
||||
useOSProber = true;
|
||||
enableCryptodisk=true;
|
||||
};
|
||||
};
|
||||
initrd = {
|
||||
kernelModules = [ "amdgpu" ];
|
||||
luks.devices."luks-1e776713-4d94-401d-b9bf-60e70f1a8b3e".keyFile = "/crypto_keyfile.bin";
|
||||
# Setup keyfile
|
||||
secrets = {
|
||||
"/crypto_keyfile.bin" = null;
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
networking.hostName = "jupiter"; # Define your hostname.
|
||||
|
||||
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
time.timeZone = "Europe/Madrid";
|
||||
i18n.defaultLocale = "en_US.utf8";
|
||||
i18n.extraLocaleSettings = {
|
||||
LC_ADDRESS = "es_US.utf8";
|
||||
LC_IDENTIFICATION = "es_ES.utf8";
|
||||
LC_MEASUREMENT = "es_ES.utf8";
|
||||
LC_MONETARY = "es_ES.utf8";
|
||||
LC_NAME = "es_ES.utf8";
|
||||
LC_NUMERIC = "es_ES.utf8";
|
||||
LC_PAPER = "es_ES.utf8";
|
||||
LC_TELEPHONE = "es_ES.utf8";
|
||||
LC_TIME = "es_ES.utf8";
|
||||
};
|
||||
|
||||
sound.enable = true;
|
||||
hardware = {
|
||||
pulseaudio.enable = false;
|
||||
opengl = {
|
||||
driSupport32Bit = true;
|
||||
driSupport = true;
|
||||
|
||||
extraPackages = with pkgs; [
|
||||
amdvlk
|
||||
];
|
||||
extraPackages32 = with pkgs; [
|
||||
driversi686Linux.amdvlk
|
||||
];
|
||||
};
|
||||
};
|
||||
security.rtkit.enable = true;
|
||||
|
||||
users = {
|
||||
mutableUsers = false;
|
||||
users.europa = {
|
||||
uid = 1000;
|
||||
shell = pkgs.fish;
|
||||
hashedPassword = "$6$QV9sH1LG6jxHdly3$g5rM6cH1HHKHaXHOxNONFPMRW7ZFJCuGgI20KzA/OYiZbc.0JbIsWiYB4vDubIZXSF8od6EBKQoq9wwCeKNzR0";
|
||||
isNormalUser = true;
|
||||
description = "europa";
|
||||
extraGroups = [ "networkmanager" "wheel" ];
|
||||
};
|
||||
};
|
||||
|
||||
home-manager.users.europa = {
|
||||
home.packages = with pkgs; [
|
||||
lutris
|
||||
rofi-rbw
|
||||
rofi
|
||||
bspwm
|
||||
kermit-terminal
|
||||
steam-tui
|
||||
gnome3.adwaita-icon-theme
|
||||
];
|
||||
programs = {
|
||||
git = {
|
||||
enable = true;
|
||||
aliases = {
|
||||
c = "commit";
|
||||
ch = "checkout";
|
||||
d = "diff";
|
||||
r = "rebase";
|
||||
s = "status";
|
||||
st = "stash";
|
||||
sw = "switch";
|
||||
};
|
||||
delta.enable = true;
|
||||
userEmail = "catalin@roboces.dev";
|
||||
userName = "185504a9";
|
||||
signing = {
|
||||
key = null;
|
||||
signByDefault = true;
|
||||
};
|
||||
};
|
||||
ssh = {
|
||||
enable = true;
|
||||
extraConfig = "
|
||||
|
||||
Host fuku.lilith
|
||||
HostName lilith.fuku
|
||||
User catalin
|
||||
IdentityFile ~/.ssh/id_ed25519_robo
|
||||
IdentitiesOnly yes
|
||||
|
||||
Host fuku.ramiel
|
||||
HostName ramiel.fuku
|
||||
User catalin
|
||||
IdentityFile ~/.ssh/id_ed25519_robo
|
||||
IdentitiesOnly yes
|
||||
|
||||
Host ceco.mars
|
||||
HostName 192.168.2.130
|
||||
User catalin
|
||||
IdentityFile ~/.ssh/id_ed25519_robo
|
||||
IdentitiesOnly yes
|
||||
|
||||
Host fuku.iramiel
|
||||
HostName ramiel.fukurokuju.dev
|
||||
User catalin
|
||||
Port 23209
|
||||
IdentityFile ~/.ssh/id_ed25519_robo
|
||||
IdentitiesOnly yes
|
||||
|
||||
Host fuku.ililith
|
||||
HostName ramiel.fukurokuju.dev
|
||||
User catalin
|
||||
Port 22209
|
||||
IdentityFile ~/.ssh/id_ed25519_robo
|
||||
IdentitiesOnly yes
|
||||
|
||||
Host fuku.containers
|
||||
HostName containers.fuku
|
||||
User bullseye
|
||||
IdentityFile ~/.ssh/id_ed25519_robo
|
||||
|
||||
Host fuku.sandalphon
|
||||
HostName sandalphon.fuku
|
||||
User pi
|
||||
IdentityFile ~/.ssh/id_ed25519_robo
|
||||
IdentitiesOnly yes
|
||||
|
||||
Host fuku.zeruel
|
||||
HostName zeruel.fuku
|
||||
User pi
|
||||
IdentityFile ~/.ssh/id_ed25519_robo IdentitiesOnly yes
|
||||
|
||||
Host fuku.dns
|
||||
HostName dns.fuku
|
||||
User root
|
||||
IdentityFile ~/.ssh/id_ed25519_robo
|
||||
IdentitiesOnly yes
|
||||
|
||||
Host fuku.cloud
|
||||
HostName cloud.fuku
|
||||
User root
|
||||
IdentityFile ~/.ssh/id_ed25519_robo
|
||||
IdentitiesOnly yes
|
||||
|
||||
Host fuku.postgres
|
||||
HostName postgres.fuku
|
||||
User root
|
||||
|
||||
Host fuku.postgres13
|
||||
HostName postgres13.fuku
|
||||
IdentityFile ~/.ssh/id_ed25519_robo
|
||||
IdentitiesOnly yes
|
||||
User root
|
||||
|
||||
Host fuku.smough
|
||||
HostName smough.fuku
|
||||
User root
|
||||
|
||||
Host fuku.gitea
|
||||
HostName gitea.fuku
|
||||
User root
|
||||
|
||||
Host fuku.nginx
|
||||
HostName nginx.fuku
|
||||
User root
|
||||
|
||||
Host fuku.redis
|
||||
HostName redis.fuku
|
||||
User root
|
||||
|
||||
Host fuku.mail
|
||||
HostName mail.fukurokuju.dev
|
||||
User root
|
||||
|
||||
Host gitlab.com
|
||||
HostName gitlab.com
|
||||
IdentityFile ~/.ssh/id_ed25519_ceco
|
||||
IdentitiesOnly yes
|
||||
|
||||
Host gitlab.gitops
|
||||
HostName gitlab.com
|
||||
User git
|
||||
AddKeysToAgent yes
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519.pub
|
||||
";
|
||||
};
|
||||
fish = {
|
||||
enable = true;
|
||||
plugins = [{
|
||||
name = "z";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "jethrokuan";
|
||||
repo = "z";
|
||||
rev = "85f863f20f24faf675827fb00f3a4e15c7838d76";
|
||||
sha256 = "sha256-+FUBM7CodtZrYKqU542fQD+ZDGrd2438trKM0tIESs0=";
|
||||
};
|
||||
}];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
nixpkgs = {
|
||||
overlays = [
|
||||
(import (builtins.fetchTarball "https://github.com/oxalica/rust-overlay/archive/master.tar.gz"))
|
||||
(self: super: {
|
||||
neovim = super.neovim.override {
|
||||
viAlias = true;
|
||||
vimAlias = true;
|
||||
};
|
||||
})
|
||||
];
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
packageOverrides = pkgs: {
|
||||
unstable = import unstableTarball {
|
||||
config = config.nixpkgs.config;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
environment = {
|
||||
variables = {
|
||||
EDITOR = "nvim";
|
||||
};
|
||||
systemPackages = with pkgs; [
|
||||
yank
|
||||
gcc
|
||||
git
|
||||
fd
|
||||
procs
|
||||
tealdeer
|
||||
ripgrep
|
||||
bottom
|
||||
du-dust
|
||||
hyperfine
|
||||
bandwhich
|
||||
delta
|
||||
gnumake
|
||||
cargo
|
||||
rustc
|
||||
neovim
|
||||
wget
|
||||
curl
|
||||
firefox
|
||||
tmux
|
||||
];
|
||||
};
|
||||
|
||||
programs = {
|
||||
neovim = {
|
||||
enable = true;
|
||||
viAlias = true;
|
||||
};
|
||||
fish.enable = true;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
services = {
|
||||
printing.enable = true;
|
||||
flatpak.enable = true;
|
||||
|
||||
xserver = {
|
||||
enable = true;
|
||||
displayManager.gdm.enable = true;
|
||||
desktopManager.gnome.enable = true;
|
||||
layout = "us";
|
||||
xkbVariant = "";
|
||||
windowManager.bspwm.enable = true;
|
||||
videoDrivers = [ "amdgpu" ];
|
||||
};
|
||||
|
||||
pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
|
||||
openssh = {
|
||||
enable = true;
|
||||
passwordAuthentication = true;
|
||||
permitRootLogin = "no";
|
||||
};
|
||||
|
||||
};
|
||||
system.stateVersion = "22.05";
|
||||
}
|
||||
|
||||
|
||||
33
jupiter/hardware-configuration.nix
Normal file
33
jupiter/hardware-configuration.nix
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/profiles/qemu-guest.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "ehci_pci" "sd_mod" "sr_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/bc2bc233-2c0b-4649-8cc1-c5853c1ce2e9";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
boot.initrd.luks.devices."luks-1e776713-4d94-401d-b9bf-60e70f1a8b3e".device = "/dev/disk/by-uuid/1e776713-4d94-401d-b9bf-60e70f1a8b3e";
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.ens3.useDHCP = lib.mkDefault true;
|
||||
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue