Compare commits

..

9 Commits

14 changed files with 135 additions and 161 deletions

View File

@ -18,8 +18,12 @@
GHCUP_USE_XDG_DIRS = "true"; GHCUP_USE_XDG_DIRS = "true";
__GL_SHADER_DISK_CACHE_PATH = "${cacheHome}/nv";
ANDROID_USER_HOME = "${dataHome}/android"; ANDROID_USER_HOME = "${dataHome}/android";
AZURE_CONFIG_DIR = "${dataHome}/azure"; AZURE_CONFIG_DIR = "${dataHome}/azure";
BZRPATH = "${configHome}/bazaar";
BZR_PLUGIN_PATH = "${dataHome}/bazaar";
BZR_HOME = "${cacheHome}/bazaar";
CARGO_HOME = "${dataHome}/cargo"; CARGO_HOME = "${dataHome}/cargo";
CUDA_CACHE_PATH = "${cacheHome}/nv"; CUDA_CACHE_PATH = "${cacheHome}/nv";
DOCKER_CONFIG = "${configHome}/docker"; DOCKER_CONFIG = "${configHome}/docker";

View File

@ -1,143 +1,121 @@
{ lib, ... }: { lib, ... }:
let let
mime = {
# Applications image = {
google-chrome = "google-chrome.desktop"; apng = "image/apng";
firefox = "firefox.desktop"; avif = "image/avif";
gimp = "gimp.desktop";
inkscape = "org.inkscape.Inkscape.desktop";
vscode = "code.desktop";
mpv = "mpv.desktop";
zathura = "org.pwmt.zathura.desktop";
sxiv = "sxiv.desktop";
font-viewer = "org.gnome.font-viewer.desktop";
# Formats
"3g2-audio" = "audio/3gpp";
"3g2-video" = "video/3gpp";
"3gp-audio" = "audio/3gpp";
"3gp-video" = "video/3gpp";
aac = "audio/aac";
avi = "video/x-msvideo";
bmp = "image/bmp"; bmp = "image/bmp";
gif = "image/gif";
ico = "image/vnd.microsoft.icon";
icox = "image/x-icon";
jpg = "image/jpeg";
jxl = "image/jxl";
pic = "image/x-pict";
png = "image/png";
psd = "image/vnd.adobe.photoshop";
svg = "image/svg+xml";
tif = "image/tif";
tiff = "image/tiff";
webp = "image/webp";
xbm = "image/x-xbitmap";
xpm = "image/x-xpixmap";
};
audio = {
"3g2-audio" = "audio/3gpp";
"3gp-audio" = "audio/3gpp";
aac = "audio/aac";
aiff = "audio/aiff";
flac = "audio/flac";
mkv = "audio/x-matroska";
mpeg = "audio/mpeg"; # NOTE: this is the real mp3, but the other one also exists
mpeg3 = "audio/mpeg3";
mp3 = "audio/mp3";
mp4 = "audio/mp4";
ogg = "audio/ogg";
opus = "audio/opus";
wav = "audio/wav";
wavx = "audio/x-wav";
webm-audio = "audio/webm";
};
video = {
"3g2-video" = "video/3gpp";
"3gp-video" = "video/3gpp";
avi = "video/x-msvideo";
flv = "video/x-flv";
m4v = "video/x-m4v";
mkv = "video/x-matroska";
mov = "video/quicktime";
mp4 = "video/mp4";
mpeg = "video/mpeg";
ogv = "video/ogg";
webm-video = "video/webm";
wmv = "video/x-ms-wmv";
};
font = {
otf = "font/otf";
ttf = "font/ttf";
woff = "font/woff";
woff2 = "font/woff2";
};
documents = {
azv = "application/vnd.amazon.ebook";
cbr = "application/vnd.comicbook+rar"; cbr = "application/vnd.comicbook+rar";
cbrx = "application/x-cbr"; cbrx = "application/x-cbr";
cbz = "application/vnd.comicbook+zip"; cbz = "application/vnd.comicbook+zip";
cbzx = "application/x-cbz"; cbzx = "application/x-cbz";
djvu = "image/vnd.djvu"; djvu = "image/vnd.djvu";
epub = "application/epub+zip"; epub = "application/epub+zip";
flv = "video/x-flv";
gif = "image/gif";
html = "text/html";
http = "x-scheme-handler/http";
https = "x-scheme-handler/https";
ico = "image/vnd.microsoft.icon";
icox = "image/x-icon";
ini = "application/x-wine-extension-ini";
jpg = "image/jpeg";
m4v = "video/x-m4v";
mkv = "video/x-matroska";
mov = "video/quicktime";
mp3 = "audio/mpeg";
mp4 = "video/mp4";
mpeg = "video/mpeg";
ogg = "audio/ogg";
ogv = "video/ogg";
opus = "audio/opus";
otf = "font/otf";
pdf = "application/pdf"; pdf = "application/pdf";
pic = "image/x-pict"; };
png = "image/png";
psd = "image/vnd.adobe.photoshop"; code = {
svg = "image/svg+xml"; css = "text/css";
tiff = "image/tiff"; csv = "text/csv";
ttf = "font/ttf"; html = "text/html";
txt = "text/plain"; txt = "text/plain";
url = "application/x-mswinurl";
wav = "audio/wav";
wavx = "audio/x-wav";
webm-audio = "audio/webm";
webm-video = "video/webm";
webp = "image/webp";
wmv = "video/x-ms-wmv";
woff = "font/woff";
woff2 = "font/woff2";
xbm = "image/x-xbitmap";
xcf = "image/x-xcf";
xhtml = "application/xhtml+xml"; xhtml = "application/xhtml+xml";
xml = "text/xml"; xml = "text/xml";
xpm = "image/x-xpixmap"; };
misc = {
http = "x-scheme-handler/http";
https = "x-scheme-handler/https";
wine-ini = "application/x-wine-extension-ini";
ics = "text/calendar";
url = "application/x-mswinurl";
};
};
# Generalizations # Applications
audio-player = mpv; firefox = "firefox.desktop";
gui-text-editor = vscode; vscode = "code.desktop";
image-viewer = sxiv; mpv = "mpv.desktop";
pdf-viewer = zathura; zathura = "org.pwmt.zathura.desktop";
video-player = mpv; sxiv = "sxiv.desktop";
web-browser = firefox; font-viewer = "org.gnome.font-viewer.desktop";
in { in {
xdg.configFile."mimeapps.list".force = true; xdg.configFile."mimeapps.list".force = true;
xdg.mimeApps = { xdg.mimeApps = {
enable = true; enable = true;
# associations.added = {}; # associations.added = {};
# associations.removed = {}; # associations.removed = {};
defaultApplications = { defaultApplications =
${"3g2-audio"} = audio-player; (lib.mapAttrs' (_: v: lib.nameValuePair v sxiv) mime.image)
${"3g2-video"} = video-player; // (lib.mapAttrs' (_: v: lib.nameValuePair v mpv) mime.audio)
${"3gp-audio"} = audio-player; // (lib.mapAttrs' (_: v: lib.nameValuePair v mpv) mime.video)
${"3gp-video"} = video-player; // (lib.mapAttrs' (_: v: lib.nameValuePair v font-viewer) mime.font)
${aac} = audio-player; // (lib.mapAttrs' (_: v: lib.nameValuePair v zathura) mime.documents)
${avi} = video-player; // (lib.mapAttrs' (_: v: lib.nameValuePair v vscode) mime.code)
${bmp} = image-viewer; // {
${cbrx} = zathura; ${mime.misc.http} = firefox;
${cbr} = zathura; ${mime.misc.https} = firefox;
${cbzx} = zathura; ${mime.misc.wine-ini} = vscode;
${cbz} = zathura; ${mime.misc.ics} = vscode;
${djvu} = pdf-viewer; ${mime.misc.url} = firefox;
${epub} = zathura;
${flv} = video-player;
${gif} = image-viewer;
${html} = web-browser;
${https} = web-browser;
${http} = web-browser;
${icox} = image-viewer;
${ico} = image-viewer;
${jpg} = image-viewer;
${m4v} = video-player;
${mkv} = video-player;
${mov} = video-player;
${mp3} = audio-player;
${mp4} = video-player;
${mpeg} = video-player;
${ogg} = audio-player;
${ogv} = video-player;
${opus} = audio-player;
${otf} = font-viewer;
${pdf} = pdf-viewer;
${pic} = image-viewer;
${png} = image-viewer;
${psd} = gimp;
${svg} = image-viewer;
${tiff} = image-viewer;
${ttf} = font-viewer;
${txt} = gui-text-editor;
${url} = web-browser;
${wav} = audio-player;
${webm-audio} = audio-player;
${webm-video} = video-player;
${webp} = image-viewer;
${wmv} = video-player;
${woff2} = font-viewer;
${woff} = font-viewer;
${xbm} = image-viewer;
${xcf} = gimp;
${xhtml} = web-browser;
${xml} = gui-text-editor;
${xpm} = image-viewer;
}; };
}; };
} }

