Bump nix config
This commit is contained in:
parent
6344ccdc8a
commit
841b805565
6 changed files with 93 additions and 60 deletions
|
|
@ -11,6 +11,9 @@ in {
|
||||||
dates = "weekly";
|
dates = "weekly";
|
||||||
options = "--delete-older-than 7d";
|
options = "--delete-older-than 7d";
|
||||||
};
|
};
|
||||||
|
# I do not use flakes personally, but being able to run other
|
||||||
|
# people's flakes is convenient.
|
||||||
|
settings.experimental-features = [ "nix-command" "flakes" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
# Files to add to /etc
|
# Files to add to /etc
|
||||||
|
|
@ -29,6 +32,8 @@ in {
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
|
||||||
i18n.defaultLocale = "en_US.UTF-8";
|
i18n.defaultLocale = "en_US.UTF-8";
|
||||||
i18n.extraLocaleSettings = {
|
i18n.extraLocaleSettings = {
|
||||||
LC_ADDRESS = "en_US.UTF-8";
|
LC_ADDRESS = "en_US.UTF-8";
|
||||||
|
|
@ -48,21 +53,23 @@ in {
|
||||||
# version of this font centers the symbols which is nice.
|
# version of this font centers the symbols which is nice.
|
||||||
nur.repos.bandithedoge.symbols-nerd-font
|
nur.repos.bandithedoge.symbols-nerd-font
|
||||||
|
|
||||||
hack-font
|
|
||||||
fira-code
|
fira-code
|
||||||
|
nerd-fonts.fira-code
|
||||||
|
font-awesome
|
||||||
|
hack-font
|
||||||
inter
|
inter
|
||||||
fira-code-nerdfont
|
libertine
|
||||||
|
roboto
|
||||||
|
source-sans-pro
|
||||||
];
|
];
|
||||||
|
|
||||||
networking.networkmanager.enable = true;
|
|
||||||
|
|
||||||
# Bluetooth daemon
|
# Bluetooth daemon
|
||||||
services.blueman.enable = true;
|
services.blueman.enable = true;
|
||||||
hardware.bluetooth.enable = true;
|
hardware.bluetooth.enable = true;
|
||||||
hardware.bluetooth.powerOnBoot = true;
|
hardware.bluetooth.powerOnBoot = true;
|
||||||
|
|
||||||
# Audio daemon
|
# Audio daemon
|
||||||
hardware.pulseaudio.enable = false;
|
services.pulseaudio.enable = false;
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
@ -101,6 +108,7 @@ in {
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
zsh.enable = true;
|
zsh.enable = true;
|
||||||
|
command-not-found.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
virtualisation.docker.enable = true;
|
virtualisation.docker.enable = true;
|
||||||
|
|
@ -146,6 +154,7 @@ in {
|
||||||
man-pages-posix # Documentation
|
man-pages-posix # Documentation
|
||||||
neofetch # Aesthetic sysinfo
|
neofetch # Aesthetic sysinfo
|
||||||
openconnect # Connect to VPNs
|
openconnect # Connect to VPNs
|
||||||
|
p7zip # Open 7z files
|
||||||
pass-nodmenu # CLI password store (without dmenu dependency)
|
pass-nodmenu # CLI password store (without dmenu dependency)
|
||||||
pinentry-curses # Terminal-based pinentry program
|
pinentry-curses # Terminal-based pinentry program
|
||||||
socat # Interact with sockets
|
socat # Interact with sockets
|
||||||
|
|
@ -153,6 +162,8 @@ in {
|
||||||
tldr # Brief info about a command
|
tldr # Brief info about a command
|
||||||
tmux # Terminal multiplexor
|
tmux # Terminal multiplexor
|
||||||
udisks # Good way of dealing with USBs and similar media
|
udisks # Good way of dealing with USBs and similar media
|
||||||
|
unrar-free # Open .rar files
|
||||||
|
wget # Similar to curl
|
||||||
yazi # Terminal file manager
|
yazi # Terminal file manager
|
||||||
|
|
||||||
# Shell
|
# Shell
|
||||||
|
|
@ -186,7 +197,7 @@ in {
|
||||||
(self: super: {
|
(self: super: {
|
||||||
# Pop into an environment abiding by the Filesystem Hierarchy Standard
|
# Pop into an environment abiding by the Filesystem Hierarchy Standard
|
||||||
# to run applications which do not play nicely with NixOS.
|
# to run applications which do not play nicely with NixOS.
|
||||||
fhs-run = pkgs.buildFHSUserEnv {
|
fhs-run = pkgs.buildFHSEnv {
|
||||||
name = "fhs-run";
|
name = "fhs-run";
|
||||||
targetPkgs = pkgs: [];
|
targetPkgs = pkgs: [];
|
||||||
multiPkgs = pkgs: [ pkgs.dpkg ];
|
multiPkgs = pkgs: [ pkgs.dpkg ];
|
||||||
|
|
|
||||||
|
|
@ -9,12 +9,11 @@
|
||||||
type = "fcitx5";
|
type = "fcitx5";
|
||||||
fcitx5 = {
|
fcitx5 = {
|
||||||
waylandFrontend = true;
|
waylandFrontend = true;
|
||||||
plasma6Support = false;
|
|
||||||
addons = with pkgs; [
|
addons = with pkgs; [
|
||||||
fcitx5-with-addons
|
qt6Packages.fcitx5-with-addons
|
||||||
fcitx5-configtool
|
qt6Packages.fcitx5-configtool
|
||||||
|
qt6Packages.fcitx5-chinese-addons
|
||||||
fcitx5-rime
|
fcitx5-rime
|
||||||
fcitx5-chinese-addons
|
|
||||||
fcitx5-m17n
|
fcitx5-m17n
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
javaPackages.openjfx19
|
javaPackages.openjfx17
|
||||||
jdk17
|
jdk17
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,8 +5,10 @@
|
||||||
neovim
|
neovim
|
||||||
|
|
||||||
# LSPs
|
# LSPs
|
||||||
|
clang
|
||||||
clang-tools
|
clang-tools
|
||||||
lua-language-server
|
lua-language-server
|
||||||
|
python3Packages.python-lsp-server
|
||||||
|
|
||||||
# Misc
|
# Misc
|
||||||
ripgrep # Used by telescope
|
ripgrep # Used by telescope
|
||||||
|
|
|
||||||
|
|
@ -1,10 +0,0 @@
|
||||||
{ config, pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
nixpkgs.config.allowUnfree = true;
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
steam
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -5,11 +5,7 @@ let
|
||||||
nixos-unstable = (import <nixos-unstable> {});
|
nixos-unstable = (import <nixos-unstable> {});
|
||||||
flake-compat = builtins.fetchTarball "https://github.com/edolstra/flake-compat/archive/master.tar.gz";
|
flake-compat = builtins.fetchTarball "https://github.com/edolstra/flake-compat/archive/master.tar.gz";
|
||||||
hyprland_nightly = (import flake-compat {
|
hyprland_nightly = (import flake-compat {
|
||||||
src = builtins.fetchGit {
|
src = builtins.fetchTarball "https://github.com/hyprwm/Hyprland/archive/main.tar.gz";
|
||||||
ref = "main";
|
|
||||||
url = "https://github.com/hyprwm/Hyprland.git";
|
|
||||||
submodules = true;
|
|
||||||
};
|
|
||||||
}).defaultNix;
|
}).defaultNix;
|
||||||
in {
|
in {
|
||||||
# Trusted Hyprland cache, as to not have to rebuild nightly
|
# Trusted Hyprland cache, as to not have to rebuild nightly
|
||||||
|
|
@ -21,14 +17,39 @@ in {
|
||||||
# Or else swaylock will not accept correct password
|
# Or else swaylock will not accept correct password
|
||||||
security.pam.services.swaylock = {};
|
security.pam.services.swaylock = {};
|
||||||
|
|
||||||
|
services.keyd.enable = true;
|
||||||
|
services.keyd.keyboards = {
|
||||||
|
default = {
|
||||||
|
ids = [ "*" ];
|
||||||
|
settings = {
|
||||||
|
main = {
|
||||||
|
capslock = "overload(control, esc)";
|
||||||
|
esc = "capslock";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Enable OpenGL
|
||||||
|
hardware.graphics = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
hyprland = { # Dynamic tiling window manager
|
hyprland = { # Dynamic tiling window manager
|
||||||
enable = true;
|
enable = true;
|
||||||
xwayland.enable = true;
|
xwayland.enable = true;
|
||||||
# package = nixos-unstable.hyprland;
|
|
||||||
# package = hyprland_nightly.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
|
||||||
};
|
};
|
||||||
nm-applet.enable = true;
|
|
||||||
|
dconf = {
|
||||||
|
enable = true;
|
||||||
|
profiles.gdm.databases = [{
|
||||||
|
settings = {
|
||||||
|
# set dark theme for gtk 4
|
||||||
|
"org/gnome/desktop/interface" = { color-scheme = "prefer-dark"; };
|
||||||
|
};
|
||||||
|
}];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.user.services = {
|
systemd.user.services = {
|
||||||
|
|
@ -41,24 +62,27 @@ in {
|
||||||
serviceConfig.Restart = "always";
|
serviceConfig.Restart = "always";
|
||||||
serviceConfig.RestartSec = 1;
|
serviceConfig.RestartSec = 1;
|
||||||
};
|
};
|
||||||
# network-manager-applet = {
|
|
||||||
# description = "Start the network manager applet";
|
|
||||||
# after = [ "graphical-session.target" ];
|
|
||||||
# requires = [ "graphical-session.target" ];
|
|
||||||
# wantedBy = [ "graphical-session.target" ];
|
|
||||||
# serviceConfig.Type = "forking";
|
|
||||||
# serviceConfig.Restart = "always";
|
|
||||||
# serviceConfig.RestartSec = 1;
|
|
||||||
# serviceConfig.ExecStart = "${pkgs.networkmanagerapplet}/bin/nm-applet";
|
|
||||||
# };
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
environment.variables.GSETTINGS_SCHEMA_DIR =
|
||||||
|
let
|
||||||
|
paths = [
|
||||||
|
"${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}/glib-2.0/schemas/"
|
||||||
|
"${pkgs.bottles-unwrapped}/share/gsettings-schemas/${pkgs.bottles-unwrapped.name}/glib-2.0/schemas/"
|
||||||
|
];
|
||||||
|
in
|
||||||
|
builtins.concatStringsSep ":" paths;
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
|
adwaita-icon-theme
|
||||||
|
adwaita-qt
|
||||||
blueman # Bluetooth manager
|
blueman # Bluetooth manager
|
||||||
dunst # Notification daemon
|
dunst # Notification daemon
|
||||||
firefox # My browser of choice
|
firefox # My browser of choice
|
||||||
foot # Wayland native terminal
|
foot # Wayland native terminal
|
||||||
fuzzel # Fuzzy finding menuing program
|
fuzzel # Fuzzy finding menuing program
|
||||||
|
glib
|
||||||
|
gnome-themes-extra
|
||||||
gobble # Wayland alternative to devour
|
gobble # Wayland alternative to devour
|
||||||
grimblast # Allows freezing screen
|
grimblast # Allows freezing screen
|
||||||
grim # Screenshot tool
|
grim # Screenshot tool
|
||||||
|
|
@ -66,22 +90,21 @@ in {
|
||||||
hypridle # Do commands upon user idle
|
hypridle # Do commands upon user idle
|
||||||
hyprland-autoname-workspaces # Add icons to workspace titles
|
hyprland-autoname-workspaces # Add icons to workspace titles
|
||||||
hyprlock # Screen locking utility
|
hyprlock # Screen locking utility
|
||||||
hyprpaper
|
|
||||||
hyprpicker # Colorpicker utility
|
hyprpicker # Colorpicker utility
|
||||||
kanshi # Autorandr substitute
|
hyprsunset # Bluelight filter
|
||||||
libnotify # Send messages to notification daemon
|
libnotify # Send messages to notification daemon
|
||||||
libreoffice # MSOffice btfo
|
libreoffice # MSOffice btfo
|
||||||
# networkmanagerapplet # Wifi dropdown menu
|
# networkmanagerapplet # Wifi dropdown menu
|
||||||
networkmanager_dmenu # Manage wifi with dmenu
|
networkmanager_dmenu # Manage wifi with dmenu
|
||||||
nsxiv # Image viewer
|
nsxiv # Image viewer
|
||||||
nwg-displays
|
nwg-displays
|
||||||
|
pcmanfm # Graphical file manager
|
||||||
pinentry-rofi # Rofi frontend for pinentry program
|
pinentry-rofi # Rofi frontend for pinentry program
|
||||||
pyprland # Plugin manager for Hyprland
|
quickshell # Use QT to create widgets
|
||||||
rofi # Menu prompt program
|
rofi # Menu prompt program
|
||||||
rofi-pass # Rofi frontend for password store
|
rofi-pass # Rofi frontend for password store
|
||||||
sassc # SCSS interpreter
|
|
||||||
slurp # Screen selection utility
|
slurp # Screen selection utility
|
||||||
st
|
st # Suckless Simple Terminal
|
||||||
swaylock # Wayland session locker
|
swaylock # Wayland session locker
|
||||||
swww # Sets background images
|
swww # Sets background images
|
||||||
texlive.combined.scheme-full # LaTeX to create documents
|
texlive.combined.scheme-full # LaTeX to create documents
|
||||||
|
|
@ -93,38 +116,46 @@ in {
|
||||||
wdisplays # Arnadr substitute
|
wdisplays # Arnadr substitute
|
||||||
wl-clipboard # Copy/paste utility
|
wl-clipboard # Copy/paste utility
|
||||||
wlr-randr # Xrandr substitute
|
wlr-randr # Xrandr substitute
|
||||||
xwaylandvideobridge # Allows screensharing from XWayland programs
|
|
||||||
xorg.xcursorthemes
|
xorg.xcursorthemes
|
||||||
zathura # Minimalist PDF reader
|
zathura # Minimalist PDF reader
|
||||||
zen-browser
|
zen-browser # Better firefox
|
||||||
|
intel-gpu-tools # Tools for intel GPU
|
||||||
|
mesa-demos # Tools for Mesa drivers
|
||||||
|
|
||||||
|
xfce.thunar # Graphical file manager
|
||||||
|
xfce.tumbler # Thumbnailer service
|
||||||
|
|
||||||
|
# libsForQt5.qt5.qtsvg # Allow for svg icons in QT applications
|
||||||
|
kdePackages.qt6ct
|
||||||
|
|
||||||
# GTK Themes
|
# GTK Themes
|
||||||
lxappearance-gtk2 # Theme switcher
|
lxappearance-gtk2 # Theme switcher
|
||||||
gruvbox-dark-gtk
|
gruvbox-dark-gtk
|
||||||
|
|
||||||
|
# Custom packages
|
||||||
|
extra-icons
|
||||||
];
|
];
|
||||||
|
|
||||||
nixpkgs.overlays = [
|
nixpkgs.overlays = [
|
||||||
(final: prev: {
|
(final: prev: {
|
||||||
hyprland-autoname-workspaces = nixos-unstable.hyprland-autoname-workspaces;
|
hyprland-autoname-workspaces = nixos-unstable.hyprland-autoname-workspaces;
|
||||||
waybar = nixos-unstable.waybar;
|
|
||||||
typst = nixos-unstable.typst;
|
typst = nixos-unstable.typst;
|
||||||
# typst = (import flake-compat {
|
swww = nixos-unstable.swww;
|
||||||
# src = builtins.fetchGit {
|
|
||||||
# url = "https://github.com/typst/typst.git";
|
|
||||||
# };
|
|
||||||
# }).outputs.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
|
||||||
zen-browser = (import flake-compat {
|
zen-browser = (import flake-compat {
|
||||||
src = builtins.fetchGit {
|
src = builtins.fetchGit {
|
||||||
url = "https://github.com/0xc000022070/zen-browser-flake.git";
|
url = "https://github.com/0xc000022070/zen-browser-flake.git";
|
||||||
};
|
};
|
||||||
}).outputs.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
}).outputs.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
||||||
st = prev.st.overrideAttrs (o: {
|
st = prev.callPackage /home/vince/.config/st/default.nix {};
|
||||||
src = /home/vince/.config/st;
|
extra-icons = prev.callPackage ../../derivations/extra-icons {};
|
||||||
buildInputs = o.buildInputs ++ (with pkgs; [
|
# quickshell = (nixos-unstable.callPackage "${builtins.fetchGit {
|
||||||
# Extra libraries needed to build patches
|
# url = "https://git.outfoxxed.me/outfoxxed/quickshell.git";
|
||||||
harfbuzz
|
# ref = "master";
|
||||||
imlib2
|
# }}/" {}).overrideAttrs (oa: {
|
||||||
]);
|
# buildInputs = (oa.buildInputs or []) ++ [ nixos-unstable.qt6.qt5compat ];
|
||||||
|
# });
|
||||||
|
quickshell = nixos-unstable.quickshell.overrideAttrs(oa: {
|
||||||
|
buildInputs = (oa.buildInputs or []) ++ [ nixos-unstable.qt6.qt5compat ];
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue