Merge branch 'master' of github.com:starr-dusT/dotfiles

This commit is contained in:
Tyler Starr 2024-07-17 22:21:50 -07:00
commit 62dd3aee3a
14 changed files with 148 additions and 106 deletions

View File

@ -9,4 +9,5 @@ borg create \
--exclude "$HOME/tmp" \
--exclude "$HOME/sync" \
--exclude "$HOME/media/roms" \
--exclude "$HOME/box" \
"$HOME/mnt/engi/backup/borg-kestrel::kestrel-${datetime}" "$HOME"

View File

@ -19,6 +19,9 @@ shopt -s cdspell;
# Setup thefuck
eval "$(thefuck --alias)"
# Setup direnv
eval "$(direnv hook bash)"
# Enable some Bash 4 features when possible:
# * `autocd`, e.g. `**/qux` will enter `./foo/bar/baz/qux`
# * Recursive globbing, e.g. `echo **/*.txt`

View File

@ -117,12 +117,21 @@ map <leader>fq :Grep -r<space>
map <leader>fl :LGrep -r<space>
" next/last location
map <leader>nl :lnext<CR>
map <leader>pl :lprev<CR>
map <leader>ln :lnext<CR>
map <leader>lp :lprev<CR>
" next/last quickfix
map <leader>nc :cnext<CR>
map <leader>pc :cnext<CR>
map <leader>cn :cnext<CR>
map <leader>cp :cnext<CR>
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" notes
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
command! Ill call InsertLocationLink()
" copy quick/location selection to clipboard
nnoremap <Leader>nl :Ill<CR>
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" misc keys
@ -252,3 +261,28 @@ function! UpdateMarkSigns()
endif
endfor
endfunction
" Create markdown link for current location list selection
" OG baby!
"
function! InsertLocationLink()
let loc_idx = line('.') - 1
let loc_list = getloclist(0)
let link = bufname(l:loc_list[l:loc_idx].bufnr)
call setreg('l', link)
:lcl
let title = input("Link name: ")
let curr_path = substitute(expand('%:p:h'), finddir('.git/..', expand('%:p:h').';'), '', "g")
let nest_count = count(curr_path, "/")
let file_path = getreg('l')
if nest_count < 1
let file_path = join(['./', file_path], '')
else
while nest_count > 0
let file_path = join(['../', file_path], '')
let nest_count -= 1
endwhile
endif
let link = join(['[', title, '](', file_path, ')'], "")
exe "normal! a" . link . "\<Esc>"
endfunction

148
provision/flake.lock generated
View File