View File

@ -6,9 +6,9 @@ in {
./shell.nix ./shell.nix
./packages.nix ./packages.nix
./config/ssh
./config/xdg ./config/xdg
./programs/aria2.nix
./programs/atuin.nix ./programs/atuin.nix
./programs/comma.nix ./programs/comma.nix
./programs/direnv ./programs/direnv
@ -19,6 +19,7 @@ in {
./programs/less.nix ./programs/less.nix
./programs/neovim ./programs/neovim
./programs/nix-index ./programs/nix-index
./programs/ssh
./programs/tealdeer ./programs/tealdeer
./programs/tmux.nix ./programs/tmux.nix
./programs/zsh ./programs/zsh

4
home/programs/aria2.nix Normal file
View File

@ -0,0 +1,4 @@
{ ... }:
{
programs.aria2.enable = true;
}

View File

@ -8,6 +8,7 @@ let
{ {
names = [ "hildring" "pvv-login" "pvv" ]; names = [ "hildring" "pvv-login" "pvv" ];
proxyJump = lib.mkDefault null; proxyJump = lib.mkDefault null;
addressFamily = "inet";
} }
"dagali" "dagali"
"drolsum" "drolsum"
@ -85,6 +86,7 @@ in
"pvv-git git.pvv.ntnu.no" = { "pvv-git git.pvv.ntnu.no" = {
hostname = "git.pvv.ntnu.no"; hostname = "git.pvv.ntnu.no";
user = "gitea"; user = "gitea";
addressFamily = "inet";
port = 2222; port = 2222;
proxyJump = "pvv"; proxyJump = "pvv";
}; };

View File

@ -296,7 +296,7 @@ in
# jock.svg # jock.svg
# ms-azuretools.vscode-docker # ms-azuretools.vscode-docker
# ms-toolsai.jupyter # ms-toolsai.jupyter
ms-vscode-remote.remote-ssh # ms-vscode-remote.remote-ssh
# ms-vsliveshare.vsliveshare # ms-vsliveshare.vsliveshare
bbenoist.nix bbenoist.nix
christian-kohler.path-intellisense christian-kohler.path-intellisense
@ -318,8 +318,12 @@ in
rust-lang.rust-analyzer rust-lang.rust-analyzer
mkhl.direnv mkhl.direnv
waderyan.gitblame waderyan.gitblame
# vs-liveshare
vscodevim.vim vscodevim.vim
hbenl.vscode-test-explorer
# vitaliymaz.vscode-svg-previewer
ms-vscode.test-adapter-converter
visualstudioexptteam.vscodeintellicode
tamasfe.even-better-toml
] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ ] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
{ {
name = "monokai-st3"; name = "monokai-st3";
@ -327,47 +331,17 @@ in
version = "0.2.0"; version = "0.2.0";
sha256 = "1rvz5hlrfshy9laybxzvrdklx328s13j0lb8ljbda9zkadi3wcad"; sha256 = "1rvz5hlrfshy9laybxzvrdklx328s13j0lb8ljbda9zkadi3wcad";
} }
{
name = "vscode-svgviewer";
publisher = "cssho";
version = "2.0.0";
sha256 = "06swlqiv3gc7plcbmzz795y6zwpxsdhg79k1n3jj6qngfwnv2p6z";
}
{ {
name = "comment-anchors"; name = "comment-anchors";
publisher = "ExodiusStudios"; publisher = "ExodiusStudios";
version = "1.10.3"; version = "1.10.4";
sha256 = "sha256-IyiiS4jpcghwKI0j8s69uGNZlKnZ0o78ZCT0oZeJER0="; sha256 = "sha256-FvfjPpQsgCsnY1BylhLCM/qDQChf9/iTr3cKkCGfMVI=";
}
{
name = "vscode-test-explorer";
publisher = "hbenl";
version = "2.21.1";
sha256 = "022lnkq278ic0h9ggpqcwb3x3ivpcqjimhgirixznq0zvwyrwz3w";
} }
{ {
name = "vscode-gutter-preview"; name = "vscode-gutter-preview";
publisher = "kisstkondoros"; publisher = "kisstkondoros";
version = "0.29.0"; version = "0.31.2";
sha256 = "00vibv9xmhwaqiqzp0y2c246pqiqfjsw4bqx4vcdd67pz1wnqhg1"; sha256 = "sha256-2/RvDSsVL06UmNG9HchXaJMJ4FYtnpuJ2Bn53JVv1t8=";
}
{
name = "test-adapter-converter";
publisher = "ms-vscode";
version = "0.1.9";
sha256 = "sha256-M53jhAVawk2yCeSrLkWrUit3xbDc0zgCK2snbK+BaSs=";
}
# {
# name = "indent-rainbow";
# publisher = "oderwat";
# version = "8.2.2";
# sha256 = "1xxljwh66f21fzmhw8icrmxxmfww1s67kf5ja65a8qb1x1rhjjgf";
# }
{
name = "vscodeintellicode";
publisher = "VisualStudioExptTeam";
version = "1.2.30";
sha256 = "sha256-f2Gn+W0QHN8jD5aCG+P93Y+JDr/vs2ldGL7uQwBK4lE=";
} }
{ {
name = "keyboard-quickfix"; name = "keyboard-quickfix";

View File

@ -128,6 +128,8 @@ in {
enable = !config.machineVars.headless; enable = !config.machineVars.headless;
touchpad.disableWhileTyping = true; touchpad.disableWhileTyping = true;
}; };
irqbalance.enable = true;
}; };
programs = { programs = {

View File

@ -2,6 +2,7 @@
{ {
imports = [ imports = [
./services/avahi.nix ./services/avahi.nix
./services/btrfs.nix
./services/docker.nix ./services/docker.nix
./services/libvirtd.nix ./services/libvirtd.nix
./services/logiops.nix ./services/logiops.nix

View File

@ -0,0 +1,4 @@
{ ... }:
{
services.btrfs.autoScrub.enable = true;
}

View File

@ -1,3 +1,5 @@
# Dogfooding of https://github.com/NixOS/nixpkgs/pull/251706
{ bazel { bazel
, buildBazelPackage , buildBazelPackage
, fcitx5 , fcitx5

View File

@ -1,3 +1,5 @@
# Dogfooding of https://github.com/NixOS/nixpkgs/pull/251706
{ bazel { bazel
, buildBazelPackage , buildBazelPackage
, fetchFromGitHub , fetchFromGitHub