added nix formatting
This commit is contained in:
469
common.nix
469
common.nix
@@ -1,267 +1,266 @@
|
|||||||
{ config, lib, pkgs, inputs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
imports = [
|
||||||
[
|
/etc/nixos/hardware-configuration.nix
|
||||||
/etc/nixos/hardware-configuration.nix
|
inputs.walker.nixosModules.default
|
||||||
inputs.walker.nixosModules.default
|
];
|
||||||
];
|
|
||||||
|
|
||||||
# Allow Nix command and flakes (ofc)
|
# Allow Nix command and flakes (ofc)
|
||||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
nix.settings.experimental-features = [
|
||||||
|
"nix-command"
|
||||||
|
"flakes"
|
||||||
|
];
|
||||||
|
|
||||||
# Allow unfree packages
|
# Allow unfree packages
|
||||||
nixpkgs = {
|
nixpkgs = {
|
||||||
config = {
|
config = {
|
||||||
allowUnfree = true;
|
allowUnfree = true;
|
||||||
packageOverrides = pkgs: {
|
packageOverrides = pkgs: {
|
||||||
unstable = import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/nixos-unstable.tar.gz") {};
|
unstable =
|
||||||
};
|
import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/nixos-unstable.tar.gz")
|
||||||
};
|
{ };
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
# Boot
|
# Boot
|
||||||
boot = {
|
boot = {
|
||||||
loader = {
|
loader = {
|
||||||
timeout = 2;
|
timeout = 2;
|
||||||
efi = {
|
efi = {
|
||||||
canTouchEfiVariables = true;
|
canTouchEfiVariables = true;
|
||||||
};
|
};
|
||||||
grub = {
|
grub = {
|
||||||
efiSupport = true;
|
efiSupport = true;
|
||||||
device = "nodev";
|
device = "nodev";
|
||||||
theme = pkgs.catppuccin-grub;
|
theme = pkgs.catppuccin-grub;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
plymouth = {
|
plymouth = {
|
||||||
enable = true;
|
enable = true;
|
||||||
theme = "catppuccin-mocha";
|
theme = "catppuccin-mocha";
|
||||||
themePackages = with pkgs; [
|
themePackages = with pkgs; [
|
||||||
# By default we would install all themes
|
# By default we would install all themes
|
||||||
(catppuccin-plymouth.override {
|
(catppuccin-plymouth.override {
|
||||||
variant = "mocha";
|
variant = "mocha";
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Use latest kernel.
|
# Use latest kernel.
|
||||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||||
|
|
||||||
# Networking settings
|
networking.networkmanager.enable = true;
|
||||||
# networking.hostName = "mobile02"; # Define your hostname.
|
|
||||||
networking.networkmanager.enable = true;
|
|
||||||
|
|
||||||
# Enable bluetooth
|
# Enable bluetooth
|
||||||
hardware.bluetooth.enable = true;
|
hardware.bluetooth.enable = true;
|
||||||
|
|
||||||
# # Opengl and vulkan
|
# Set your time zone.
|
||||||
# hardware.graphics = {
|
time.timeZone = "Europe/London";
|
||||||
# enable = true;
|
|
||||||
# extraPackages = with pkgs; [
|
|
||||||
# intel-vaapi-driver
|
|
||||||
# libva-vdpau-driver
|
|
||||||
# ];
|
|
||||||
# };
|
|
||||||
|
|
||||||
# Set your time zone.
|
# Locale
|
||||||
time.timeZone = "Europe/London";
|
i18n.defaultLocale = "en_GB.UTF-8";
|
||||||
|
i18n.extraLocaleSettings = {
|
||||||
|
LC_ADDRESS = "en_GB.UTF-8";
|
||||||
|
LC_IDENTIFICATION = "en_GB.UTF-8";
|
||||||
|
LC_MEASUREMENT = "en_GB.UTF-8";
|
||||||
|
LC_MONETARY = "en_GB.UTF-8";
|
||||||
|
LC_NAME = "en_GB.UTF-8";
|
||||||
|
LC_NUMERIC = "en_GB.UTF-8";
|
||||||
|
LC_PAPER = "en_GB.UTF-8";
|
||||||
|
LC_TELEPHONE = "en_GB.UTF-8";
|
||||||
|
LC_TIME = "en_GB.UTF-8";
|
||||||
|
};
|
||||||
|
|
||||||
# Locale
|
# Windowing Systems
|
||||||
i18n.defaultLocale = "en_GB.UTF-8";
|
services.xserver.enable = true;
|
||||||
i18n.extraLocaleSettings = {
|
|
||||||
LC_ADDRESS = "en_GB.UTF-8";
|
|
||||||
LC_IDENTIFICATION = "en_GB.UTF-8";
|
|
||||||
LC_MEASUREMENT = "en_GB.UTF-8";
|
|
||||||
LC_MONETARY = "en_GB.UTF-8";
|
|
||||||
LC_NAME = "en_GB.UTF-8";
|
|
||||||
LC_NUMERIC = "en_GB.UTF-8";
|
|
||||||
LC_PAPER = "en_GB.UTF-8";
|
|
||||||
LC_TELEPHONE = "en_GB.UTF-8";
|
|
||||||
LC_TIME = "en_GB.UTF-8";
|
|
||||||
};
|
|
||||||
|
|
||||||
# Windowing Systems
|
programs.hyprland.enable = true;
|
||||||
services.xserver.enable = true;
|
security.polkit.enable = true;
|
||||||
|
|
||||||
# services.displayManager.sddm = {
|
# Keymap
|
||||||
# enable = true;
|
services.xserver.xkb = {
|
||||||
# theme = "catppuccin-mocha-mauve";
|
layout = "gb";
|
||||||
# package = pkgs.kdePackages.sddm;
|
variant = "";
|
||||||
# };
|
};
|
||||||
|
console.keyMap = "uk";
|
||||||
|
|
||||||
programs.hyprland.enable = true;
|
# Pipewire
|
||||||
security.polkit.enable = true;
|
services.pulseaudio.enable = false;
|
||||||
|
security.rtkit.enable = true;
|
||||||
|
services.pipewire = {
|
||||||
|
enable = true;
|
||||||
|
alsa.enable = true;
|
||||||
|
alsa.support32Bit = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
# Keymap
|
# Local User
|
||||||
services.xserver.xkb = {
|
users.users.user01 = {
|
||||||
layout = "gb";
|
isNormalUser = true;
|
||||||
variant = "";
|
shell = pkgs.zsh;
|
||||||
};
|
description = "user01";
|
||||||
console.keyMap = "uk";
|
extraGroups = [
|
||||||
|
"input"
|
||||||
|
"bluetooth"
|
||||||
|
"networkmanager"
|
||||||
|
"docker"
|
||||||
|
"wheel"
|
||||||
|
];
|
||||||
|
packages = with pkgs; [
|
||||||
|
# Ricing
|
||||||
|
bibata-cursors
|
||||||
|
catppuccin-gtk
|
||||||
|
# inputs.way-edges.packages.${pkgs.system}.way-edges
|
||||||
|
waybar
|
||||||
|
hyprlock
|
||||||
|
swaynotificationcenter
|
||||||
|
inputs.chataigne.packages.${pkgs.system}.chataigne
|
||||||
|
wlogout
|
||||||
|
wpaperd
|
||||||
|
kando
|
||||||
|
oh-my-posh
|
||||||
|
grimblast
|
||||||
|
|
||||||
# Pipewire
|
# Terminal
|
||||||
services.pulseaudio.enable = false;
|
carapace
|
||||||
security.rtkit.enable = true;
|
kitty
|
||||||
services.pipewire = {
|
github-cli
|
||||||
enable = true;
|
# light
|
||||||
alsa.enable = true;
|
bluetuith
|
||||||
alsa.support32Bit = true;
|
wget
|
||||||
pulse.enable = true;
|
playerctl
|
||||||
};
|
git
|
||||||
|
fastfetch
|
||||||
|
lsd
|
||||||
|
inputs.doot.packages.${pkgs.system}.default
|
||||||
|
stow
|
||||||
|
fzf
|
||||||
|
ripgrep
|
||||||
|
zsh-autocomplete
|
||||||
|
nodejs
|
||||||
|
lazygit
|
||||||
|
tailscale
|
||||||
|
|
||||||
# Local User
|
# Thunar stuff
|
||||||
users.users.user01 = {
|
xfce.thunar
|
||||||
isNormalUser = true;
|
xfce.thunar-volman
|
||||||
shell = pkgs.zsh;
|
xfce.thunar-vcs-plugin
|
||||||
description = "user01";
|
xfce.thunar-archive-plugin
|
||||||
extraGroups = [ "input" "bluetooth" "networkmanager" "docker" "wheel" ];
|
|
||||||
packages = with pkgs; [
|
|
||||||
# Ricing
|
|
||||||
bibata-cursors
|
|
||||||
catppuccin-gtk
|
|
||||||
# inputs.way-edges.packages.${pkgs.system}.way-edges
|
|
||||||
waybar
|
|
||||||
hyprlock
|
|
||||||
swaynotificationcenter
|
|
||||||
inputs.chataigne.packages.${pkgs.system}.chataigne
|
|
||||||
wlogout
|
|
||||||
wpaperd
|
|
||||||
kando
|
|
||||||
oh-my-posh
|
|
||||||
grimblast
|
|
||||||
|
|
||||||
# Terminal
|
# Apps
|
||||||
carapace
|
pavucontrol
|
||||||
kitty
|
firefox
|
||||||
github-cli
|
tor-browser
|
||||||
# light
|
gotify-desktop
|
||||||
bluetuith
|
techmino
|
||||||
wget
|
mpv
|
||||||
playerctl
|
prismlauncher
|
||||||
git
|
delfin
|
||||||
fastfetch
|
libreoffice-qt6
|
||||||
lsd
|
syncthing
|
||||||
inputs.doot.packages.${pkgs.system}.default
|
xremap
|
||||||
stow
|
blueman
|
||||||
fzf
|
];
|
||||||
ripgrep
|
};
|
||||||
zsh-autocomplete
|
|
||||||
nodejs
|
|
||||||
lazygit
|
|
||||||
tailscale
|
|
||||||
|
|
||||||
# Thunar stuff
|
# Zsh
|
||||||
xfce.thunar
|
programs.zsh = {
|
||||||
xfce.thunar-volman
|
enable = true;
|
||||||
xfce.thunar-vcs-plugin
|
enableCompletion = true;
|
||||||
xfce.thunar-archive-plugin
|
enableBashCompletion = true;
|
||||||
|
autosuggestions.enable = true;
|
||||||
|
syntaxHighlighting.enable = true;
|
||||||
|
histSize = 10000;
|
||||||
|
ohMyZsh = {
|
||||||
|
enable = true;
|
||||||
|
plugins = [
|
||||||
|
"git"
|
||||||
|
"dirhistory"
|
||||||
|
"history"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
# Apps
|
# User programs
|
||||||
pavucontrol
|
programs.steam.enable = true;
|
||||||
firefox
|
programs.walker.enable = true;
|
||||||
tor-browser
|
|
||||||
gotify-desktop
|
|
||||||
techmino
|
|
||||||
mpv
|
|
||||||
prismlauncher
|
|
||||||
delfin
|
|
||||||
libreoffice-qt6
|
|
||||||
syncthing
|
|
||||||
xremap
|
|
||||||
blueman
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
# Zsh
|
# User Services
|
||||||
programs.zsh = {
|
services.gvfs.enable = true;
|
||||||
enable = true;
|
services.tailscale.enable = true;
|
||||||
enableCompletion = true;
|
services.printing.enable = true;
|
||||||
enableBashCompletion = true;
|
services.upower.enable = true;
|
||||||
autosuggestions.enable = true;
|
services.openssh.enable = true;
|
||||||
syntaxHighlighting.enable = true;
|
services.elephant.enable = true;
|
||||||
histSize = 10000;
|
|
||||||
ohMyZsh = {
|
|
||||||
enable = true;
|
|
||||||
plugins = [ "git" "dirhistory" "history" ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# User programs
|
# Fonts
|
||||||
programs.steam.enable = true;
|
fonts.packages = with pkgs; [
|
||||||
programs.walker.enable = true;
|
nerd-fonts.fira-mono
|
||||||
|
];
|
||||||
|
|
||||||
# User Services
|
fonts.fontconfig.defaultFonts.serif = [ "Fira Mono Nerd Font" ];
|
||||||
services.gvfs.enable = true;
|
environment.systemPackages = with pkgs; [
|
||||||
services.tailscale.enable = true;
|
|
||||||
services.printing.enable = true;
|
|
||||||
services.upower.enable = true;
|
|
||||||
services.openssh.enable = true;
|
|
||||||
services.elephant.enable = true;
|
|
||||||
|
|
||||||
# Fonts
|
(pkgs.symlinkJoin {
|
||||||
fonts.packages = with pkgs; [
|
name = "nvim-with-lsp";
|
||||||
nerd-fonts.fira-mono
|
paths = [ pkgs.neovim ];
|
||||||
];
|
buildInputs = [ pkgs.makeWrapper ];
|
||||||
|
postBuild = ''
|
||||||
|
wrapProgram $out/bin/nvim \
|
||||||
|
--prefix PATH : ${
|
||||||
|
pkgs.lib.makeBinPath [
|
||||||
|
pkgs.lua-language-server
|
||||||
|
pkgs.vscode-langservers-extracted
|
||||||
|
pkgs.emmet-ls
|
||||||
|
pkgs.prettier
|
||||||
|
pkgs.black
|
||||||
|
pkgs.nixfmt
|
||||||
|
pkgs.ripgrep
|
||||||
|
pkgs.nil
|
||||||
|
pkgs.nixd
|
||||||
|
pkgs.typescript-language-server
|
||||||
|
pkgs.tailwindcss-language-server
|
||||||
|
pkgs.stylua
|
||||||
|
]
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
})
|
||||||
|
vim
|
||||||
|
unzip
|
||||||
|
python310 # Its python like come on
|
||||||
|
|
||||||
fonts.fontconfig.defaultFonts.serif = [ "Fira Mono Nerd Font" ];
|
# Graphics Drivers
|
||||||
environment.systemPackages = with pkgs; [
|
mesa
|
||||||
|
vulkan-tools
|
||||||
|
|
||||||
# Catppuccin sddm theme
|
# FileSystem Dependancies
|
||||||
# (pkgs.catppuccin-sddm.override {
|
gvfs
|
||||||
# flavor = "mocha";
|
|
||||||
# font = "Fira Mono Nerd Font";
|
|
||||||
# fontSize = "11";
|
|
||||||
# background = null;
|
|
||||||
# })
|
|
||||||
# Terminal things
|
|
||||||
(pkgs.symlinkJoin {
|
|
||||||
name = "nvim-with-lsp";
|
|
||||||
paths = [ pkgs.neovim ];
|
|
||||||
buildInputs = [ pkgs.makeWrapper ];
|
|
||||||
postBuild = ''
|
|
||||||
wrapProgram $out/bin/nvim \
|
|
||||||
--prefix PATH : ${pkgs.lib.makeBinPath [
|
|
||||||
pkgs.lua-language-server
|
|
||||||
pkgs.vscode-langservers-extracted
|
|
||||||
pkgs.emmet-ls
|
|
||||||
pkgs.ripgrep
|
|
||||||
pkgs.nil
|
|
||||||
pkgs.nixd
|
|
||||||
pkgs.typescript-language-server
|
|
||||||
pkgs.tailwindcss-language-server
|
|
||||||
pkgs.stylua
|
|
||||||
]}
|
|
||||||
'';
|
|
||||||
})
|
|
||||||
vim
|
|
||||||
unzip
|
|
||||||
python310 # Its python like come on
|
|
||||||
|
|
||||||
# Graphics Drivers
|
# C copmpiler
|
||||||
mesa
|
clang
|
||||||
vulkan-tools
|
|
||||||
|
|
||||||
# FileSystem Dependancies
|
# XDG Desktop Portal Etc
|
||||||
gvfs
|
xdg-desktop-portal
|
||||||
|
xdg-desktop-portal-hyprland
|
||||||
|
|
||||||
# C copmpiler
|
# Other things (from gnome)
|
||||||
clang
|
glib
|
||||||
|
gnutls
|
||||||
|
appimage-run
|
||||||
|
libnotify
|
||||||
|
gsettings-desktop-schemas
|
||||||
|
];
|
||||||
|
|
||||||
# XDG Desktop Portal Etc
|
# The comment
|
||||||
xdg-desktop-portal
|
system.stateVersion = "25.05"; # Did you read the comment?
|
||||||
xdg-desktop-portal-hyprland
|
|
||||||
|
|
||||||
# Other things (from gnome)
|
|
||||||
glib
|
|
||||||
gnutls
|
|
||||||
appimage-run
|
|
||||||
libnotify
|
|
||||||
gsettings-desktop-schemas
|
|
||||||
];
|
|
||||||
|
|
||||||
# The comment
|
|
||||||
system.stateVersion = "25.05"; # Did you read the comment?
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,45 +1,37 @@
|
|||||||
{ config, lib, pkgs, inputs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
networking.hostName = "HACKSTATION"; # Define your hostname.
|
networking.hostName = "HACKSTATION";
|
||||||
|
|
||||||
|
# Opengl and vulkan
|
||||||
|
hardware.graphics = {
|
||||||
|
enable = true;
|
||||||
|
enable32Bit = true;
|
||||||
|
};
|
||||||
|
|
||||||
# Opengl and vulkan
|
services.displayManager = {
|
||||||
hardware.graphics = {
|
autoLogin.enable = true;
|
||||||
enable = true;
|
autoLogin.user = "user01";
|
||||||
extraPackages = with pkgs; [
|
sddm = {
|
||||||
intel-vaapi-driver
|
enable = true;
|
||||||
libva-vdpau-driver
|
};
|
||||||
];
|
};
|
||||||
};
|
|
||||||
|
|
||||||
services.displayManager.sddm = {
|
# Local User
|
||||||
enable = true;
|
users.users.user01 = {
|
||||||
autoLogin.enable = true;
|
extraGroups = [ ];
|
||||||
autoLogin.user = "user01";
|
packages = with pkgs; [
|
||||||
};
|
bottles
|
||||||
|
ferdium
|
||||||
services.getty.autologinUser = "user01";
|
delfin
|
||||||
|
jellyfin-tui
|
||||||
# Catppuccin sddm theme
|
];
|
||||||
# (pkgs.catppuccin-sddm.override {
|
};
|
||||||
# flavor = "mocha";
|
|
||||||
# font = "Fira Mono Nerd Font";
|
|
||||||
# fontSize = "11";
|
|
||||||
# background = null;
|
|
||||||
# })
|
|
||||||
|
|
||||||
# Local User
|
|
||||||
users.users.user01 = {
|
|
||||||
extraGroups = [ ];
|
|
||||||
packages = with pkgs; [
|
|
||||||
# Ricing
|
|
||||||
|
|
||||||
# Terminal
|
|
||||||
|
|
||||||
# Apps
|
|
||||||
bottles
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
75
flake.nix
75
flake.nix
@@ -6,46 +6,53 @@
|
|||||||
elephant.url = "github:abenz1267/elephant";
|
elephant.url = "github:abenz1267/elephant";
|
||||||
chataigne.url = "./chataigne";
|
chataigne.url = "./chataigne";
|
||||||
doot.url = "github:voidarclabs/nixos.doot";
|
doot.url = "github:voidarclabs/nixos.doot";
|
||||||
way-edges.url = "github:way-edges/way-edges";
|
way-edges.url = "github:way-edges/way-edges";
|
||||||
|
|
||||||
walker = {
|
walker = {
|
||||||
url = "github:abenz1267/walker";
|
url = "github:abenz1267/walker";
|
||||||
inputs.elephant.follows = "elephant";
|
inputs.elephant.follows = "elephant";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, doot, chataigne, nixpkgs, ... }@inputs: let
|
outputs =
|
||||||
stdenv.hostPlatform.system = "x86_64-linux";
|
{
|
||||||
system = stdenv.hostPlatform.system;
|
self,
|
||||||
hardwareConfig = import /etc/nixos/hardware-configuration.nix;
|
doot,
|
||||||
in
|
chataigne,
|
||||||
{
|
nixpkgs,
|
||||||
nixosConfigurations.mobile02 = nixpkgs.lib.nixosSystem {
|
...
|
||||||
inherit system;
|
}@inputs:
|
||||||
specialArgs = {inherit inputs;};
|
let
|
||||||
|
stdenv.hostPlatform.system = "x86_64-linux";
|
||||||
|
system = stdenv.hostPlatform.system;
|
||||||
|
hardwareConfig = import /etc/nixos/hardware-configuration.nix;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
nixosConfigurations.mobile02 = nixpkgs.lib.nixosSystem {
|
||||||
|
inherit system;
|
||||||
|
specialArgs = { inherit inputs; };
|
||||||
|
|
||||||
modules = [
|
modules = [
|
||||||
./configuration-laptop.nix
|
./configuration-laptop.nix
|
||||||
./common.nix
|
./common.nix
|
||||||
hardwareConfig
|
hardwareConfig
|
||||||
{
|
{
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
nixosConfigurations.hackstation = nixpkgs.lib.nixosSystem {
|
nixosConfigurations.hackstation = nixpkgs.lib.nixosSystem {
|
||||||
inherit system;
|
inherit system;
|
||||||
specialArgs = {inherit inputs;};
|
specialArgs = { inherit inputs; };
|
||||||
|
|
||||||
modules = [
|
modules = [
|
||||||
./configuration-pc.nix
|
./configuration-pc.nix
|
||||||
./common.nix
|
./common.nix
|
||||||
hardwareConfig
|
hardwareConfig
|
||||||
{
|
{
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user