This commit is contained in:
k 2024-10-19 15:44:00 +00:00
commit d5c6104c59
13 changed files with 307 additions and 194 deletions

143
flake.lock generated
View File

@ -34,30 +34,14 @@
"type": "github"
}
},
"base16-foot": {
"flake": false,
"locked": {
"lastModified": 1696725948,
"narHash": "sha256-65bz2bUL/yzZ1c8/GQASnoiGwaF8DczlxJtzik1c0AU=",
"owner": "tinted-theming",
"repo": "base16-foot",
"rev": "eedbcfa30de0a4baa03e99f5e3ceb5535c2755ce",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-foot",
"type": "github"
}
},
"base16-helix": {
"flake": false,
"locked": {
"lastModified": 1720809814,
"narHash": "sha256-numb3xigRGnr/deF7wdjBwVg7fpbTH7reFDkJ75AJkY=",
"lastModified": 1725860795,
"narHash": "sha256-Z2o8VBPW3I+KKTSfe25kskz0EUj7MpUh8u355Z1nVsU=",
"owner": "tinted-theming",
"repo": "base16-helix",
"rev": "34f41987bec14c0f3f6b2155c19787b1f6489625",
"rev": "7f795bf75d38e0eea9fed287264067ca187b88a9",
"type": "github"
},
"original": {
@ -66,38 +50,6 @@
"type": "github"
}
},
"base16-kitty": {
"flake": false,
"locked": {
"lastModified": 1665001328,
"narHash": "sha256-aRaizTYPpuWEcvoYE9U+YRX+Wsc8+iG0guQJbvxEdJY=",
"owner": "kdrag0n",
"repo": "base16-kitty",
"rev": "06bb401fa9a0ffb84365905ffbb959ae5bf40805",
"type": "github"
},
"original": {
"owner": "kdrag0n",
"repo": "base16-kitty",
"type": "github"
}
},
"base16-tmux": {
"flake": false,
"locked": {
"lastModified": 1696725902,
"narHash": "sha256-wDPg5elZPcQpu7Df0lI5O8Jv4A3T6jUQIVg63KDU+3Q=",
"owner": "tinted-theming",
"repo": "base16-tmux",
"rev": "c02050bebb60dbb20cb433cd4d8ce668ecc11ba7",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-tmux",
"type": "github"
}
},
"base16-vim": {
"flake": false,
"locked": {
@ -191,11 +143,11 @@
]
},
"locked": {
"lastModified": 1726611255,
"narHash": "sha256-/bxaYvIK6/d3zqpW26QFS0rqfd0cO4qreSNWvYLTl/w=",
"lastModified": 1729027341,
"narHash": "sha256-IqWD7bA9iJVifvJlB4vs2KUXVhN+d9lECWdNB4jJ0tE=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "d2493de5cd1da06b6a4c3e97f4e7d5dd791df457",
"rev": "2a4fd1cfd8ed5648583dadef86966a8231024221",
"type": "github"
},
"original": {
@ -227,11 +179,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1726650330,
"narHash": "sha256-UbHzmaOQ18O/kCizipU70N0UQVFIfv8AiFKXw07oZ9Y=",
"lastModified": 1728729581,
"narHash": "sha256-oazkQ/z7r43YkDLLQdMg8oIB3CwWNb+2ZrYOxtLEWTQ=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "abb448608a56a60075468e90d8acec2a7cb689b1",
"rev": "a8dd1b21995964b115b1e3ec639dd6ce24ab9806",
"type": "github"
},
"original": {
@ -243,18 +195,14 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1726463316,
"lastModified": 0,
"narHash": "sha256-gI9kkaH0ZjakJOKrdjaI/VbaMEo9qBbSUl93DnU7f4c=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "99dc8785f6a0adac95f5e2ab05cc2e1bf666d172",
"type": "github"
"path": "/nix/store/cjz8w4dgc3rd2n3dqv5c208vygndjyba-source",
"type": "path"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
"id": "nixpkgs",
"type": "indirect"
}
},
"nixpkgs_2": {
@ -285,24 +233,24 @@
"inputs": {
"base16": "base16",
"base16-fish": "base16-fish",
"base16-foot": "base16-foot",
"base16-helix": "base16-helix",
"base16-kitty": "base16-kitty",
"base16-tmux": "base16-tmux",
"base16-vim": "base16-vim",
"flake-compat": "flake-compat",
"flake-utils": "flake-utils",
"gnome-shell": "gnome-shell",
"home-manager": "home-manager_2",
"nixpkgs": "nixpkgs_2",
"systems": "systems"
"systems": "systems",
"tinted-foot": "tinted-foot",
"tinted-kitty": "tinted-kitty",
"tinted-tmux": "tinted-tmux"
},
"locked": {
"lastModified": 1726497442,
"narHash": "sha256-fieyqmLEJQqqnuJcg2CAnQ8kHapXHhg9rL48NNWjnPw=",
"lastModified": 1728900372,
"narHash": "sha256-hmG/u7qZEm7CTh1XPDi+pg4Oi0nNrv7sL8PgZDRe6wg=",
"owner": "danth",
"repo": "stylix",
"rev": "149b313ddf91c3cc94309170498b162cec666675",
"rev": "33a2eff15181e557bb6dd9d2073b90f7d218975d",
"type": "github"
},
"original": {
@ -325,6 +273,55 @@
"repo": "default",
"type": "github"
}
},
"tinted-foot": {
"flake": false,
"locked": {
"lastModified": 1696725948,
"narHash": "sha256-65bz2bUL/yzZ1c8/GQASnoiGwaF8DczlxJtzik1c0AU=",
"owner": "tinted-theming",
"repo": "tinted-foot",
"rev": "eedbcfa30de0a4baa03e99f5e3ceb5535c2755ce",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "tinted-foot",
"type": "github"
}
},
"tinted-kitty": {
"flake": false,
"locked": {
"lastModified": 1716423189,
"narHash": "sha256-2xF3sH7UIwegn+2gKzMpFi3pk5DlIlM18+vj17Uf82U=",
"owner": "tinted-theming",
"repo": "tinted-kitty",
"rev": "eb39e141db14baef052893285df9f266df041ff8",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "tinted-kitty",
"rev": "eb39e141db14baef052893285df9f266df041ff8",
"type": "github"
}
},
"tinted-tmux": {
"flake": false,
"locked": {
"lastModified": 1696725902,
"narHash": "sha256-wDPg5elZPcQpu7Df0lI5O8Jv4A3T6jUQIVg63KDU+3Q=",
"owner": "tinted-theming",
"repo": "tinted-tmux",
"rev": "c02050bebb60dbb20cb433cd4d8ce668ecc11ba7",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "tinted-tmux",
"type": "github"
}
}
},
"root": "root",

View File

@ -2,7 +2,6 @@
description = "Nixos config flake";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
stylix.url = "github:danth/stylix";
@ -13,40 +12,39 @@
};
outputs = { self, nixpkgs, nixos-hardware, ... }@inputs:
let
system = "x86_64-linux";
pkg = nixpkgs.legacyPackages.${system};
in
{
nixosConfigurations = {
laptop = nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs;};
modules = [
./hosts/laptop/configuration.nix
inputs.home-manager.nixosModules.default
inputs.stylix.nixosModules.stylix
nixos-hardware.nixosModules.lenovo-thinkpad-x13-yoga
];
};
let
system = "x86_64-linux";
pkg = nixpkgs.legacyPackages.${system};
in {
nixosConfigurations = {
laptop = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; };
modules = [
./hosts/laptop/configuration.nix
inputs.home-manager.nixosModules.default
inputs.stylix.nixosModules.stylix
nixos-hardware.nixosModules.lenovo-thinkpad-x13-yoga
];
};
server = nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs;};
modules = [
./hosts/server/configuration.nix
inputs.home-manager.nixosModules.default
nixos-hardware.nixosModules.system76
];
};
server = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; };
modules = [
./hosts/server/configuration.nix
inputs.home-manager.nixosModules.default
nixos-hardware.nixosModules.system76
];
};
tablet = nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs;};
modules = [
./hosts/tablet/configuration.nix
inputs.home-manager.nixosModules.default
nixos-hardware.nixosModules.microsoft-surface-pro-intel
];
};
tablet = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; };
modules = [
./hosts/tablet/configuration.nix
inputs.home-manager.nixosModules.default
nixos-hardware.nixosModules.microsoft-surface-pro-intel
];
};
};
};
};
};
}

View File

@ -10,8 +10,8 @@
# `gnome-extensions list` for a list
enabled-extensions = [
"Vitals@CoreCoding.com"
"blur-my-shell@aunetx"
"search-light@icedman.github.com"
"blur-my-shell@aunetx"
"search-light@icedman.github.com"
];
};
};

View File

