ran linter

This commit is contained in:
Leyla Becker 2024-09-21 11:26:18 -05:00
parent 5da0753b7c
commit dcd5accea0
23 changed files with 372 additions and 309 deletions

View file

@ -1,11 +1,9 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
imports = [
../common
];
services = {
# Enable CUPS to print documents.
printing.enable = true;
@ -21,7 +19,7 @@
};
# Get rid of xTerm
excludePackages = [ pkgs.xterm ];
excludePackages = [pkgs.xterm];
# Configure keymap in X11
xkb = {
@ -44,7 +42,6 @@
};
};
# Enable sound with pipewire.
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
@ -57,4 +54,4 @@
gnomeExtensions.dash-to-dock
];
}
}

View file

@ -1,11 +1,10 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
imports = [
../../users
../../users
];
nix.settings.experimental-features = [ "nix-command" "flakes" ];
nix.settings.trusted-users = [ "leyla" ];
nix.settings.experimental-features = ["nix-command" "flakes"];
nix.settings.trusted-users = ["leyla"];
# Enable networking
networking.networkmanager.enable = true;
@ -32,10 +31,10 @@
services = {
openssh = {
enable = true;
ports = [ 22 ];
ports = [22];
settings = {
PasswordAuthentication = false;
AllowUsers = [ "leyla" ]; # Allows all users by default. Can be [ "user1" "user2" ]
AllowUsers = ["leyla"]; # Allows all users by default. Can be [ "user1" "user2" ]
UseDns = true;
X11Forwarding = false;
};
@ -47,7 +46,7 @@
defaultSopsFormat = "yaml";
gnupg.sshKeyPaths = [];
age ={
age = {
keyFile = "/var/lib/sops-nix/key.txt";
sshKeyPaths = [];
# generateKey = true;
@ -68,4 +67,4 @@
iputils
dnsutils
];
}
}

View file

@ -1,21 +1,40 @@
{ config, pkgs, ... }:
{
config,
pkgs,
...
}: {
imports = [
../common
];
users.groups.jellyfin_media = {
members = ["jellyfin" "leyla" "ester" "eve"];
};
users = {
groups = {
jellyfin_media = {
members = ["jellyfin" "leyla" "ester" "eve"];
};
users.groups.jellyfin = {
members = ["jellyfin" "leyla"];
};
jellyfin = {
members = ["jellyfin" "leyla"];
};
users.users.jellyfin = {
uid = 2000;
group = "jellyfin";
isSystemUser = true;
# forgejo = {
# members = ["forgejo" "leyla"];
# };
};
users = {
jellyfin = {
uid = 2000;
group = "jellyfin";
isSystemUser = true;
};
# forgejo = {
# uid = 2001;
# group = "forgejo";
# isSystemUser = true;
# };
};
};
systemd.tmpfiles.rules = [
@ -23,11 +42,14 @@
"d /home/jellyfin/media 775 jellyfin jellyfin_media -"
"d /home/jellyfin/config 750 jellyfin jellyfin -"
"d /home/jellyfin/cache 755 jellyfin jellyfin_media -"
# "d /home/forgejo 750 forgejo forgejo -"
# "d /home/forgejo/data 750 forgejo forgejo -"
];
services = let
jellyfinDomain = "jellyfin.jan-leila.com";
headscaleDomain = "headscale.jan-leila.com";
# forgejoDomain = "forgejo.jan-leila.com";
in {
nfs.server = {
enable = true;
@ -59,6 +81,20 @@
openFirewall = false;
};
# TODO: figure out what needs to be here
# forgejo = {
# enable = true;
# database.type = "postgres";
# lfs.enable = true;
# settings = {
# server = {
# DOMAIN = forgejoDomain;
# HTTP_PORT = 8081;
# };
# service.DISABLE_REGISTRATION = true;
# };
# };
nginx = {
enable = false; # TODO: enable this when you want to test all the configs
virtualHosts = {
@ -66,20 +102,20 @@
forceSSL = true;
enableACME = true;
locations."/" = {
proxyPass =
"http://localhost:${toString config.services.headscale.port}";
proxyPass = "http://localhost:${toString config.services.headscale.port}";
proxyWebsockets = true;
};
};
${jellyfinDomain} = {
forceSSL = true;
enableACME = true;
locations."/" = {
proxyPass =
"http://localhost:8096";
proxyWebsockets = true;
};
locations."/".proxyPass = "http://localhost:8096";
};
# ${forgejoDomain} = {
# forceSSL = true;
# enableACME = true;
# locations."/".proxyPass = "http://localhost:${toString config.services.forgejo.settings.server.HTTP_PORT}";
# };
};
};
};
@ -97,7 +133,7 @@
hybrid-sleep.enable = false;
};
networking.firewall.allowedTCPPorts = [ 2049 ];
networking.firewall.allowedTCPPorts = [2049];
environment.systemPackages = [
config.services.headscale.package
@ -105,4 +141,4 @@
pkgs.jellyfin-web
pkgs.jellyfin-ffmpeg
];
}
}

