This commit is contained in:
FredzyW 2024-04-07 18:47:20 +02:00
commit 92691d7506
40 changed files with 2011 additions and 0 deletions

125
config/base.nix Normal file
View file

@ -0,0 +1,125 @@
# This is your system's configuration file.
# Use this to configure your system environment (it replaces /etc/nixos/configuration.nix)
{
inputs,
lib,
config,
pkgs,
...
}: {
nixpkgs = {
overlays = [
];
config = {
allowUnfree = true;
};
};
nix.registry = (lib.mapAttrs (_: flake: {inherit flake;})) ((lib.filterAttrs (_: lib.isType "flake")) inputs);
nix.nixPath = ["/etc/nix/path"];
environment.etc =
lib.mapAttrs'
(name: value: {
name = "nix/path/${name}";
value.source = value.flake;
})
config.nix.registry;
nix.settings = {
experimental-features = "nix-command flakes";
auto-optimise-store = true;
};
virtualisation.docker = {
enable = true;
};
hardware = {
pulseaudio.enable = true;
bluetooth = {
enable = true;
powerOnBoot = true;
};
};
networking.networkmanager.enable = true;
environment.sessionVariables = {
EDITOR = "nvim";
TERM = "xterm-256color";
};
time.timeZone = "Europe/Stockholm";
fonts.packages = with pkgs; [
(nerdfonts.override {
fonts = [
"FiraCode"
"DroidSansMono"
];
})
];
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "sv_SE.UTF-8";
LC_IDENTIFICATION = "sv_SE.UTF-8";
LC_MEASUREMENT = "sv_SE.UTF-8";
LC_MONETARY = "sv_SE.UTF-8";
LC_NAME = "sv_SE.UTF-8";
LC_NUMERIC = "sv_SE.UTF-8";
LC_PAPER = "sv_SE.UTF-8";
LC_TELEPHONE = "sv_SE.UTF-8";
LC_TIME = "sv_SE.UTF-8";
};
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
console.keyMap = "sv-latin1";
programs.zsh.enable = true;
services = {
openssh = {
enable = true;
};
picom = {
enable = true;
};
spotifyd = {
enable = true;
};
strongswan = {
enable = true;
secrets = [
"ipsec.d/ipsec.nm-l2tp.secrets"
];
};
xserver = {
enable = true;
layout = "se";
xkbVariant = "";
displayManager = {
startx = {
enable = true;
};
};
windowManager = {
dwm = {
enable = true;
};
};
};
locate = {
enable = true;
locate = pkgs.mlocate;
};
blueman = {
enable = true;
};
};
system.stateVersion = "23.11";
}

159
config/home.nix Normal file
View file

@ -0,0 +1,159 @@
# This is your home-manager configuration file
# Use this to configure your home environment (it replaces ~/.config/nixpkgs/home.nix)
{
inputs,
lib,
config,
pkgs,
myhostname,
...
}: {
imports = [
../moduler/common/dwm.nix
../moduler/common/dmenu.nix
../moduler/common/kitty.nix
../moduler/common/tmux.nix
../moduler/common/zsh.nix
../moduler/common/git.nix
../moduler/common/nixpkgs.nix
../moduler/common/firefox.nix
../moduler/common/zathura.nix
../moduler/common/lazygit.nix
../moduler/common/spotifyd.nix
../moduler/common/ssh.nix
];
nixpkgs = {
overlays = [];
config = {
allowUnfree = true;
allowUnfreePredicate = _: true;
permittedInsecurePackages = [
"electron-25.9.0"
"nix-2.16.2"
];
};
};
home.packages = with pkgs; [
# System
arion
wget
alsa-utils
killall
upower
mpv
gcc
gnumake
htop
openssh
xsel
unzip
nixops_unstable
killall
cmake
feh
brightnessctl
scrot
dunst
xbanish
rofi
networkmanager
pavucontrol
fd
bat
steam-run
appimage-run
#Terminal
git
tmux
zathura
yt-dlp
fzf
ripgrep
spotify-tui
wiki-tui
speedcrunch
#Desktop
aerc
firefox
vimb
thunderbird
spotify
signal-desktop
darktable
discord
slack
lunarvim
kitty
neovim
neofetch
obsidian
lazygit
betterdiscordctl
#Dev
python3
python311Packages.pip
ranger
python311Packages.pynvim
ueberzugpp
#LSP
nil
python311Packages.python-lsp-server
marksman
clojure-lsp
omnisharp-roslyn
haskell-language-server
java-language-server
nodePackages_latest.bash-language-server
dockerfile-language-server-nodejs
yaml-language-server
ansible-language-server
lua-language-server
tree-sitter
nodejs_21
nodePackages_latest.vls
nodePackages_latest.volar
vscode-langservers-extracted
#VPN
openvpn
networkmanagerapplet
networkmanager-l2tp
strongswan
ansible
#Funk
cabal-install
ghc
haskellPackages.hoogle
haskellPackages.fast-tags
#Disk
clojure
leiningen
# Jobb
remmina
dotnet-sdk_8
mono5
dotnetPackages.Nuget
];
programs.home-manager.enable = true;
xsession.enable = true;
xsession.windowManager.command = "exec dwm";
home.username = "fw";
home.homeDirectory = "/home/fw";
home.stateVersion = "23.11"; # Did you read the comment?
systemd.user.startServices = "sd-switch";
}