@ -13,6 +13,7 @@
userName = "k";
userEmail = "markers711@gmail.com";
};
tmux = { enable = true; };
starship.enable = true;
zsh = {
enable = true;

37
hosts/home/sway.nix Normal file
View File

@ -0,0 +1,37 @@
{ config, pkgs, inputs, ... }:
{
imports = [ ./waybar.nix ./tile.nix ];
wayland.windowManager.sway = {
enable = true;
config = {
modifier = "Mod4";
floating.border = 0;
window.border = 1;
window.titlebar = false;
terminal = "${pkgs.alacritty}/bin/alacritty";
menu = "${pkgs.wofi}/bin/wofi -show drun -modi drun";
bars = [];
gaps = {
inner = 10;
outer = 5;
};
};
};
home.sessionVariables = {
MOZ_ENABLE_WAYLAND = "1";
MOZ_USE_XINPUT2 = "1";
XDG_SESSION_TYPE = "wayland";
SDL_VIDEODRIVER = "wayland";
QT_QPA_PLATFORM = "wayland";
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
_JAVA_AWT_WM_NONREPARENTING = 1;
};
services = {
swayidle = { enable = true; };
};
}

16
hosts/home/tile.nix Normal file
View File

@ -0,0 +1,16 @@
{ config, pkgs, inputs, ... }:
{
services = {
mako = { enable = true; };
};
programs = {
mako = { enable = true; };
alacritty = { enable = true; };
swaylock = {enable = true;};
wofi = { enable = true; };
};
}

73
hosts/home/waybar.nix Normal file
View File

@ -0,0 +1,73 @@
{ config, pkgs, ... }: {
programs.waybar = {
enable = true;
systemd.enable = true;
settings = {
mainBar = {
layer = "bottom";
position = "bottom";
output = [ "eDP-1" ];
modules-left = [ "sway/workspaces" "sway/mode" ];
modules-center = [ "clock" ];
modules-right = [ "pulseaudio" "network" "battery" ];
cpu = {
interval = 15;
format = " {}%";
max-length = 15;
};
memory = {
interval = 30;
format = " {}%";
max-length = 15;
};
"pulseaudio" = {
format = "{volume}% {icon}";
format-bluetooth = "{volume}% {icon}";
format-muted = "";
format-icons = {
headphone = "";
hands-free = "";
headset = "";
phone = "";
portable = "";
car = "";
default = [ "" "" ];
};
scroll-step = 1;
on-click = "pavucontrol";
};
backlight = {
tooltip = false;
format = " {}%";
interval = 1;
on-scroll-up = "brightnessctl s 1515";
on-scroll-down = "brightnessctl s 1";
};
network = {
format = "{ifname}";
format-wifi = "{essid} ({signalStrength}%) ";
format-ethernet = "{ipaddr}/{cidr} 󰊗";
format-disconnected = "󰤮";
tooltip-format = "{ifname} via {gwaddr} 󰊗";
tooltip-format-wifi = "{essid} ({signalStrength}%) ";
tooltip-format-ethernet = "{ifname} ";
tooltip-format-disconnected = "Disconnected";
max-length = 50;
};
battery = {
format = "{capacity}% {icon}";
"format-icons" = [ "" "" "" "" "" ];
};
clock = { "format-alt" = "{:%a, %d. %b %H:%M}"; };
};
};
};
}

View File

@ -7,6 +7,8 @@
system.autoUpgrade.enable = true;
time.timeZone = "America/New_York";
security.rtkit.enable = true;
security.polkit.enable = true;
security.pam.services.swaylock = {};
powerManagement.enable = true;
nix = {
@ -56,13 +58,16 @@
stylix = {
enable = true;
polarity = "light";
autoEnable = true;
polarity = "dark";
image = ./wallpaper.png;
base16Scheme = "${pkgs.base16-schemes}/share/themes/brushtrees.yaml";
base16Scheme = "${pkgs.base16-schemes}/share/themes/everforest.yaml";
opacity = {
terminal = .85;
popups = .75;
terminal = 0.85;
popups = 0.75;
desktop = 0.75;
};
cursor = {
package = pkgs.adwaita-icon-theme;
name = "Adwaita";

View File

@ -1,15 +1,10 @@
{ config, pkgs, inputs, ... }:
{
imports = [
../home/home_common.nix
../home/gnome.nix
];
stylix.enable = true;
imports = [ ../home/home_common.nix ../home/gnome.nix ../home/sway.nix ];
nixpkgs.config.allowUnfree = true;
home = {
packages = with pkgs; [
nerdfonts
@ -21,12 +16,15 @@
btop
zip
spotify
spicetify-cli
distrobox
modrinth-app
direnv
emacs
syncthing
texliveFull
ispell
];
};
@ -46,4 +44,9 @@
defaultEditor = true;
};
};
stylix = {
enable = true;
autoEnable = true;
};
}

View File

@ -27,24 +27,20 @@
home-manager = { users = { "k" = import ./home.nix; }; };
environment.systemPackages = with pkgs; [
microcodeIntel
];
environment.systemPackages = with pkgs; [ microcodeIntel ];
hardware.opengl = {
enable = true;
extraPackages = with pkgs; [
intel-compute-runtime
intel-media-driver
vaapiIntel
vaapiVdpau
libvdpau-va-gl
vpl-gpu-rt
];
enable = true;
extraPackages = with pkgs; [
intel-compute-runtime
intel-media-driver
vaapiIntel
vaapiVdpau
libvdpau-va-gl
vpl-gpu-rt
];
};
services.xserver.videoDrivers = ["intel"];
services.xserver.videoDrivers = [ "intel" ];
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions

View File

@ -5,14 +5,12 @@
{ config, pkgs, inputs, nixos-hardware, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
];
nix.settings.experimental-features = ["nix-command" "flakes"];
imports = [ # Include the results of the hardware scan.
./hardware-configuration.nix
];
nix.settings.experimental-features = [ "nix-command" "flakes" ];
nixpkgs.config.allowUnfree = true;
networking.networkmanager.enable = true;
# Set your time zone.
@ -33,19 +31,18 @@
LC_TIME = "en_US.UTF-8";
};
# Enable the X11 windowing system.
#services.xserver.enable = true;
# Enable the GNOME Desktop Environment.
services.xserver.desktopManager.phosh = {
enable = true;
group = "";
user = "k";
phocConfig.xwayland = "immediate";
};
# Enable CUPS to print documents.
enable = true;
group = "";
user = "k";
phocConfig.xwayland = "immediate";
};
# Enable CUPS to print documents.
services.printing.enable = true;
services.auto-cpufreq.enable = true;
services.thermald.enable = true;
@ -63,38 +60,33 @@
pulse.enable = true;
jack.enable = true;
};
# Enable touchpad support (enabled default in most desktopManager).
# Enable touchpad support (enabled default in most desktopManager).
# services.xserver.libinput.enable = true;
# Define a user account. Don't forget to set a password with passwd.
programs.zsh.enable = true;
programs.zsh.enable = true;
users.users.k = {
isNormalUser = true;
description = "k";
extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; [zsh];
packages = with pkgs; [ zsh ];
shell = pkgs.zsh;
};
home-manager = {
users = {
"k" = import ./home.nix;
};
};
home-manager = { users = { "k" = import ./home.nix; }; };
system.autoUpgrade.enable = true;
nix.gc.automatic = true;
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = with pkgs; [
intel-vaapi-driver
intel-compute-runtime
intel-media-driver
microcodeIntel
gnome-console
neovim
intel-vaapi-driver
intel-compute-runtime
intel-media-driver
microcodeIntel
gnome-console
neovim
];
boot.kernelModules = [ "soc_button_array" ];