@ -7,11 +7,11 @@
]
},
"locked": {
"lastModified": 1714679908,
"narHash": "sha256-KzcXzDvDJjX34en8f3Zimm396x6idbt+cu4tWDVS2FI=",
"lastModified": 1720188602,
"narHash": "sha256-lC3byBmhVZFzWl/dCic8+cKUEEAXAswWOYjq4paFmbo=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "9036fe9ef8e15a819fa76f47a8b1f287903fb848",
"rev": "e3582e5151498bc4d757e8361431ace8529e7bb7",
"type": "github"
},
"original": {
@ -36,11 +36,11 @@
]
},
"locked": {
"lastModified": 1713612213,
"narHash": "sha256-zJboXgWNpNhKyNF8H/3UYzWkx7w00TOCGKi3cwi+tsw=",
"lastModified": 1718450675,
"narHash": "sha256-jpsns6buS4bK+1sF8sL8AaixAiCRjA+nldTKvcwmvUs=",
"owner": "hyprwm",
"repo": "hyprcursor",
"rev": "cab4746180f210a3c1dd3d53e45c510e309e90e1",
"rev": "66d5b46ff94efbfa6fa3d1d1b66735f1779c34a6",
"type": "github"
},
"original": {
@ -52,20 +52,19 @@
"hyprland": {
"inputs": {
"hyprcursor": "hyprcursor",
"hyprland-protocols": "hyprland-protocols",
"hyprlang": "hyprlang",
"hyprutils": "hyprutils",
"hyprwayland-scanner": "hyprwayland-scanner",
"nixpkgs": "nixpkgs",
"systems": "systems",
"wlroots": "wlroots",
"xdph": "xdph"
},
"locked": {
"lastModified": 1714785484,
"narHash": "sha256-nuwQK+01v1o0KjlRPr+b/hsOKm4ssNCV71U9a8Yiclw=",
"lastModified": 1720213509,
"narHash": "sha256-LXj38Y3H0+/YhOtz6tGrqgd6p9AyGFeq6EwLgYsE1KQ=",
"owner": "hyprwm",
"repo": "Hyprland",
"rev": "40201a760acd7c5ca10f27e7d0fdeb71c20df89f",
"rev": "cc98594c3aed0b542e03818371a4636f549f80e1",
"type": "github"
},
"original": {
@ -81,11 +80,11 @@
]
},
"locked": {
"lastModified": 1713780596,
"narHash": "sha256-DDAYNGSnrBwvVfpKx+XjkuecpoE9HiEf6JW+DBQgvm0=",
"lastModified": 1718476555,
"narHash": "sha256-fuWpgh8KasByIJWE+xVd37Al0LV5YAn6s871T50qVY0=",
"owner": "hyprwm",
"repo": "contrib",
"rev": "110e6dc761d5c3d352574def3479a9c39dfc4358",
"rev": "29a8374f4b9206d5c4af84aceb7fb5dff441ea60",
"type": "github"
},
"original": {
@ -98,19 +97,21 @@
"inputs": {
"nixpkgs": [
"hyprland",
"xdph",
"nixpkgs"
],
"systems": [
"hyprland",
"xdph",
"systems"
]
},
"locked": {
"lastModified": 1691753796,
"narHash": "sha256-zOEwiWoXk3j3+EoF3ySUJmberFewWlagvewDRuWYAso=",
"lastModified": 1714869498,
"narHash": "sha256-vbLVOWvQqo4n1yvkg/Q70VTlPbMmTiCQfNTgcWDCfJM=",
"owner": "hyprwm",
"repo": "hyprland-protocols",
"rev": "0c2ce70625cb30aef199cb388f99e19a61a6ce03",
"rev": "e06482e0e611130cd1929f75e8c1cf679e57d161",
"type": "github"
},
"original": {
@ -120,6 +121,35 @@
}
},
"hyprlang": {
"inputs": {
"hyprutils": [
"hyprland",
"hyprutils"
],
"nixpkgs": [
"hyprland",
"nixpkgs"
],
"systems": [
"hyprland",
"systems"
]
},
"locked": {
"lastModified": 1717881852,
"narHash": "sha256-XeeVoKHQgfKuXoP6q90sUqKyl7EYy3ol2dVZGM+Jj94=",
"owner": "hyprwm",
"repo": "hyprlang",
"rev": "ec6938c66253429192274d612912649a0cfe4d28",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "hyprlang",
"type": "github"
}
},
"hyprutils": {
"inputs": {
"nixpkgs": [
"hyprland",
@ -131,16 +161,16 @@
]
},
"locked": {
"lastModified": 1713121246,
"narHash": "sha256-502X0Q0fhN6tJK7iEUA8CghONKSatW/Mqj4Wappd++0=",
"lastModified": 1719316102,
"narHash": "sha256-dmRz128j/lJmMuTYeCYPfSBRHHQO3VeH4PbmoyAhHzw=",
"owner": "hyprwm",
"repo": "hyprlang",
"rev": "78fcaa27ae9e1d782faa3ff06c8ea55ddce63706",
"repo": "hyprutils",
"rev": "1f6bbec5954f623ff8d68e567bddcce97cd2f085",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "hyprlang",
"repo": "hyprutils",
"type": "github"
}
},
@ -156,11 +186,11 @@
]
},
"locked": {
"lastModified": 1714755542,
"narHash": "sha256-D0pg+ZRwrt4lavZ97Ca8clsgbPA3duLj8iEM7riaIFY=",
"lastModified": 1719067853,
"narHash": "sha256-mAnZG/eQy72Fp1ImGtqCgUrDumnR1rMZv2E/zgP4U74=",
"owner": "hyprwm",
"repo": "hyprwayland-scanner",
"rev": "1270ebaa539e56d61b708c24b072b09cbbd3a828",
"rev": "914f083741e694092ee60a39d31f693d0a6dc734",
"type": "github"
},
"original": {
@ -172,11 +202,11 @@
"jovian-nixos": {
"flake": false,
"locked": {
"lastModified": 1714803703,
"narHash": "sha256-4m9wG6mZR0I2d7itErhpY0JqSHomNnUdoKfkjnYp+wI=",
"lastModified": 1720205505,
"narHash": "sha256-KqGnYAKWxwRgWxc/78HbL3PHeuDJOSS/9+Pkm5doUk8=",
"ref": "development",
"rev": "d0799ebebfb37fd2df6409dc8da622738c5930bb",
"revCount": 760,
"rev": "fdcaab38857f221eea20a0073f891feb36ea8e99",
"revCount": 861,
"type": "git",
"url": "https://github.com/Jovian-Experiments/Jovian-NixOS"
},
@ -188,11 +218,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1714253743,
"narHash": "sha256-mdTQw2XlariysyScCv2tTE45QSU9v/ezLcHJ22f0Nxc=",
"lastModified": 1719075281,
"narHash": "sha256-CyyxvOwFf12I91PBWz43iGT1kjsf5oi6ax7CrvaMyAo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "58a1abdbae3217ca6b702f03d3b35125d88a2994",
"rev": "a71e967ef3694799d0c418c98332f7ff4cc5f6af",
"type": "github"
},
"original": {
@ -204,27 +234,27 @@
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1713638189,
"narHash": "sha256-q7APLfB6FmmSMI1Su5ihW9IwntBsk2hWNXh8XtSdSIk=",
"lastModified": 1719720450,
"narHash": "sha256-57+R2Uj3wPeDeq8p8un19tzFFlgWiXJ8PbzgKtBgBX8=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "74574c38577914733b4f7a775dd77d24245081dd",
"rev": "78f8641796edff3bfabbf1ef5029deadfe4a21d0",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "release-23.11",
"ref": "release-24.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1714635257,
"narHash": "sha256-4cPymbty65RvF1DWQfc+Bc8B233A1BWxJnNULJKQ1EY=",
"lastModified": 1720031269,
"narHash": "sha256-rwz8NJZV+387rnWpTYcXaRNvzUSnnF9aHONoJIYmiUQ=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "63c3a29ca82437c87573e4c6919b09a24ea61b0f",
"rev": "9f4128e00b0ae8ec65918efeba59db998750ead6",
"type": "github"
},
"original": {
@ -236,11 +266,11 @@
},
"nixpkgs_3": {
"locked": {
"lastModified": 1713596654,
"narHash": "sha256-LJbHQQ5aX1LVth2ST+Kkse/DRzgxlVhTL1rxthvyhZc=",
"lastModified": 1719468428,
"narHash": "sha256-vN5xJAZ4UGREEglh3lfbbkIj+MPEYMuqewMn4atZFaQ=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "fd16bb6d3bcca96039b11aa52038fafeb6e4f4be",
"rev": "1e3deb3d8a86a870d925760db1a5adecc64d329d",
"type": "github"
},
"original": {
@ -266,11 +296,11 @@
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
"lastModified": 1713892811,
"narHash": "sha256-uIGmA2xq41vVFETCF1WW4fFWFT2tqBln+aXnWrvjGRE=",
"lastModified": 1720187017,
"narHash": "sha256-Zq+T1Bvd0ShZB9XM+bP0VJK3HjsSVQBLolkaCLBQnfQ=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "f1b0adc27265274e3b0c9b872a8f476a098679bd",
"rev": "1b11e208cee97c47677439625dc22e5289dcdead",
"type": "github"
},
"original": {
@ -294,29 +324,9 @@
"type": "github"
}
},
"wlroots": {
"flake": false,
"locked": {
"lastModified": 1713731601,
"narHash": "sha256-bdcKdtLkusvv85DNuJsajZLFeq7bXp+x5AGP1Sd4wD8=",
"owner": "hyprwm",
"repo": "wlroots-hyprland",
"rev": "5c1d51c5a2793480f5b6c4341ad0797052aec2ea",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "wlroots-hyprland",
"rev": "5c1d51c5a2793480f5b6c4341ad0797052aec2ea",
"type": "github"
}
},
"xdph": {
"inputs": {
"hyprland-protocols": [
"hyprland",
"hyprland-protocols"
],
"hyprland-protocols": "hyprland-protocols",
"hyprlang": [
"hyprland",
"hyprlang"
@ -331,11 +341,11 @@
]
},
"locked": {
"lastModified": 1714060055,
"narHash": "sha256-j43TS9wv9luaAlpxcxw0sjxkbcc2mGANVR2RYgo3RCw=",
"lastModified": 1718619174,
"narHash": "sha256-FWW68AVYmB91ZDQnhLMBNCUUTCjb1ZpO2k2KIytHtkA=",
"owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland",
"rev": "0fe840441e43da12cd7865ed9aa8cdc35a8da85a",
"rev": "c7894aa54f9a7dbd16df5cd24d420c8af22d5623",
"type": "github"
},
"original": {

View File

@ -26,9 +26,7 @@
hardware.bluetooth.enable = true;
hardware.bluetooth.package = pkgs.bluez;
hardware.sensor.iio.enable = true;
hardware.opengl.enable = true;
hardware.opengl.driSupport = true;
hardware.opengl.driSupport32Bit = true;
hardware.graphics.enable = true;
# Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true;

View File

@ -28,9 +28,7 @@
hardware.bluetooth.enable = true;
hardware.bluetooth.package = pkgs.bluez;
hardware.sensor.iio.enable = true;
hardware.opengl.enable = true;
hardware.opengl.driSupport = true;
hardware.opengl.driSupport32Bit = true;
hardware.graphics.enable = true;
# Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true;

View File

@ -28,9 +28,7 @@
hardware.bluetooth.enable = true;
hardware.bluetooth.package = pkgs.bluez;
hardware.sensor.iio.enable = true;
hardware.opengl.enable = true;
hardware.opengl.driSupport = true;
hardware.opengl.driSupport32Bit = true;
hardware.graphics.enable = true;
# Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true;

View File

@ -61,8 +61,6 @@
hardware.opengl = {
enable = true;
driSupport = true;
driSupport32Bit = true;
setLdLibraryPath = true;
};

View File

@ -27,8 +27,8 @@ in {
config = lib.mkIf cfg.enable {
environment.systemPackages = with pkgs; [
gnome.dconf-editor # Graphical tool for editing settings stored in the dconf database of GNOME.
gnome.gnome-tweaks # Utility for customizing various aspects of the GNOME desktop environment.
dconf-editor # Graphical tool for editing settings stored in the dconf database of GNOME.
gnome-tweaks # Utility for customizing various aspects of the GNOME desktop environment.
evolution # Personal information management application that provides email, calendar, and contact management features.
gnomeExtensions.focus-changer # GNOME Shell extension for changing window focus behavior.
gnome-fullscreen-to-empty-workspace
@ -36,7 +36,7 @@ in {
gnome-maximize-lonely-window
];
environment.gnome.excludePackages = with pkgs.gnome; [
environment.gnome.excludePackages = with pkgs; [
baobab # Disk usage analyzer for the GNOME desktop environment.
cheese # Webcam application for taking photos and videos.
epiphany # Web browser for the GNOME desktop environment.
@ -47,14 +47,14 @@ in {
evince # Document viewer for the GNOME desktop environment.
geary # Email client for the GNOME desktop environment.
seahorse # GNOME application for managing encryption keys and passwords.
pkgs.gnome-tour # Guided tour application for introducing users to GNOME desktop environment features.
pkgs.snapshot # Utility for taking and managing system snapshots in the GNOME desktop environment.
pkgs.gnome-connections # GNOME application for accessing remote machines and services.
gnome-tour # Guided tour application for introducing users to GNOME desktop environment features.
snapshot # Utility for taking and managing system snapshots in the GNOME desktop environment.
gnome-connections # GNOME application for accessing remote machines and services.
gnome-font-viewer # Utility for previewing and managing fonts in the GNOME desktop environment.
gnome-logs # Log viewer application for GNOME.
gnome-maps # Map application for the GNOME desktop environment.
gnome-music # Music player and management application for GNOME.
gnome-shell-extensions # Extensions for enhancing functionality and customization in the GNOME.
gnome.gnome-logs # Log viewer application for GNOME.
gnome.gnome-maps # Map application for the GNOME desktop environment.
gnome.gnome-music # Music player and management application for GNOME.
gnome.gnome-shell-extensions # Extensions for enhancing functionality and customization in the GNOME.
];
# Enable wayland gnome
@ -122,7 +122,7 @@ in {
color-scheme = "prefer-dark";
};
"org/gnome/desktop/background" = {
picture-options = "centered";
picture-options = "zoom";
picture-uri = "${cfg.wallpaper}";
picture-uri-dark = "${cfg.wallpaper}";
};

View File

@ -19,7 +19,7 @@ in {
(python3.withPackages my-python-packages)
fava # Web interface for the double-entry bookkeeping software Beancount.
beancount # Double-entry bookkeeping software for tracking financial transactions.
nodePackages_latest.pyright # Latest version of the Pyright package, a static type checker for Python.
pyright # Latest version of the Pyright package, a static type checker for Python.
];
};
}

View File

@ -4,18 +4,19 @@ let cfg = config.modules.gaming.steam;
in {
options.modules.gaming.steam.enable = lib.mkEnableOption "steam";
config = lib.mkIf cfg.enable {
hardware.opengl = { # this fixes the "glXChooseVisual failed" bug, context: https://github.com/NixOS/nixpkgs/issues/47932
enable = true;
driSupport32Bit = true;
};
hardware.graphics.enable = true; # this fixes the "glXChooseVisual failed" bug, context: https://github.com/NixOS/nixpkgs/issues/47932
# optionally enable 32bit pulseaudio support if pulseaudio is enabled
hardware.pulseaudio.support32Bit = config.hardware.pulseaudio.enable;
hardware.steam-hardware.enable = true;
# Digital distribution platform for purchasing and playing video games.
programs.steam = {
enable = true;
# Workaround from: https://github.com/NixOS/nixpkgs/issues/236561
package = with pkgs; steam.override { extraPkgs = pkgs: [ attr ]; };
};
environment.systemPackages = with pkgs; [
steam # Digital distribution platform for purchasing and playing video games.
steamtinkerlaunch # Launcher and optimization tool for Steam games.
gamescope # Utility for running games using Valve's Steam Play compatibility layer with improved performance and compatibility.
];

View File

@ -7,6 +7,7 @@ in {
environment.systemPackages = with pkgs; [
pulseaudio # Sound server for Linux and other Unix-like operating systems.
pavucontrol # Simple GTK based mixer for the PulseAudio sound server
];
# rtkit is optional but recommended

View File

@ -3,9 +3,9 @@ self: super: {
mutter = gnomePrev.mutter.overrideAttrs ( old: {
src = super.fetchgit {
url = "https://gitlab.gnome.org/vanvugt/mutter.git";
# GNOME 45: triple-buffering-v4-45
rev = "0b896518b2028d9c4d6ea44806d093fd33793689";
sha256 = "sha256-mzNy5GPlB2qkI2KEAErJQzO//uo8yO0kPQUwvGDwR4w=";
# GNOME 46: triple-buffering-v4-46
rev = "94f500589efe6b04aa478b3df8322eb81307d89f";
sha256 = "sha256-fkPjB/5DPBX06t7yj0Rb3UEuu5b9mu3aS+jhH18+lpI=";
};
});
});

View File

@ -1,4 +1,4 @@
# Dotfiles
# .dotfiles
> My dotfiles... What do you want?
My personal dotfiles repo. Documentation is pretty spotty. Maybe I'll fix that