98
config/server.nix Normal file
View file

@ -0,0 +1,98 @@
# This is your home-manager configuration file
# Use this to configure your home environment (it replaces ~/.config/nixpkgs/home.nix)
{
inputs,
lib,
config,
pkgs,
myhostname,
...
}: {
imports = [
../moduler/common/git.nix
../moduler/common/nixpkgs.nix
../moduler/common/lazygit.nix
../moduler/common/zsh-server.nix
];
nixpkgs = {
overlays = [];
config = {
allowUnfree = true;
allowUnfreePredicate = _: true;
permittedInsecurePackages = [
"nix-2.16.2"
];
};
};
home.packages = with pkgs; [
# System
arion
wget
killall
gcc
gnumake
htop
openssh
xsel
unzip
nixops_unstable
cmake
networkmanager
fd
bat
#Terminal
git
yt-dlp
fzf
ripgrep
#Desktop
neovim
lazygit
#Dev
python3
python311Packages.pip
ranger
python311Packages.pynvim
ueberzugpp
#LSP
nil
python311Packages.python-lsp-server
marksman
clojure-lsp
omnisharp-roslyn
haskell-language-server
java-language-server
nodePackages_latest.bash-language-server
dockerfile-language-server-nodejs
yaml-language-server
ansible-language-server
lua-language-server
tree-sitter
nodejs_21
nodePackages_latest.vls
nodePackages_latest.volar
vscode-langservers-extracted
#VPN
openvpn
networkmanagerapplet
networkmanager-l2tp
strongswan
ansible
];
programs.home-manager.enable = true;
home.username = "fw";
home.homeDirectory = "/home/fw";
home.stateVersion = "23.11"; # Did you read the comment?
systemd.user.startServices = "sd-switch";
}

27
config/users.nix Normal file
View file

@ -0,0 +1,27 @@
{ config
, pkgs
, ...
}: {
# TODO: Configure your system-wide user settings (groups, etc), add more users as needed.
users = {
defaultUserShell = pkgs.zsh;
users = {
fw = {
initialPassword = "password";
isNormalUser = true;
description = "Fredrik Wastring";
extraGroups = [
"networkmanager"
"wheel"
"audio"
"docker"
];
openssh.authorizedKeys = {
keys = [
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDALsdpwvC0w/Aj+1fWtzJyyWoUrGkdh8o2thVHeQQBNo0D7cmVberYmi4Cv9gWGX6PaElrnOl0KRdGyro2wxOYokSxgk2VgWW67BFITAQAbKyG2NhXXPbhb4jccDo7WH7TtOG8IofuJTPRu1Duda6k4RN0I0CkyAN6LGX+zy49cq0qKf9ijXYhCDYNih3+Fu/ig0aW/SYmsVoUl2VFTWdI5x5/wLvIjTEZhmAtYIeYADaLnom356cFrUysZa++FUujQAz3Ow236BvP95XZdTsqvfWNZFNIpC9VYF72JeIDCs5wDIr0GFmanF2On1nar+jJpoOE8SdHt357p5g/PqXV5TisN2xQRkqVwO9tWtMl4sF84jA4ULnY2gQWv9jErMxymUQ1IwuPUzDDlbRHCtfexAtkBy7wv6xslKAzG1QahvF/btNs5Caj3LN31rgAuxyooCbKGKTeBP3kHPKcz1iupgidfbO/QqVXBRQJTEdGyAKa8hVmLQZZPC/XUhxESAk= fw@fw-nix"
];
};
};
};
};
}