View file

@ -23,53 +23,57 @@
# repo of hardware configs for prebuilt systems
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
# vscode extensions
# vscode extensions
nix-vscode-extensions = {
url = "github:nix-community/nix-vscode-extensions";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, disko, nixos-hardware, ... }@inputs:
let
forEachSystem = nixpkgs.lib.genAttrs [
"aarch64-darwin"
"aarch64-linux"
"x86_64-darwin"
"x86_64-linux"
];
forEachPkgs = lambda: forEachSystem (system: lambda nixpkgs.legacyPackages.${system});
in
{
packages = forEachPkgs (pkgs: import ./pkgs { inherit pkgs; });
outputs = {
self,
nixpkgs,
disko,
nixos-hardware,
...
} @ inputs: let
forEachSystem = nixpkgs.lib.genAttrs [
"aarch64-darwin"
"aarch64-linux"
"x86_64-darwin"
"x86_64-linux"
];
forEachPkgs = lambda: forEachSystem (system: lambda nixpkgs.legacyPackages.${system});
in {
packages = forEachPkgs (pkgs: import ./pkgs {inherit pkgs;});
nixosConfigurations = {
# Leyla Laptop
horizon = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; };
modules = [
./hosts/horizon/configuration.nix
inputs.home-manager.nixosModules.default
nixos-hardware.nixosModules.framework-11th-gen-intel
];
};
# Leyla Desktop
twilight = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; };
modules = [
./hosts/twilight/configuration.nix
inputs.home-manager.nixosModules.default
];
};
# NAS Service
defiant = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; };
modules = [
disko.nixosModules.disko
./hosts/defiant/disko-config.nix
./hosts/defiant/configuration.nix
];
};
nixosConfigurations = {
# Leyla Laptop
horizon = nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs;};
modules = [
./hosts/horizon/configuration.nix
inputs.home-manager.nixosModules.default
nixos-hardware.nixosModules.framework-11th-gen-intel
];
};
# Leyla Desktop
twilight = nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs;};
modules = [
./hosts/twilight/configuration.nix
inputs.home-manager.nixosModules.default
];
};
# NAS Service
defiant = nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs;};
modules = [
disko.nixosModules.disko
./hosts/defiant/disko-config.nix
./hosts/defiant/configuration.nix
];
};
};
};
}

View file

@ -1,15 +1,18 @@
# server nas
{ config, pkgs, inputs, ... }:
{
imports =
[
inputs.home-manager.nixosModules.default
inputs.sops-nix.nixosModules.sops
config,
pkgs,
inputs,
...
}: {
imports = [
inputs.home-manager.nixosModules.default
inputs.sops-nix.nixosModules.sops
./hardware-configuration.nix
../../enviroments/server
];
./hardware-configuration.nix
../../enviroments/server
];
users.leyla.isThinUser = true;
@ -27,7 +30,7 @@
autoScrub.enable = true;
autoSnapshot.enable = true;
};
# temp enable desktop enviroment for setup
# Enable the X11 windowing system.
xserver = {
@ -43,7 +46,7 @@
};
# Get rid of xTerm
excludePackages = [ pkgs.xterm ];
excludePackages = [pkgs.xterm];
};
};
@ -54,4 +57,4 @@
# Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "23.05"; # Did you read the comment?
}
}

View file

@ -1,11 +1,10 @@
{ lib, ... }:
let
{lib, ...}: let
bootDisk = devicePath: {
type = "disk";
device = devicePath;
content = {
type = "gpt";
partitions = {
boot = {
size = "1M";
@ -86,11 +85,13 @@ in {
# should this only mirror for this inital config with 3 drives we will used raidz2 for future configs???
mode = "mirror";
members = [
"hd_13_tb_a" "hd_13_tb_b" "hd_13_tb_c"
"hd_13_tb_a"
"hd_13_tb_b"
"hd_13_tb_c"
];
}
];
cache = [ ];
cache = [];
# cache = [ "ssd_2_tb_a" ];
};
};
@ -98,7 +99,7 @@ in {
options = {
ashift = "12";
};
rootFsOptions = {
encryption = "on";
keyformat = "hex";
@ -111,7 +112,7 @@ in {
mountpoint = "/";
postCreateHook = "zfs list -t snapshot -H -o name | grep -E '^zroot@blank$' || zfs snapshot zroot@blank";
datasets = {
"nix" = {
type = "zfs_fs";
@ -133,4 +134,3 @@ in {
};
};
}

View file

@ -1,9 +1,13 @@
# 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, ... }:
{
config,
lib,
pkgs,
modulesPath,
...
}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
../hardware-common.nix
@ -11,15 +15,15 @@
boot = {
initrd = {
availableKernelModules = [ "xhci_pci" "aacraid" "ahci" "usbhid" "usb_storage" "sd_mod" ];
kernelModules = [ ];
availableKernelModules = ["xhci_pci" "aacraid" "ahci" "usbhid" "usb_storage" "sd_mod"];
kernelModules = [];
};
kernelModules = [ "kvm-amd" ];
extraModulePackages = [ ];
supportedFilesystems = [ "zfs" ];
kernelModules = ["kvm-amd"];
extraModulePackages = [];
zfs.extraPools = [ "zroot" ];
supportedFilesystems = ["zfs"];
zfs.extraPools = ["zroot"];
};
# fileSystems."/" =
@ -27,7 +31,7 @@
# fsType = "ext4";
# };
swapDevices = [ ];
swapDevices = [];
networking = {
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
@ -46,4 +50,4 @@
# TODO: hardware graphics
cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
};
}
}

View file

@ -1,5 +1,4 @@
{ lib, ... }:
{
{lib, ...}: {
options = {
hardware = {
piperMouse = {
@ -13,4 +12,4 @@
};
};
};
}
}

View file

@ -1,15 +1,18 @@
# leyla laptop
{ config, pkgs, inputs, ... }:
{
imports =
[
inputs.home-manager.nixosModules.default
inputs.sops-nix.nixosModules.sops
config,
pkgs,
inputs,
...
}: {
imports = [
inputs.home-manager.nixosModules.default
inputs.sops-nix.nixosModules.sops
./hardware-configuration.nix
../../enviroments/client
];
./hardware-configuration.nix
../../enviroments/client
];
users = {
leyla.isFullUser = true;
@ -25,7 +28,7 @@
setSocketVariable = true;
};
};
users.extraGroups.docker.members = [ "leyla" ];
users.extraGroups.docker.members = ["leyla"];
# Enable touchpad support (enabled default in most desktopManager).
# services.xserver.libinput.enable = true;

View file

@ -1,9 +1,13 @@
# 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, ... }:
{
config,
lib,
pkgs,
modulesPath,
...
}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
../hardware-common.nix
@ -11,12 +15,12 @@
boot = {
initrd = {
availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" ];
kernelModules = [ ];
availableKernelModules = ["xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod"];
kernelModules = [];
};
kernelModules = [ "kvm-intel" "sg" ];
extraModulePackages = [ ];
kernelModules = ["kvm-intel" "sg"];
extraModulePackages = [];
# Bootloader.
loader = {
systemd-boot.enable = true;
@ -25,43 +29,39 @@
};
fileSystems = {
"/" =
{ device = "/dev/disk/by-uuid/866d422b-f816-4ad9-9846-791839cb9337";
fsType = "ext4";
};
"/" = {
device = "/dev/disk/by-uuid/866d422b-f816-4ad9-9846-791839cb9337";
fsType = "ext4";
};
"/boot" =
{ device = "/dev/disk/by-uuid/E138-65B5";
fsType = "vfat";
};
"/boot" = {
device = "/dev/disk/by-uuid/E138-65B5";
fsType = "vfat";
};
"/mnt/leyla_home" =
{
device = "defiant:/home/leyla";
fsType = "nfs";
options = [ "x-systemd.automount" "user" "noatime" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc" ];
};
"/mnt/leyla_home" = {
device = "defiant:/home/leyla";
fsType = "nfs";
options = ["x-systemd.automount" "user" "noatime" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc"];
};
"/mnt/eve_home" =
{
device = "defiant:/home/eve";
fsType = "nfs";
options = [ "x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc" ];
};
"/mnt/eve_home" = {
device = "defiant:/home/eve";
fsType = "nfs";
options = ["x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc"];
};
"/mnt/ester_home" =
{
device = "defiant:/home/ester";
fsType = "nfs";
options = [ "x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc" ];
};
"/mnt/ester_home" = {
device = "defiant:/home/ester";
fsType = "nfs";
options = ["x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc"];
};
"/mnt/users_home" =
{
device = "defiant:/home/users";
fsType = "nfs";
options = [ "x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc" ];
};
"/mnt/users_home" = {
device = "defiant:/home/users";
fsType = "nfs";
options = ["x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc"];
};
# "/mnt/legacy_leyla_home" =
# {
@ -87,9 +87,9 @@
services.cachefilesd.enable = true;
swapDevices =
[ { device = "/dev/disk/by-uuid/be98e952-a072-4c3a-8c12-69500b5a2fff"; }
];
swapDevices = [
{device = "/dev/disk/by-uuid/be98e952-a072-4c3a-8c12-69500b5a2fff";}
];
networking = {
useDHCP = lib.mkDefault true;
@ -99,7 +99,6 @@
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
hardware = {
graphics.enable = true;
cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;

View file

@ -1,15 +1,18 @@
# leyla laptop
{ config, pkgs, inputs, ... }:
{
imports =
[
inputs.home-manager.nixosModules.default
inputs.sops-nix.nixosModules.sops
config,
pkgs,
inputs,
...
}: {
imports = [
inputs.home-manager.nixosModules.default
inputs.sops-nix.nixosModules.sops
./hardware-configuration.nix
../../enviroments/client
];
./hardware-configuration.nix
../../enviroments/client
];
users = {
leyla = {
@ -19,7 +22,7 @@
ester.isFullUser = true;
eve.isFullUser = true;
};
# enabled virtualisation for docker
# virtualisation.docker.enable = true;

View file

@ -1,9 +1,13 @@
# 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, ... }:
{
config,
lib,
pkgs,
modulesPath,
...
}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
../hardware-common.nix
@ -11,11 +15,11 @@
boot = {
initrd = {
availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
kernelModules = [ ];
availableKernelModules = ["nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod"];
kernelModules = [];
};
kernelModules = [ "kvm-amd" "sg" ];
extraModulePackages = [ ];
kernelModules = ["kvm-amd" "sg"];
extraModulePackages = [];
# Bootloader.
loader = {
@ -33,40 +37,37 @@
};
fileSystems = {
"/" =
{ device = "/dev/disk/by-uuid/8be49c65-2b57-48f1-b74d-244d26061adb";
fsType = "ext4";
};
"/" = {
device = "/dev/disk/by-uuid/8be49c65-2b57-48f1-b74d-244d26061adb";
fsType = "ext4";
};
"/boot" =
{ device = "/dev/disk/by-uuid/3006-3867";
fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ];
};
"/mnt/leyla_home" =
{
device = "server.arpa:/home/leyla";
fsType = "nfs";
options = [ "x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc" ];
};
"/boot" = {
device = "/dev/disk/by-uuid/3006-3867";
fsType = "vfat";
options = ["fmask=0022" "dmask=0022"];
};
"/mnt/share_home" =
{
device = "server.arpa:/home/share";
fsType = "nfs";
options = [ "x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc" ];
};
"/mnt/leyla_home" = {
device = "server.arpa:/home/leyla";
fsType = "nfs";
options = ["x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc"];
};
"/mnt/docker_home" =
{
device = "server.arpa:/home/docker";
fsType = "nfs";
options = [ "x-systemd.automount" "noauto" "x-systemd.idle-timeout=600" ];
};
"/mnt/share_home" = {
device = "server.arpa:/home/share";
fsType = "nfs";
options = ["x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc"];
};
"/mnt/docker_home" = {
device = "server.arpa:/home/docker";
fsType = "nfs";
options = ["x-systemd.automount" "noauto" "x-systemd.idle-timeout=600"];
};
};
swapDevices = [ ];
swapDevices = [];
networking = {
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
@ -86,7 +87,7 @@
# Enable OpenGL
graphics.enable = true;
# install graphics drivers
nvidia = {
# Modesetting is required.
@ -94,7 +95,7 @@
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# Enable this if you have graphical corruption issues or application crashes after waking
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# of just the bare essentials.
powerManagement.enable = false;
@ -104,15 +105,15 @@
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
# Currently alpha-quality/buggy, so false is currently the recommended setting.
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
@ -122,4 +123,3 @@
cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
};
}

View file

@ -1,5 +1,4 @@
_:
{
_: {
# nixpkgs.overlays = [
# (self: super: {
# # idea is too out of date for android gradle things
@ -16,4 +15,4 @@ _:
# };
# })
# ];
}
}

View file

@ -1,5 +1,4 @@
_:
{
_: {
# nixpkgs.overlays = [
# (self: super: {
# # ui is broken on 1.84
@ -12,4 +11,4 @@ _:
# });
# })
# ];
}
}

View file

@ -1,4 +1,2 @@
_:
{
}
_: {
}

View file

@ -1,2 +1 @@
_:
{}
_: {}

View file

@ -1,8 +1,7 @@
{ inputs, ... }:
{
imports = [ ./leyla ./ester ./eve ];
{inputs, ...}: {
imports = [./leyla ./ester ./eve];
users.mutableUsers = false;
home-manager.extraSpecialArgs = { inherit inputs; };
}
home-manager.extraSpecialArgs = {inherit inputs;};
}

View file

@ -1,8 +1,11 @@
{ lib, config, pkgs, ... }:
let
cfg = config.users.ester;
in
{
lib,
config,
pkgs,
...
}: let
cfg = config.users.ester;
in {
options.users.ester = {
isFullUser = lib.mkEnableOption "ester";
};
@ -25,9 +28,10 @@ in
}
(
if cfg.isFullUser then {
if cfg.isFullUser
then {
isNormalUser = true;
extraGroups = [ "networkmanager" "users" ];
extraGroups = ["networkmanager" "users"];
hashedPasswordFile = config.sops.secrets."passwords/ester".path;
@ -36,10 +40,11 @@ in
bitwarden
discord
];
} else {
}
else {
isSystemUser = true;
}
)
];
};
}
}

View file

@ -1,8 +1,11 @@
{ lib, config, pkgs, ... }:
let
cfg = config.users.eve;
in
{
lib,
config,
pkgs,
...
}: let
cfg = config.users.eve;
in {
options.users.eve = {
isFullUser = lib.mkEnableOption "eve";
};
@ -25,9 +28,10 @@ in
}
(
if cfg.isFullUser then {
if cfg.isFullUser
then {
isNormalUser = true;
extraGroups = [ "networkmanager" "users" ];
extraGroups = ["networkmanager" "users"];
hashedPasswordFile = config.sops.secrets."passwords/eve".path;
@ -38,10 +42,11 @@ in
makemkv
signal-desktop
];
} else {
}
else {
isSystemUser = true;
}
)
];
};
}
}

View file

@ -1,9 +1,12 @@
{ lib, config, pkgs, ... }:
let
cfg = config.users.leyla;
in
{
imports =[
lib,
config,
pkgs,
...
}: let
cfg = config.users.leyla;
in {
imports = [
./packages.nix
];
@ -31,12 +34,13 @@ in
}
(
if (cfg.isFullUser || cfg.isThinUser) then {
if (cfg.isFullUser || cfg.isThinUser)
then {
isNormalUser = true;
extraGroups = lib.mkMerge [
["networkmanager" "wheel" "users"]
(
lib.mkIf (!cfg.isThinUser) [ "adbusers" ]
lib.mkIf (!cfg.isThinUser) ["adbusers"]
)
];
@ -48,7 +52,8 @@ in
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKBiZkg1c2aaNHiieBX4cEziqvJVj9pcDfzUrKU/mO0I leyla@twilight"
];
};
} else {
}
else {
isSystemUser = true;
}
)
@ -66,4 +71,4 @@ in
home-manager.users.leyla = lib.mkIf (cfg.isFullUser || cfg.isThinUser) (import ./home.nix);
};
}
}

