mirror of
https://github.com/harryssecret/homelab-nix.git
synced 2025-08-08 06:30:18 +02:00
added workstation config
This commit is contained in:
parent
b52b99f405
commit
7fa38d9777
5 changed files with 88 additions and 9 deletions
24
flake.nix
24
flake.nix
|
@ -64,7 +64,7 @@
|
||||||
...
|
...
|
||||||
}@inputs:
|
}@inputs:
|
||||||
let
|
let
|
||||||
username = "harry123";
|
username = "misschloe777";
|
||||||
secrets = builtins.toString inputs.nix-secrets;
|
secrets = builtins.toString inputs.nix-secrets;
|
||||||
|
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
|
@ -116,6 +116,28 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
workstation = nixpkgsUnstable.lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
specialArgs = specialArgs;
|
||||||
|
modules = [
|
||||||
|
./hosts/workstation/configuration.nix
|
||||||
|
nix-flatpak.nixosModules.nix-flatpak
|
||||||
|
catppuccin.nixosModules.catppuccin
|
||||||
|
home-manager.nixosModules.home-manager
|
||||||
|
{
|
||||||
|
home-manager.useGlobalPkgs = true;
|
||||||
|
home-manager.useUserPackages = true;
|
||||||
|
home-manager.users.${username} = {
|
||||||
|
imports = [
|
||||||
|
./home-manager/home.nix
|
||||||
|
catppuccin.homeModules.catppuccin
|
||||||
|
];
|
||||||
|
};
|
||||||
|
home-manager.extraSpecialArgs = { inherit inputs; };
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
dionysos = nixpkgs.lib.nixosSystem {
|
dionysos = nixpkgs.lib.nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
|
|
|
@ -7,8 +7,8 @@
|
||||||
{
|
{
|
||||||
# Home Manager needs a bit of information about you and the paths it should
|
# Home Manager needs a bit of information about you and the paths it should
|
||||||
# manage.
|
# manage.
|
||||||
home.username = "harry123";
|
home.username = "misschloe777";
|
||||||
home.homeDirectory = "/home/harry123";
|
home.homeDirectory = "/home/misschloe777";
|
||||||
|
|
||||||
# This value determines the Home Manager release that your configuration is
|
# This value determines the Home Manager release that your configuration is
|
||||||
# compatible with. This helps avoid breakage when a new Home Manager release
|
# compatible with. This helps avoid breakage when a new Home Manager release
|
||||||
|
|
|
@ -57,7 +57,6 @@
|
||||||
revolt-desktop
|
revolt-desktop
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.kdeconnect.enable = true;
|
|
||||||
virtualisation.containers.enable = true;
|
virtualisation.containers.enable = true;
|
||||||
virtualisation = {
|
virtualisation = {
|
||||||
podman = {
|
podman = {
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
{
|
{
|
||||||
imports =
|
imports =
|
||||||
[ # Include the results of the hardware scan.
|
[ # Include the results of the hardware scan.
|
||||||
|
../../shared/client/tailscale.nix
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -18,7 +19,7 @@
|
||||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||||
|
|
||||||
boot.initrd.luks.devices."luks-11a80280-8a8c-44c0-a8be-7ef370eb37ae".device = "/dev/disk/by-uuid/11a80280-8a8c-44c0-a8be-7ef370eb37ae";
|
boot.initrd.luks.devices."luks-11a80280-8a8c-44c0-a8be-7ef370eb37ae".device = "/dev/disk/by-uuid/11a80280-8a8c-44c0-a8be-7ef370eb37ae";
|
||||||
networking.hostName = "nixos"; # Define your hostname.
|
networking.hostName = "workstation"; # Define your hostname.
|
||||||
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
||||||
|
|
||||||
# Configure network proxy if necessary
|
# Configure network proxy if necessary
|
||||||
|
@ -56,13 +57,20 @@
|
||||||
console.keyMap = "fr";
|
console.keyMap = "fr";
|
||||||
|
|
||||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||||
users.users.rouge = {
|
users.users.misschloe777 = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
description = "rouge";
|
description = "misschloe777";
|
||||||
extraGroups = [ "networkmanager" "wheel" ];
|
extraGroups = [ "networkmanager" "wheel" "audio" "video" "podman" ];
|
||||||
packages = with pkgs; [];
|
packages = with pkgs; [
|
||||||
|
inputs.zen-browser.packages."${system}".default
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nix.settings.experimental-features = [
|
||||||
|
"nix-command"
|
||||||
|
"flakes"
|
||||||
|
];
|
||||||
|
|
||||||
# Allow unfree packages
|
# Allow unfree packages
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
|
@ -71,6 +79,15 @@
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
# vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||||
# wget
|
# wget
|
||||||
|
wget
|
||||||
|
dwl
|
||||||
|
git
|
||||||
|
tmux
|
||||||
|
mako
|
||||||
|
grim
|
||||||
|
slurp
|
||||||
|
wl-clipboard
|
||||||
|
udiskie
|
||||||
];
|
];
|
||||||
|
|
||||||
# Some programs need SUID wrappers, can be configured further or are
|
# Some programs need SUID wrappers, can be configured further or are
|
||||||
|
|
41
hosts/workstation/features/software/workstation.nix
Normal file
41
hosts/workstation/features/software/workstation.nix
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
{ pkgs, lib, ... }:
|
||||||
|
{
|
||||||
|
# for java development on vscode
|
||||||
|
programs.nix-ld.enable = true;
|
||||||
|
|
||||||
|
nixpkgs.config.allowUnfreePredicate =
|
||||||
|
pkg:
|
||||||
|
builtins.elem (lib.getName pkg) [
|
||||||
|
"davinci-resolve"
|
||||||
|
"vscode"
|
||||||
|
"tetrio-desktop"
|
||||||
|
"beeper"
|
||||||
|
];
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
zathura
|
||||||
|
libreoffice-qt
|
||||||
|
hunspell
|
||||||
|
hunspellDicts.fr-any
|
||||||
|
hunspellDicts.en-gb-large
|
||||||
|
|
||||||
|
# recording software
|
||||||
|
obs-studio
|
||||||
|
|
||||||
|
gvfs
|
||||||
|
|
||||||
|
nil
|
||||||
|
bitwarden
|
||||||
|
];
|
||||||
|
|
||||||
|
virtualisation.containers.enable = true;
|
||||||
|
virtualisation = {
|
||||||
|
podman = {
|
||||||
|
enable = true;
|
||||||
|
# Create a `docker` alias for podman, to use it as a drop-in replacement
|
||||||
|
dockerCompat = true;
|
||||||
|
# Required for containers under podman-compose to be able to talk to each other.
|
||||||
|
defaultNetwork.settings.dns_enabled = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue