117 lines
2.9 KiB
Nix
117 lines
2.9 KiB
Nix
{ config, ... }:
|
|
let
|
|
homeModules = config.flake.modules.homeManager;
|
|
vivaldiPackage = pkgs: pkgs.vivaldi;
|
|
nautilusPackage = pkgs: pkgs.nautilus;
|
|
in
|
|
{
|
|
flake.modules.homeManager.browser-vivaldi =
|
|
{ pkgs, ... }:
|
|
{
|
|
home.packages = [ (vivaldiPackage pkgs) ];
|
|
};
|
|
|
|
flake.modules.homeManager.primary-browser-vivaldi =
|
|
{ lib, pkgs, ... }:
|
|
{
|
|
imports = [ homeModules.browser-vivaldi ];
|
|
|
|
meta.desktop.browserCommand = lib.getExe (vivaldiPackage pkgs);
|
|
home.sessionVariables.BROWSER = lib.getExe (vivaldiPackage pkgs);
|
|
xdg.mimeApps.defaultApplicationPackages = [ (vivaldiPackage pkgs) ];
|
|
};
|
|
|
|
flake.modules.homeManager.file-manager-nautilus =
|
|
{ pkgs, ... }:
|
|
{
|
|
home.packages = [ (nautilusPackage pkgs) ];
|
|
};
|
|
|
|
flake.modules.homeManager.primary-file-manager-nautilus =
|
|
{ lib, pkgs, ... }:
|
|
{
|
|
imports = [ homeModules.file-manager-nautilus ];
|
|
|
|
meta.desktop.fileManagerCommand = lib.getExe (nautilusPackage pkgs);
|
|
xdg.mimeApps.defaultApplicationPackages = [ (nautilusPackage pkgs) ];
|
|
};
|
|
|
|
flake.modules.homeManager.image-viewer-imv = {
|
|
programs.imv.enable = true;
|
|
};
|
|
|
|
flake.modules.homeManager.default-image-viewer-imv =
|
|
{ pkgs, ... }:
|
|
{
|
|
imports = [ homeModules.image-viewer-imv ];
|
|
|
|
xdg.mimeApps.defaultApplicationPackages = [ pkgs.imv ];
|
|
};
|
|
|
|
flake.modules.homeManager.document-viewer-sioyek = {
|
|
programs.sioyek.enable = true;
|
|
};
|
|
|
|
flake.modules.homeManager.default-document-viewer-sioyek =
|
|
{ pkgs, ... }:
|
|
{
|
|
imports = [ homeModules.document-viewer-sioyek ];
|
|
|
|
xdg.mimeApps.defaultApplicationPackages = [ pkgs.sioyek ];
|
|
};
|
|
|
|
flake.modules.homeManager.workstation-apps =
|
|
{ pkgs, ... }:
|
|
{
|
|
home.packages = with pkgs; [
|
|
postman
|
|
spotify
|
|
calcure
|
|
planify
|
|
unzip
|
|
gimp
|
|
dbeaver-bin
|
|
];
|
|
};
|
|
|
|
flake.modules.homeManager.xdg =
|
|
{ config, ... }:
|
|
let
|
|
homeDir = config.home.homeDirectory;
|
|
localDir = "${homeDir}/.local";
|
|
mediaDir = "${homeDir}/media";
|
|
in
|
|
{
|
|
home.preferXdgDirectories = true;
|
|
|
|
xdg = {
|
|
enable = true;
|
|
|
|
cacheHome = "${localDir}/cache";
|
|
configHome = "${homeDir}/.config";
|
|
dataHome = "${localDir}/share";
|
|
stateHome = "${localDir}/state";
|
|
|
|
userDirs = {
|
|
enable = true;
|
|
createDirectories = true;
|
|
setSessionVariables = true;
|
|
|
|
download = "${homeDir}/downloads";
|
|
documents = "${homeDir}/documents";
|
|
projects = "${homeDir}/dev";
|
|
music = "${mediaDir}/music";
|
|
pictures = "${mediaDir}/images";
|
|
videos = "${mediaDir}/videos";
|
|
desktop = "${localDir}/desktop";
|
|
publicShare = "${localDir}/public";
|
|
templates = "${localDir}/templates";
|
|
};
|
|
|
|
mimeApps = {
|
|
enable = true;
|
|
};
|
|
};
|
|
};
|
|
}
|