Manage mimeapps via home-manager
This commit is contained in:
@@ -1,21 +0,0 @@
|
||||
[Added Associations]
|
||||
video/x-matroska=vlc.desktop;
|
||||
audio/flac=vlc.desktop;
|
||||
image/jpeg=feh.desktop;
|
||||
video/x-msvideo=vlc.desktop;
|
||||
text/vnd.trolltech.linguist=vlc.desktop;
|
||||
audio/mpeg=vlc.desktop;
|
||||
application/pdf=okularApplication_pdf.desktop;
|
||||
image/png=okularApplication_kimgio.desktop;
|
||||
video/mp4=vlc.desktop;org.gnome.Totem.desktop;
|
||||
x-scheme-handler/magnet=userapp-transmission-gtk-24GQLZ.desktop;
|
||||
element=element-desktop.desktop
|
||||
|
||||
[Default Applications]
|
||||
text/html=google-chrome.desktop
|
||||
x-scheme-handler/http=google-chrome.desktop
|
||||
x-scheme-handler/https=google-chrome.desktop
|
||||
x-scheme-handler/about=google-chrome.desktop
|
||||
x-scheme-handler/unknown=google-chrome.desktop
|
||||
x-scheme-handler/magnet=userapp-transmission-gtk-24GQLZ.desktop
|
||||
x-scheme-handler/element=element-desktop.desktop
|
||||
@@ -5,6 +5,7 @@ makeEnable config "myModules.desktop" true {
|
||||
./fonts.nix
|
||||
./hyprland.nix
|
||||
./keyd.nix
|
||||
./xremap.nix
|
||||
];
|
||||
|
||||
services.xserver = {
|
||||
@@ -62,6 +63,7 @@ makeEnable config "myModules.desktop" true {
|
||||
kdePackages.dolphin
|
||||
|
||||
feh
|
||||
gthumb
|
||||
firefox
|
||||
cheese
|
||||
kdePackages.kleopatra
|
||||
@@ -82,8 +84,7 @@ makeEnable config "myModules.desktop" true {
|
||||
simplescreenrecorder
|
||||
skippy-xd
|
||||
synergy
|
||||
# TODO: reenable
|
||||
# transmission_3-gtk
|
||||
transmission_4-gtk
|
||||
vlc
|
||||
thunar
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ pkgs, ... }:
|
||||
{ pkgs, lib, nixos, ... }:
|
||||
{
|
||||
# Automatic garbage collection of old home-manager generations
|
||||
nix.gc = {
|
||||
@@ -20,6 +20,38 @@
|
||||
static_history = []
|
||||
'';
|
||||
|
||||
xdg.mimeApps = lib.mkIf nixos.config.myModules.desktop.enable {
|
||||
enable = true;
|
||||
|
||||
associations.added = {
|
||||
"video/x-matroska" = "vlc.desktop";
|
||||
"audio/flac" = "vlc.desktop";
|
||||
"image/jpeg" = "feh.desktop";
|
||||
"video/x-msvideo" = "vlc.desktop";
|
||||
"text/vnd.trolltech.linguist" = "vlc.desktop";
|
||||
"audio/mpeg" = "vlc.desktop";
|
||||
"application/pdf" = "okularApplication_pdf.desktop";
|
||||
"image/png" = "okularApplication_kimgio.desktop";
|
||||
"video/mp4" = [ "vlc.desktop" "org.gnome.Totem.desktop" ];
|
||||
"x-scheme-handler/magnet" = "userapp-transmission-gtk-24GQLZ.desktop";
|
||||
"element" = "element-desktop.desktop";
|
||||
};
|
||||
|
||||
defaultApplications = {
|
||||
"text/html" = "google-chrome.desktop";
|
||||
"x-scheme-handler/http" = "google-chrome.desktop";
|
||||
"x-scheme-handler/https" = "google-chrome.desktop";
|
||||
"x-scheme-handler/about" = "google-chrome.desktop";
|
||||
"x-scheme-handler/unknown" = "google-chrome.desktop";
|
||||
"x-scheme-handler/magnet" = "userapp-transmission-gtk-24GQLZ.desktop";
|
||||
"x-scheme-handler/element" = "element-desktop.desktop";
|
||||
};
|
||||
|
||||
defaultApplicationPackages = [
|
||||
pkgs.gthumb
|
||||
];
|
||||
};
|
||||
|
||||
xsession = {
|
||||
enable = true;
|
||||
preferStatusNotifierItems = true;
|
||||
|
||||
32
nixos/xremap.nix
Normal file
32
nixos/xremap.nix
Normal file
@@ -0,0 +1,32 @@
|
||||
{ config, lib, pkgs, makeEnable, ... }:
|
||||
makeEnable config "myModules.xremap" true {
|
||||
hardware.uinput.enable = true;
|
||||
boot.kernelModules = [ "uinput" ];
|
||||
|
||||
services.udev.extraRules = lib.mkAfter ''
|
||||
KERNEL=="uinput", GROUP="input", TAG+="uaccess"
|
||||
'';
|
||||
|
||||
environment.etc."xremap/config.yml".text = ''
|
||||
keymap:
|
||||
- name: Chrome emacs-ish
|
||||
application:
|
||||
only: [Google-chrome, Google-chrome-stable, google-chrome, Chromium, chromium]
|
||||
remap:
|
||||
C-a: Home
|
||||
C-e: End
|
||||
Alt-b: C-Left
|
||||
Alt-f: C-Right
|
||||
'';
|
||||
|
||||
environment.systemPackages = [ pkgs.xremap ];
|
||||
|
||||
systemd.user.services.xremap = {
|
||||
description = "xremap key remapper";
|
||||
wantedBy = [ "default.target" ];
|
||||
serviceConfig = {
|
||||
ExecStart = "${pkgs.xremap}/bin/xremap /etc/xremap/config.yml --watch";
|
||||
Restart = "on-failure";
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user