[container-dev] Switch to rootless docker. [nvim] Update snacks options. [hyprland] Use clipboard fixes globally

This commit is contained in:
2025-04-30 14:29:31 -07:00
parent 55bd116fde
commit 8884bd51fd
11 changed files with 51 additions and 59 deletions

View File

@@ -50,10 +50,6 @@ in
# WoW addon updater # WoW addon updater
wowup-cf wowup-cf
# For clipboard management. See below.
wl-clipboard
xclip
]; ];
# xdg.dataFile."applications/wowup-cf.desktop" = { # xdg.dataFile."applications/wowup-cf.desktop" = {
@@ -61,14 +57,6 @@ in
# source = "${patched-desktop}/wowup-cf.desktop"; # source = "${patched-desktop}/wowup-cf.desktop";
# }; # };
wayland.windowManager.hyprland.settings.exec-once = [
# Hyprland doesn't paste into Wine apps. This program is a workaround.
# See https://github.com/hyprwm/Hyprland/issues/2319
# -t text = Only handle text
# -w xclip -selection clipboard = Watch for events and invoke xclip
"wl-paste -t text -w xclip -selection clipboard"
];
# wowup needs options to work under wayland. # wowup needs options to work under wayland.
xdg.desktopEntries.wowup-cf = local.electronDesktopEntry { xdg.desktopEntries.wowup-cf = local.electronDesktopEntry {
name = "WowUp"; name = "WowUp";

View File

@@ -6,6 +6,10 @@
swaynotificationcenter # notifications swaynotificationcenter # notifications
hyprpolkitagent # Privilege managent hyprpolkitagent # Privilege managent
hyprshot # Screenshot utility hyprshot # Screenshot utility
# For clipboard management. See below.
wl-clipboard
xclip
]; ];
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
@@ -37,6 +41,11 @@
"gsettings set org.gnome.desktop.interface color-scheme \"prefer-dark\"" "gsettings set org.gnome.desktop.interface color-scheme \"prefer-dark\""
"gsettings set org.gnome.desktop.interface gtk-theme \"Adwaita-dark\"" "gsettings set org.gnome.desktop.interface gtk-theme \"Adwaita-dark\""
# Hyprland doesn't paste into Firefox or Wine apps. This program is a workaround.
# See https://github.com/hyprwm/Hyprland/issues/2319
# -t text = Only handle text
# -w xclip -selection clipboard = Watch for events and invoke xclip
"wl-paste -t text -w xclip -selection clipboard"
]; ];
env = [ env = [

View File

@@ -1,6 +1,18 @@
return { return {
"folke/snacks.nvim", "folke/snacks.nvim",
---@type snacks.Config ---@type snacks.Config
opts = {
matcher = {
-- Enable frecensy for matchers
frecency = true,
},
picker = {
smart = {
-- Remove the "recent" picker so we don't get things from other directories.
multi = { "buffers", "files" },
},
},
},
keys = { keys = {
{ {
"<leader><space>", "<leader><space>",

View File

@@ -0,0 +1,17 @@
{ ... }:
{
virtualisation = {
docker = {
enable = true;
rootless.enable = true;
};
};
home-manager.users.drew = { ... }:
{
# Add the path to the docker socket to the environment.
programs.zsh.profileExtra = ''
export DOCKER_HOST=unix://$XDG_RUNTIME_DIR/docker.sock
'';
};
}

View File

@@ -26,4 +26,12 @@
xwayland.enable = true; xwayland.enable = true;
}; };
programs.sway = {
enable = true;
xwayland.enable = true;
wrapperFeatures = {
gtk = true;
base = true;
};
};
} }

View File

@@ -1,14 +0,0 @@
{ ... }:
{
virtualisation = {
podman = {
enable = true;
# Create a `docker` alias for podman, to use it as a drop-in replacement
dockerCompat = true;
# Required for containers under podman-compose to be able to talk to each other.
defaultNetwork.settings.dns_enabled = true;
};
};
}

View File

@@ -8,11 +8,6 @@
}: }:
{ {
imports = [
./qmk.nix
../../features/podman-dev.nix
];
networking.hostName = "altair"; # Define your hostname. networking.hostName = "altair"; # Define your hostname.
# Configure network proxy if necessary # Configure network proxy if necessary

View File

@@ -3,9 +3,11 @@
imports = [ imports = [
./configuration.nix ./configuration.nix
./hardware-configuration.nix ./hardware-configuration.nix
./qmk.nix
../../authorized-keys.nix ../../authorized-keys.nix
../../features/gc.nix ../../features/gc.nix
../../features/gui.nix ../../features/gui.nix
../../features/container-dev.nix
]; ];
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;

View File

@@ -1,9 +1,5 @@
{ pkgs, ... }: { pkgs, ... }:
{ {
imports = [
../../features/podman-dev.nix
];
networking.hostName = "vega"; # Define your hostname. networking.hostName = "vega"; # Define your hostname.
# Configure network proxy if necessary # Configure network proxy if necessary
@@ -80,16 +76,10 @@
# Enable touchpad support (enabled default in most desktopManager). # Enable touchpad support (enabled default in most desktopManager).
# services.xserver.libinput.enable = true; # services.xserver.libinput.enable = true;
# Allow unfree packages
nixpkgs.config = {
allowUnfree = true;
};
# List packages installed in system profile. To search, run: # List packages installed in system profile. To search, run:
# $ nix search wget # $ nix search wget
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
vim vim
sddm-astronaut
]; ];
# Some programs need SUID wrappers, can be configured further or are # Some programs need SUID wrappers, can be configured further or are
@@ -138,16 +128,6 @@
"flakes" "flakes"
]; ];
programs.steam = {
enable = true;
# Open ports in the firewall for Steam Remote Play
remotePlay.openFirewall = true;
# Open ports in the firewall for Source Dedicated Server
dedicatedServer.openFirewall = true;
# Open ports in the firewall for Steam Local Network Game Transfers
localNetworkGameTransfers.openFirewall = true;
};
services.openssh.enable = true; services.openssh.enable = true;
# Enable the font directory for managing fonts # Enable the font directory for managing fonts

View File

@@ -6,15 +6,10 @@
../../authorized-keys.nix ../../authorized-keys.nix
../../features/gc.nix ../../features/gc.nix
../../features/gui.nix ../../features/gui.nix
../../features/container-dev.nix
]; ];
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
home-manager.users.drew = home-manager.users.drew = import ./drew.nix;
{ ... }:
{
imports = [
./drew.nix
];
};
} }

View File

@@ -27,7 +27,7 @@
# Set up eww here because it's based on the monitor configuration # Set up eww here because it's based on the monitor configuration
# Eww is idempotent, so it's fine to just run it on every reload to make sure things are open # Eww is idempotent, so it's fine to just run it on every reload to make sure things are open
exec = [ exec = [
"eww daemon && eww open-many vertical-statusbar" "sleep 2 && eww open-many vertical-statusbar"
]; ];
# Set up workspaces for this system # Set up workspaces for this system
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules # See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules