init commit, ly, i3, polybar, neovim, alacritty, NixOS Flakes + Home-Manager
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.kernelPackages = pkgs.linuxPackages;
|
||||
environment.pathsToLink = [ "/libexec" ];
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./boot.nix
|
||||
./env.nix
|
||||
./locale.nix
|
||||
./power.nix
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
environment.shells = with pkgs; [ zsh ];
|
||||
users.defaultUserShell = pkgs.zsh;
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
nerd-fonts.hack
|
||||
];
|
||||
|
||||
nix.settings = {
|
||||
experimental-features = [ "nix-command" "flakes" ];
|
||||
};
|
||||
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
autosuggestions.enable = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
|
||||
histSize = 1000000;
|
||||
|
||||
setOptions = [
|
||||
"HIST_IGNORE_ALL_DUPS"
|
||||
];
|
||||
|
||||
shellAliases = {
|
||||
enix = "nvim $HOME/.dotfiles/flake.nix";
|
||||
unix = "sudo nixos-rebuild switch --flake $HOME/.dotfiles#thinkpad";
|
||||
ehome = "nvim $HOME/.dotfiles/home/jashton.nix";
|
||||
l = "ls -la";
|
||||
};
|
||||
|
||||
ohMyZsh = {
|
||||
enable = true;
|
||||
theme = "aussiegeek";
|
||||
plugins = [
|
||||
"git"
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
time.timeZone = "America/Denver";
|
||||
i18n = {
|
||||
defaultLocale = "en_US.UTF-8";
|
||||
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";
|
||||
LC_CTYPE = "en_US.UTF-8";
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
boot.kernelParams = [ "mem_sleep_default=deep" ];
|
||||
|
||||
services.power-profiles-daemon.enable = false;
|
||||
|
||||
services.tlp = {
|
||||
enable = true;
|
||||
settings = {
|
||||
USB_AUTOSUSPEND = 0;
|
||||
|
||||
# AC
|
||||
CPU_SCALING_GOVERNOR_ON_AC = "performance";
|
||||
CPU_ENERGY_PERF_POLICY_ON_AC = "performance";
|
||||
SOUND_POWER_SAVE_ON_AC = 0;
|
||||
PCIE_ASPM_ON_AC = "default";
|
||||
CPU_BOOST_ON_BAT = 0;
|
||||
|
||||
# Battery
|
||||
CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
|
||||
CPU_ENERGY_PERF_POLICY_ON_BAT = "power";
|
||||
SOUND_POWER_SAVE_ON_BAT = 1;
|
||||
PCIE_ASPM_ON_BAT = "powersupersave";
|
||||
CPU_BOOST_ON_AC = 1;
|
||||
|
||||
# Battery Thresholds
|
||||
START_CHARGE_THRESH_BAT0 = 40;
|
||||
STOP_CHARGE_THRESH_BAT0 = 80;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./packages.nix
|
||||
./core
|
||||
./network
|
||||
./security
|
||||
./services
|
||||
./virtualisation
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
networking = {
|
||||
networkmanager.enable = true;
|
||||
|
||||
firewall = {
|
||||
enable = true;
|
||||
allowedTCPPorts = [];
|
||||
allowedUDPPorts = [];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
acpi
|
||||
alacritty
|
||||
btop
|
||||
dconf
|
||||
dunst
|
||||
fastfetch
|
||||
firefox
|
||||
git
|
||||
github-cli
|
||||
gnome-keyring
|
||||
google-chrome
|
||||
libnotify
|
||||
mypy
|
||||
networkmanagerapplet
|
||||
nitrogen
|
||||
pasystray
|
||||
picom
|
||||
polkit_gnome
|
||||
pulseaudioFull
|
||||
tldr
|
||||
tmux
|
||||
unrar
|
||||
unzip
|
||||
vim
|
||||
wget
|
||||
xclip
|
||||
];
|
||||
|
||||
programs.firefox.enable = true;
|
||||
programs.thunar.enable = true;
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./sudo.nix
|
||||
./systemd.nix
|
||||
./users.nix
|
||||
];
|
||||
|
||||
security = {
|
||||
polkit.enable = true;
|
||||
rtkit.enable = true;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
security.sudo.extraRules = [
|
||||
{
|
||||
users = [ "jashton" ];
|
||||
|
||||
commands = [
|
||||
{
|
||||
command = "/run/current-system/sw/bin/tlp";
|
||||
options = [ "NOPASSWD" ];
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
systemd = {
|
||||
user.services.polkit-gnome-authentication-agent-1 = {
|
||||
description = "polkit-gnome-authentication-agent-1";
|
||||
wantedBy = [ "graphical-session.target" ];
|
||||
wants = [ "graphics-session.target" ];
|
||||
after = [ "graphics-session.target" ];
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
|
||||
Restart = "on-failure";
|
||||
RestartSec = 1;
|
||||
TimeoutStopSec = 10;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
services.fprintd = {
|
||||
enable = true;
|
||||
#tod.enable = true;
|
||||
#tod.driver = pkgs.libfprint-2-tod1-goodix;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
users.groups.jashton = {};
|
||||
users.users.jashton = {
|
||||
isNormalUser = true;
|
||||
description = "Josh Ashton";
|
||||
group = "jashton";
|
||||
extraGroups = [ "networkmanager" "wheel" ];
|
||||
|
||||
shell = pkgs.zsh;
|
||||
};
|
||||
|
||||
users.users.root = {
|
||||
shell = pkgs.zsh;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
services = {
|
||||
displayManager = {
|
||||
ly.enable = true;
|
||||
};
|
||||
|
||||
xserver = {
|
||||
enable = true;
|
||||
|
||||
xkb = {
|
||||
variant = "";
|
||||
layout = "us";
|
||||
};
|
||||
|
||||
windowManager.i3 = {
|
||||
enable = true;
|
||||
extraPackages = with pkgs; [
|
||||
brightnessctl
|
||||
dmenu
|
||||
i3lock-color
|
||||
playerctl
|
||||
rofi
|
||||
xautolock
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
picom = {
|
||||
enable = true;
|
||||
backend = "glx";
|
||||
vSync = true;
|
||||
};
|
||||
|
||||
|
||||
libinput = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
openssh = {
|
||||
enable = false;
|
||||
};
|
||||
|
||||
printing.enable = true;
|
||||
gvfs.enable = true;
|
||||
gnome.gnome-keyring.enable = true;
|
||||
blueman.enable = true;
|
||||
pipewire = {
|
||||
enable = true;
|
||||
alsa = {
|
||||
enable = true;
|
||||
support32Bit = true;
|
||||
};
|
||||
pulse.enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
virtualisation = {
|
||||
podman = {
|
||||
enable = true;
|
||||
dockerCompat = true;
|
||||
};
|
||||
|
||||
virtualbox.host.enable = true;
|
||||
libvirtd.enable = true;
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user