Sync divergent branches

This commit is contained in:
agryphus 2024-02-27 20:09:03 -05:00
parent 0363631454
commit a79c4b287c
5 changed files with 107 additions and 56 deletions

View file

@ -16,16 +16,18 @@
};
# Files to add to /etc
environment.etc = {
"zshenv.local".text = ''
export ZDOTDIR="$HOME/.config/zsh"
'';
environment = {
binsh = "${pkgs.dash}/bin/dash";
etc = {
"zshenv.local".text = ''
export ZDOTDIR="$HOME/.config/zsh"
'';
};
pathsToLink = [
"/share"
];
};
environment.pathsToLink = [
"/share"
];
i18n.defaultLocale = "en_US.UTF-8";
fonts.packages = with pkgs; [
@ -36,6 +38,7 @@
hack-font
fira-code
inter
];
networking.networkmanager.enable = true;
@ -106,6 +109,7 @@
bluetuith # TUI bluetooth manager
bear # Generate Clang compilation database
devour # Opens new program on top of terminal
dash # Fast, posix compliant shell
distrobox # Easily spin up VMs of other distos
docker # Containerization
entr # Hooks for file changes

View file

@ -1,6 +1,8 @@
{ config, pkgs, ... }:
{
let
nixos-unstable = import <nixos-unstable> {};
in {
i18n = {
inputMethod = {
# Have to install fcitx5 through here so that the binary is patched to be able to see the addons.
@ -18,5 +20,11 @@
source-han-sans
source-han-serif
];
nixpkgs.overlays = [
(self: super: {
fcitx5-with-addons = nixos-unstable.fcitx5-with-addons;
})
];
}

View file

@ -1,16 +1,43 @@
{ config, pkgs, ... }:
{
let
# Current verison causes segfault.
hyprpicker_0_1_1 = (import (builtins.fetchTarball {
url = "https://github.com/NixOS/nixpkgs/archive/9957cd48326fe8dbd52fdc50dd2502307f188b0d.tar.gz";
}) {}).hyprpicker; # v0.1.1.
nixos-unstable = (import <nixos-unstable> {});
flake-compat = builtins.fetchTarball "https://github.com/edolstra/flake-compat/archive/master.tar.gz";
hyprland = (import flake-compat {
src = builtins.fetchTarball "https://github.com/hyprwm/Hyprland/archive/master.tar.gz";
}).defaultNix;
in {
imports = [
hyprland.nixosModules.default
];
# Trusted Hyprland cache, as to not have to rebuild nightly
nix.settings = {
substituters = ["https://hyprland.cachix.org"];
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
};
# Or else swaylock will not accept correct password
security.pam.services.swaylock = {};
programs = {
hyprland = { # Dynamic tiling window manager
enable = true;
enableNvidiaPatches = true;
xwayland.enable = true;
package = (hyprland.packages.${pkgs.system}.default).override (o: {
wlroots = o.wlroots.overrideAttrs (oa: {
patches = oa.patches ++ [
/home/vince/misc/DisplayLink_v2.patch
];
});
});
};
waybar.enable = true; # Status bar
# waybar.enable = true; # Status bar
};
systemd.user.services = {
@ -19,33 +46,45 @@
wantedBy = [ "graphical-session.target" ];
partOf = [ "graphical-session.target" ];
script = "${pkgs.hyprland-autoname-workspaces}/bin/hyprland-autoname-workspaces";
serviceConfig.Restart = "always";
serviceConfig.RestartSec = 1;
};
network-manager-applet = {
description = "Start the network manager applet";
wantedBy = [ "default.target" ];
serviceConfig.Type = "forking";
serviceConfig.Restart = "always";
serviceConfig.RestartSec = 2;
serviceConfig.RestartSec = 1;
serviceConfig.ExecStart = "${pkgs.networkmanagerapplet}/bin/nm-applet";
};
# waybar = {
# description = "Waybar as systemd service";
# wantedBy = [ "graphical-session.target" ];
# partOf = [ "graphical-session.target" ];
# script = "${pkgs.waybar}/bin/waybar";
# serviceConfig.Restart = "always";
# serviceConfig.RestartSec = 1;
# };
};
environment.systemPackages = with pkgs; [
blueman # Bluetooth manager
dunst # Notification daemon
# dunst # Notification daemon
eww-wayland
firefox # My browser of choice
foot # Wayland native terminal
gobble # Wayland alternative to devour
grim # Screenshot tool
grimblast # Allows freezing screen
grim # Screenshot tool
hicolor-icon-theme # Icons
hyprland-autoname-workspaces
hyprland-autoname-workspaces # Add icons to workspace titles
hyprpaper
hyprpicker # Colorpicker utility
kanshi # Autorandr substitute
libnotify # Send messages to notification daemon
libreoffice # MSOffice btfo
networkmanagerapplet # Wifi dropdown menu
nwg-displays
pinentry-rofi # Rofi frontend for pinentry program
pyprland # Plugin manager for Hyprland
rofi # Menu prompt program
@ -56,6 +95,7 @@
texlive.combined.scheme-full # LaTeX to create documents
typst # Cool, minimal LaTeX alternative
ungoogled-chromium # If I need a special chrome feature
waybar
wayland-utils
wdisplays # Arnadr substitute
wl-clipboard # Copy/paste utility
@ -64,19 +104,13 @@
# GTK Themes
lxappearance-gtk2 # Theme switcher
gruvbox-dark-gtk
# Specific versions of packages
(import (builtins.fetchTarball {
url = "https://github.com/NixOS/nixpkgs/archive/9957cd48326fe8dbd52fdc50dd2502307f188b0d.tar.gz";
}) {}).hyprpicker # v0.1.1. Current verison causes segfault.
];
nixpkgs.overlays = [
(self: super: {
grimblast = super.grimblast.override (oa: {
hyprpicker = (import (builtins.fetchTarball {
url = "https://github.com/NixOS/nixpkgs/archive/9957cd48326fe8dbd52fdc50dd2502307f188b0d.tar.gz";
}) {}).hyprpicker; # v0.1.1. Current verison causes segfault.
hyprpicker = hyprpicker_0_1_1;
grimblast = super.grimblast.override (o: {
hyprpicker = hyprpicker_0_1_1;
});
})
];