144 lines
3.7 KiB
Nix
144 lines
3.7 KiB
Nix
{ config, pkgs, ... }:
|
||
|
||
{
|
||
hardware.system76.enableAll = true;
|
||
|
||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||
nixpkgs.config.allowUnfree = true;
|
||
nixpkgs.config.permittedInsecurePackages = [
|
||
"electron-25.9.0"
|
||
];
|
||
|
||
# Bootloader.
|
||
boot.loader.systemd-boot.enable = true;
|
||
boot.loader.systemd-boot.consoleMode = "auto";
|
||
boot.loader.efi.canTouchEfiVariables = true;
|
||
|
||
boot.initrd.systemd.enable = true;
|
||
boot.kernelParams = [ "quiet" ];
|
||
|
||
boot.plymouth.enable = true;
|
||
boot.plymouth.themePackages = with pkgs; [ plymouth-vortex-ubuntu-theme ];
|
||
boot.plymouth.theme = "vortex-ubuntu";
|
||
|
||
# Enable networking
|
||
networking.networkmanager.enable = true;
|
||
|
||
# Set your time zone.
|
||
time.timeZone = "America/New_York";
|
||
|
||
# Select internationalisation properties.
|
||
i18n.defaultLocale = "en_US.UTF-8";
|
||
|
||
i18n.extraLocaleSettings = {
|
||
LC_ADDRESS = "en_US.UTF-8";
|
||
LC_IDENTIFICATION = "en_US.UTF-8";
|
||
LC_MEASUREMENT = "en_US.UTF-8";
|
||
LC_MONETARY = "en_US.UTF-8";
|
||
LC_NAME = "en_US.UTF-8";
|
||
LC_NUMERIC = "en_US.UTF-8";
|
||
LC_PAPER = "en_US.UTF-8";
|
||
LC_TELEPHONE = "en_US.UTF-8";
|
||
LC_TIME = "en_US.UTF-8";
|
||
};
|
||
|
||
# Enable the X11 windowing system.
|
||
services.xserver.enable = true;
|
||
|
||
# Enable the GNOME Desktop Environment.
|
||
services.xserver.displayManager.gdm.enable = true;
|
||
services.xserver.desktopManager.gnome.enable = true;
|
||
|
||
# Configure keymap in X11
|
||
services.xserver.xkb = {
|
||
layout = "us";
|
||
variant = "";
|
||
};
|
||
|
||
# List packages installed in system profile. To search, run:
|
||
environment.systemPackages = with pkgs; [
|
||
cacert
|
||
direnv
|
||
dxvk
|
||
envsubst
|
||
font-manager
|
||
gparted
|
||
mesa
|
||
vulkan-extension-layer
|
||
];
|
||
|
||
# Hardware
|
||
hardware.graphics.enable = true;
|
||
hardware.graphics.enable32Bit = true; # For 32 bit applications
|
||
|
||
hardware.graphics.extraPackages = [
|
||
pkgs.intel-media-driver
|
||
];
|
||
hardware.graphics.extraPackages32 = [
|
||
pkgs.intel-media-driver
|
||
pkgs.pkgsi686Linux.libva
|
||
];
|
||
hardware.pulseaudio.enable = false;
|
||
hardware.bluetooth.enable = true;
|
||
services.blueman.enable = true;
|
||
|
||
# Enable CUPS to print documents.
|
||
services.printing.enable = true;
|
||
|
||
security.rtkit.enable = true;
|
||
services.pipewire = {
|
||
enable = true;
|
||
alsa.enable = true;
|
||
alsa.support32Bit = true;
|
||
pulse.enable = true;
|
||
};
|
||
|
||
# Enable Syncthing
|
||
services.syncthing = {
|
||
enable = true;
|
||
dataDir = "/home/alex";
|
||
openDefaultPorts = true;
|
||
configDir = "/home/alex/.config/syncthing";
|
||
user = "alex";
|
||
group = "users";
|
||
guiAddress = "127.0.0.1:8384";
|
||
settings = {
|
||
overrideDevices = true;
|
||
overrideFolders = true;
|
||
devices = {
|
||
"atauno" = { id = "TXSURD2-XCKOLDG-DJ76OOK-JZXOE3Q-XXTNOIM-XR5LB2B-YWBV2ER-6KRFIQN"; };
|
||
"iphone15" = { id = "2K2CIOJ-KAV5QM6-BOYO6LX-HTK2BHM-4TFFST4-2VMSRBB-ZFML6VT-WOL5NAX"; };
|
||
"nixos76" = { id = "------"; };
|
||
"oneplus8t" = { id = "JIYG5UP-UHTO7KA-FDSIGQV-ON7YJXO-3JDAUNV-V6NJMCH-HWNOPBS-MXHHLAG"; };
|
||
"thelio76" = { id = "PZGASVL-XWQRFHI-MD2YC2I-UAJIR5B-KC34AA7-3BXN322-2IB7AO4-JPYIQAD"; };
|
||
};
|
||
folders = {
|
||
"vaults" = {
|
||
id = "bbqnm-caya2";
|
||
path = "/home/alex/Git/obsidian-vaults";
|
||
devices = [ "atauno" "iphone15" "oneplus8t" ];
|
||
versioning = {
|
||
type = "staggered";
|
||
params = {
|
||
cleanInterval = "3600";
|
||
maxAge = "15768000";
|
||
};
|
||
};
|
||
};
|
||
};
|
||
};
|
||
};
|
||
|
||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||
users.users.alex = {
|
||
isNormalUser = true;
|
||
description = "Alex";
|
||
extraGroups = [
|
||
"networkmanager"
|
||
"wheel"
|
||
"libvirtd" # for qemu vms
|
||
"plugdev" # for android adb
|
||
];
|
||
};
|
||
}
|