- Delete homeManagerConfigurations from flake. - Delete laptop nixosConfiguration. - Delete `home-manager/` and `nixos/` directories. - Switch from one general "vars" attrset for variables to using built-for-purpose attrsets for variables, each declared where it makes most sense (e.g. the "sys" attrset will be used for system-specific attributes). - Create `systems/` directory for root-level system configurations and `modules/` directory for re-usable config files. - Consolidate most app and system configuration into the `desktop-environment.nix` and `terminal-environment.nix` files. - Standardize all `.nix` files to nixos config nodes, as opposed to home-manager. May reverse this decision. - Use `${sys.username}` for the username of the primary user of the system. - Use `${usr.${sys.username}}` for attributes related to that user (e.g. realname, email).
39 lines
1.2 KiB
Nix
39 lines
1.2 KiB
Nix
{ ... }: {
|
|
xdg.mimeApps = let
|
|
webBrowser = "zen.desktop";
|
|
emailClient = "proton-mail.desktop";
|
|
|
|
imageViewer = "org.kde.gwenview.desktop";
|
|
musicPlayer = "vlc.desktop";
|
|
videoPlayer = "vlc.desktop";
|
|
|
|
textEditor = "dev.zed.Zed.desktop";
|
|
docViewer = "zen.desktop";
|
|
|
|
fileManager = "org.kde.dolphin.desktop";
|
|
terminal = "org.kde.konsole.desktop";
|
|
archiveManager = "org.kde.ark.desktop";
|
|
in {
|
|
enable = true;
|
|
defaultApplications = {
|
|
"x-scheme-handler/http" = "${webBrowser}";
|
|
"x-scheme-handler/https" = "${webBrowser}";
|
|
"x-scheme-handler/about" = "${webBrowser}";
|
|
"x-scheme-handler/unknown" = "${webBrowser}";
|
|
"application/json" = "${textEditor}";
|
|
"application/pdf" = "${webBrowser}";
|
|
"application/vnd.apple.keynote" = "${textEditor}";
|
|
"application/vnd.ms-publisher" = "${textEditor}";
|
|
"application/x-desktop" = "${textEditor}";
|
|
"application/x-executable" = "${textEditor}";
|
|
"text/css" = "${textEditor}";
|
|
"text/html" = "${textEditor}";
|
|
"text/plain" = "${textEditor}";
|
|
"video/mp4" = "${videoPlayer}";
|
|
"video/x-matroska" = "${videoPlayer}";
|
|
};
|
|
associations.added = {
|
|
};
|
|
};
|
|
}
|