nixos_dots/archive/default-apps.nix
2024-12-12 19:12:55 +03:00

121 lines
No EOL
8.9 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Команды для терминала
# Узнать тип файла - xdg-mime query filetype foo.pdf
# Узнать нынешнее дефолт приложения - xdg-mime query default application/pdf
# Узнать имя приложения. Для примера взять evince - fd evince.desktop /
# Выведет пути, по которым можно понять как называется приложение
# В список [] можно через пробел добавить другие варианты. Если первая прога не откроет, то попытается вторая
# Список mime types смотрел тут https://mimetype.io/all-types
# Нагуглить значение "x-scheme-handler" невозможно. Как я понял, это кастом типы
##############################################################################
# Как система готова, то замени имена прог на реальные. Сейчас на абум стоят #
##############################################################################
{
xdg.mimeApps = { # Конфиг для `~/.config/mimeapps.list`
enable = true;
defaultApplications = { # Стандартные приложения для открытия нужного файла
# Browser
"application/x-extension-htm" = [ "librewolf.desktop" ];
"application/x-extension-html" = [ "librewolf.desktop" ];
"application/x-extension-shtml" = [ "librewolf.desktop" ];
"application/x-extension-xht" = [ "librewolf.desktop" ];
"application/x-extension-xhtml" = [ "librewolf.desktop" ];
"application/xhtml+xml" = [ "librewolf.desktop" ];
"x-scheme-handler/about" = [ "librewolf.desktop" ];
"x-scheme-handler/chrome" = [ "librewolf.desktop" ];
"x-scheme-handler/http" = [ "librewolf.desktop" ];
"x-scheme-handler/https" = [ "librewolf.desktop" ];
"x-scheme-handler/unknown" = [ "librewolf.desktop" ];
# Images
"image/*" = [ "qview.desktop" "imv.desktop" ];
"image/avif" = [ "qview.desktop" "imv.desktop" ];
"image/gif" = [ "qview.desktop" "imv.desktop" ];
"image/jpeg" = [ "qview.desktop" "imv.desktop" ]; # Обычный jpeg, прогрузка сверху вниз
"image/pjpeg" = [ "qview.desktop" "imv.desktop" ]; # Сначала размытый и постепенной лучше видно, для медленного инета
"image/apng" = [ "qview.desktop" "imv.desktop" ]; # Анимированный png
"image/png" = [ "qview.desktop" "imv.desktop" ];
"image/svg+xml" = [ "qview.desktop" "imv.desktop" ];
"image/webp" = [ "qview.desktop" "imv.desktop" ];
"image/x-icon" = [ "qview.desktop" "imv.desktop" ];
"image/vnd.microsoft.icon" = [ "qview.desktop" "imv.desktop" ];
# Video
"video/*" = [ "mpv.desktop" ];
"video/mp4" = [ "mpv.desktop" ];
"video/mpeg" = [ "mpv.desktop" ];
"video/quicktime" = [ "mpv.desktop" ];
"video/webm" = [ "mpv.desktop" ];
"video/x-matroska" = [ "mpv.desktop" ];
# Audio
"audio/*" = [ "mpv.desktop" ];
"audio/aac" = [ "mpv.desktop" ];
"audio/flac" = [ "mpv.desktop" ];
"audio/mp4" = [ "mpv.desktop" ];
"audio/mpeg" = [ "mpv.desktop" ];
"audio/ogg" = [ "mpv.desktop" ];
"audio/opus" = [ "mpv.desktop" ];
"audio/vnd.wav" = [ "mpv.desktop" ];
"audio/webm" = [ "mpv.desktop" ];
"audio/x-matroska" = [ "mpv.desktop" ];
"audio/x-mpegurl" = [ "mpv.desktop" ]; # Для .m3u. Это файл-плейлист
"audio/x-opus+ogg" = [ "mpv.desktop" ]; # What's this? Why not "audio/ogg" and "audio/opus"?
# Text
"text/*" = [ "nvim.desktop" "code.desktop" ]; # Надо ли заменять nvim и всё что ниже на NixVim?
"text/css" = [ "nvim.desktop" "code.desktop" ];
"text/csv" = [ "nvim.desktop" "code.desktop" ];
"text/html" = [ "nvim.desktop" "code.desktop" "librewolf.desktop" "firefox.desktop" "chromium.desktop" ];
"text/javascript" = [ "nvim.desktop" "code.desktop" ];
"text/markdown" = [ "nvim.desktop" "code.desktop" ];
"text/plain" = [ "nvim.desktop" "code.desktop" ];
"text/x-asm" = [ "nvim.desktop" "code.desktop" ];
"text/x-c" = [ "nvim.desktop" "code.desktop" ];
"text/x-python" = [ "nvim.desktop" "code.desktop" ];
"application/json" = [ "nvim.desktop" "code.desktop" "librewolf.desktop" "firefox.desktop" "chromium.desktop" ];
"application/x-sh" = [ "nvim.desktop" "code.desktop" ];
"application/x-shellscript" = [ "nvim.desktop" "code.desktop" ];
"application/xml" = [ "nvim.desktop" "code.desktop" ];
"application/yaml" = [ "nvim.desktop" "code.desktop" ];
# Мб потом добавить для docs варианты и разные виды архивов и ebook
# Other
"application/pdf" = [ "org.gnome.Evince.desktop" ];
"application/x-zerosize" = [ "nvim.desktop" "code.desktop" ]; # Файл нулевого размера
"application/zip" = [ "ark.desktop" ];
"application/x-bittorrent" = [ "qbittorrent.desktop" ];
"x-scheme-handler/magnet" = [ "qbittorrent.desktop" ];
"inode/directory" = [ "thunar.desktop" ];
"x-scheme-handler/mailto" = [ "thunderbird.desktop" ];
"x-scheme-handler/jetbrains" = [ "jetbrains-toolbox.desktop" ];
};
associations.added = { # Дополнительные приложения для нужного файла. Будет в меню "Открыть с помощью"
# Images
"image/*" = [ "qview.desktop" "imv.desktop" ];
"image/avif" = [ "qview.desktop" "imv.desktop" ];
"image/gif" = [ "qview.desktop" "imv.desktop" ];
"image/jpeg" = [ "qview.desktop" "imv.desktop" ]; # Обычный jpeg, прогрузка сверху вниз
"image/pjpeg" = [ "qview.desktop" "imv.desktop" ]; # Сначала размытый и постепенной лучше видно, для медленного инета
"image/apng" = [ "qview.desktop" "imv.desktop" ]; # Анимированный png
"image/png" = [ "qview.desktop" "imv.desktop" ];
"image/svg+xml" = [ "qview.desktop" "imv.desktop" ];
"image/webp" = [ "qview.desktop" "imv.desktop" ];
"image/x-icon" = [ "qview.desktop" "imv.desktop" ];
"image/vnd.microsoft.icon" = [ "qview.desktop" "imv.desktop" ];
# Text
"text/*" = [ "nvim.desktop" "code.desktop" ]; # Надо ли заменять nvim и всё что ниже на NixVim?
"text/css" = [ "nvim.desktop" "code.desktop" ];
"text/csv" = [ "nvim.desktop" "code.desktop" ];
"text/html" = [ "nvim.desktop" "code.desktop" "librewolf.desktop" "firefox.desktop" "chromium.desktop" ];
"text/javascript" = [ "nvim.desktop" "code.desktop" ];
"text/markdown" = [ "nvim.desktop" "code.desktop" ];
"text/plain" = [ "nvim.desktop" "code.desktop" ];
"text/x-asm" = [ "nvim.desktop" "code.desktop" ];
"text/x-c" = [ "nvim.desktop" "code.desktop" ];
"text/x-python" = [ "nvim.desktop" "code.desktop" ];
"application/json" = [ "nvim.desktop" "code.desktop" "librewolf.desktop" "firefox.desktop" "chromium.desktop" ];
"application/x-sh" = [ "nvim.desktop" "code.desktop" ];
"application/x-shellscript" = [ "nvim.desktop" "code.desktop" ];
"application/xml" = [ "nvim.desktop" "code.desktop" ];
"application/yaml" = [ "nvim.desktop" "code.desktop" ];
};
};
}