View file

@ -1,6 +1,8 @@
{ config, pkgs, ... }:
{
config,
pkgs,
...
}: {
# Home Manager needs a bit of information about you and the paths it should
# manage.
home = {
@ -73,11 +75,11 @@
};
programs = {
# Let Home Manager install and manage itself.
# Let Home Manager install and manage itself.
home-manager.enable = true;
git = {
enable = true;
userName = "Leyla Becker";
userName = "Leyla Becker";
userEmail = "git@jan-leila.com";
extraConfig.init.defaultBranch = "main";
};
@ -89,18 +91,18 @@
"org/gnome/desktop/interface".color-scheme = "prefer-dark";
"org/gnome/shell" = {
disable-user-extensions = false; # enables user extensions
enabled-extensions = [
# Put UUIDs of extensions that you want to enable here.
# If the extension you want to enable is packaged in nixpkgs,
# you can easily get its UUID by accessing its extensionUuid
# field (look at the following example).
pkgs.gnomeExtensions.dash-to-dock.extensionUuid
# Alternatively, you can manually pass UUID as a string.
# "dash-to-dock@micxgx.gmail.com"
];
};
disable-user-extensions = false; # enables user extensions
enabled-extensions = [
# Put UUIDs of extensions that you want to enable here.
# If the extension you want to enable is packaged in nixpkgs,
# you can easily get its UUID by accessing its extensionUuid
# field (look at the following example).
pkgs.gnomeExtensions.dash-to-dock.extensionUuid
# Alternatively, you can manually pass UUID as a string.
# "dash-to-dock@micxgx.gmail.com"
];
};
"org/gnome/shell/extensions/dash-to-dock" = {
"dock-position" = "LEFT";

View file

@ -1,8 +1,12 @@
{ lib, config, pkgs, inputs, ... }:
let
cfg = config.users.leyla;
in
{
lib,
config,
pkgs,
inputs,
...
}: let
cfg = config.users.leyla;
in {
imports = [
../../overlays/intellij.nix
../../overlays/vscodium.nix
@ -70,41 +74,43 @@ in
obsidian
steam
(lib.mkIf cfg.hasGPU davinci-resolve)
# development tools
(vscode-with-extensions.override {
vscode = vscodium;
vscodeExtensions = with open-vsx; [
# vs code feel extensions
ms-vscode.atom-keybindings
akamud.vscode-theme-onedark
streetsidesoftware.code-spell-checker
streetsidesoftware.code-spell-checker-german
streetsidesoftware.code-spell-checker-italian
jeanp413.open-remote-ssh
vscodeExtensions = with open-vsx;
[
# vs code feel extensions
ms-vscode.atom-keybindings
akamud.vscode-theme-onedark
streetsidesoftware.code-spell-checker
streetsidesoftware.code-spell-checker-german
streetsidesoftware.code-spell-checker-italian
jeanp413.open-remote-ssh
# nix extensions
pinage404.nix-extension-pack
jnoortheen.nix-ide
# nix extensions
pinage404.nix-extension-pack
jnoortheen.nix-ide
# html extensions
formulahendry.auto-rename-tag
ms-vscode.live-server
# js extensions
dsznajder.es7-react-js-snippets
dbaeumer.vscode-eslint
standard.vscode-standard
firsttris.vscode-jest-runner
stylelint.vscode-stylelint
tauri-apps.tauri-vscode
# html extensions
formulahendry.auto-rename-tag
ms-vscode.live-server
# misc extensions
bungcip.better-toml
] ++ (with vscode-marketplace; [
# js extensions
karyfoundation.nearley
]);
# js extensions
dsznajder.es7-react-js-snippets
dbaeumer.vscode-eslint
standard.vscode-standard
firsttris.vscode-jest-runner
stylelint.vscode-stylelint
tauri-apps.tauri-vscode
# misc extensions
bungcip.better-toml
]
++ (with vscode-marketplace; [
# js extensions
karyfoundation.nearley
]);
})
androidStudioPackages.canary
jetbrains.idea-community
@ -126,4 +132,4 @@ in
)
]
);
}
}

View file

@ -1,8 +1,7 @@
_:
{
_: {
# mkUnless = condition: then: (mkIf (!condition) then);
# mkIfElse = condition: then: else: lib.mkMerge [
# (mkIf condition then)
# (mkUnless condition else)
# ];
}
}