View File

@ -4,11 +4,10 @@
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" ];
boot.initrd.availableKernelModules =
[ "xhci_pci" "nvme" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
@ -20,21 +19,18 @@
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
fileSystems."/" = {
device = "/dev/disk/by-uuid/479b497e-7807-48e4-82e6-d6468549a281";
fsType = "ext4";
};
fileSystems."/" =
{ device = "/dev/disk/by-uuid/479b497e-7807-48e4-82e6-d6468549a281";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/DACA-E1BC";
fsType = "vfat";
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/DACA-E1BC";
fsType = "vfat";
};
swapDevices =
[ { device = "/dev/disk/by-uuid/19941c01-ac8c-4609-a834-20259f3ee32e"; }
];
[{ device = "/dev/disk/by-uuid/19941c01-ac8c-4609-a834-20259f3ee32e"; }];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
@ -44,5 +40,6 @@
# networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
hardware.cpu.intel.updateMicrocode =
lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -25,17 +25,15 @@
enableCompletion = true;
syntaxHighlighting.enable = true;
autocd = true;
plugins = [
{
name = "zsh-nix-shell";
file = "nix-shell.plugin.zsh";
src = pkgs.fetchFromGitHub {
owner = "chisui";
repo = "zsh-nix-shell";
rev = "v0.8.0";
sha256 = "1lzrn0n4fxfcgg65v0qhnj7wnybybqzs4adz7xsrkgmcsr0ii8b7";
};
}
];
plugins = [{
name = "zsh-nix-shell";
file = "nix-shell.plugin.zsh";
src = pkgs.fetchFromGitHub {
owner = "chisui";
repo = "zsh-nix-shell";
rev = "v0.8.0";
sha256 = "1lzrn0n4fxfcgg65v0qhnj7wnybybqzs4adz7xsrkgmcsr0ii8b7";
};
}];
};
}