mirror of
https://github.com/ItsDrike/nixdots
synced 2024-11-14 16:17:17 +00:00
Compare commits
No commits in common. "36db61f2552b5b0f10f1f5adda265804f220e536" and "8808ac6be4b73e0c491f9eb7614bbd2a491f04f9" have entirely different histories.
36db61f255
...
8808ac6be4
|
@ -34,7 +34,6 @@ in
|
||||||
./programs
|
./programs
|
||||||
./impermanence
|
./impermanence
|
||||||
./themes
|
./themes
|
||||||
./services
|
|
||||||
];
|
];
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
|
|
|
@ -11,16 +11,8 @@
|
||||||
in {
|
in {
|
||||||
config = mkIf (builtins.elem devType acceptedTypes) {
|
config = mkIf (builtins.elem devType acceptedTypes) {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
libnotify # send desktop notifications
|
trash-cli
|
||||||
imagemagick # create/edit images
|
bitwarden-cli
|
||||||
trash-cli # interface to freedesktop trashcan
|
|
||||||
bitwarden-cli # pw manager
|
|
||||||
slides # terminal based presentation tool
|
|
||||||
brightnessctl # brightness control
|
|
||||||
pulsemixer # manage audio (TUI)
|
|
||||||
nix-tree # interactively browse nix store
|
|
||||||
glow # render markdown
|
|
||||||
ffmpeg # record, convert and stream audio and video
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,15 +21,12 @@
|
||||||
dnsutils # DNS utilities
|
dnsutils # DNS utilities
|
||||||
dig # DNS utilities
|
dig # DNS utilities
|
||||||
curl # CLI tool for transfering data with URLs
|
curl # CLI tool for transfering data with URLs
|
||||||
lm_sensors # tools for reading hw sensors
|
|
||||||
p7zip # 7zip fork with some improvements
|
|
||||||
|
|
||||||
# Rust replacements
|
# Rust replacements
|
||||||
procs # better ps
|
procs # better ps
|
||||||
ripgrep # better grep
|
ripgrep # better grep
|
||||||
fd # better find
|
fd # better find
|
||||||
du-dust # better du
|
du-dust # better du
|
||||||
skim # fuzzy finder
|
|
||||||
|
|
||||||
# Development
|
# Development
|
||||||
gcc # GNU C compiler
|
gcc # GNU C compiler
|
||||||
|
|
|
@ -4,7 +4,5 @@ _: {
|
||||||
./stremio.nix
|
./stremio.nix
|
||||||
./nomacs.nix
|
./nomacs.nix
|
||||||
./qbittorrent.nix
|
./qbittorrent.nix
|
||||||
./mpv.nix
|
|
||||||
./obs.nix
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
osConfig,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
inherit (lib) mkIf;
|
|
||||||
|
|
||||||
cfg = osConfig.myOptions.home-manager.programs.applications.mpv;
|
|
||||||
in {
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
mpv
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,19 +0,0 @@
|
||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
osConfig,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
inherit (lib) mkIf;
|
|
||||||
|
|
||||||
cfg = osConfig.myOptions.home-manager.programs.applications.obs;
|
|
||||||
in {
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
obs-studio
|
|
||||||
obs-cli
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
|
@ -1,17 +1,16 @@
|
||||||
# Manage $XDG_CONFIG_HOME/mimeapps.list
|
# Manage $XDG_CONFIG_HOME/mimeapps.list
|
||||||
{
|
{
|
||||||
xdg.mimeApps = let
|
xdg.mimeApps = {
|
||||||
|
enable = true;
|
||||||
|
associations.added = let
|
||||||
browser = "firefox.desktop";
|
browser = "firefox.desktop";
|
||||||
textEditor = browser; # nvim doesn't work properly with xdg-open, just use the browser
|
textEditor = browser; # nvim doesn't work properly with xdg-open, just use the browser
|
||||||
emailClient = browser;
|
fileManager = "pcmanfm-qt.desktop";
|
||||||
pdfViewer = browser; # TODO: consider zathura (org.pwmt.zathura.desktop.desktop)
|
archiveManager = "org.gnome.FileRoller.desktop";
|
||||||
fileManager = "pcmanfm-qt.desktop"; # TODO: change
|
|
||||||
archiveManager = "org.kde.ark.desktop";
|
|
||||||
imageViewer = "org.nomacs.ImageLounge.desktop";
|
imageViewer = "org.nomacs.ImageLounge.desktop";
|
||||||
videoPlayer = "mpv.desktop";
|
videoPlayer = "mpv.desktop";
|
||||||
audioPlayer = "mpv.desktop";
|
audioPlayer = "mpv.desktop";
|
||||||
|
in {
|
||||||
associations = {
|
|
||||||
"text/html" = [browser];
|
"text/html" = [browser];
|
||||||
"x-scheme-handler/http" = [browser];
|
"x-scheme-handler/http" = [browser];
|
||||||
"x-scheme-handler/https" = [browser];
|
"x-scheme-handler/https" = [browser];
|
||||||
|
@ -24,9 +23,6 @@
|
||||||
"application/x-extension-xhtml" = [browser];
|
"application/x-extension-xhtml" = [browser];
|
||||||
"application/x-extension-xht" = [browser];
|
"application/x-extension-xht" = [browser];
|
||||||
|
|
||||||
"application/pdf" = [pdfViewer];
|
|
||||||
"x-scheme-handler/mailto" = [emailClient];
|
|
||||||
|
|
||||||
"inode/directory" = [fileManager];
|
"inode/directory" = [fileManager];
|
||||||
"application/zip" = [archiveManager];
|
"application/zip" = [archiveManager];
|
||||||
"application/x-xz-compressed-tar" = [archiveManager];
|
"application/x-xz-compressed-tar" = [archiveManager];
|
||||||
|
@ -35,26 +31,13 @@
|
||||||
"audio/*" = [audioPlayer];
|
"audio/*" = [audioPlayer];
|
||||||
"video/*" = [videoPlayer];
|
"video/*" = [videoPlayer];
|
||||||
|
|
||||||
# The wildcard associations don't work everywhere, so we
|
|
||||||
# still need specific ones
|
|
||||||
"image/jpeg" = [imageViewer];
|
|
||||||
"image/png" = [imageViewer];
|
|
||||||
"image/svg+xml" = [imageViewer];
|
|
||||||
"image/gif" = [imageViewer];
|
|
||||||
"video/mp4" = [videoPlayer];
|
|
||||||
|
|
||||||
"text/plain" = [textEditor];
|
"text/plain" = [textEditor];
|
||||||
"application/json" = [textEditor];
|
"application/json" = [textEditor];
|
||||||
|
|
||||||
"x-scheme-handler/spotify" = ["spotify.desktop"];
|
"x-scheme-handler/spotify" = ["spotify.desktop"];
|
||||||
"x-scheme-handler/tg" = ["telegramdesktop.desktop"];
|
"x-scheme-handler/tg" = ["telegramdesktop.desktop"];
|
||||||
"x-scheme-handler/discord" = ["vesktop.desktop"];
|
|
||||||
"x-scheme-handler/msteams" = ["teams.desktop"]; # I need it for school, don't judge me
|
"x-scheme-handler/msteams" = ["teams.desktop"]; # I need it for school, don't judge me
|
||||||
};
|
};
|
||||||
in {
|
|
||||||
enable = true;
|
|
||||||
associations.added = associations;
|
|
||||||
defaultApplications = associations;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
home.sessionVariables = {
|
home.sessionVariables = {
|
||||||
|
|
|
@ -1,5 +1,3 @@
|
||||||
_: {
|
_: {
|
||||||
imports = [
|
imports = [ ];
|
||||||
./dunst.nix
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,100 +0,0 @@
|
||||||
{
|
|
||||||
lib,
|
|
||||||
osConfig,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
inherit (lib) mkIf;
|
|
||||||
|
|
||||||
cfg = osConfig.myOptions.home-manager.services.dunst;
|
|
||||||
in {
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
services.dunst = {
|
|
||||||
enable = true;
|
|
||||||
iconTheme = {
|
|
||||||
package = config.gtk.iconTheme.package;
|
|
||||||
name = config.gtk.iconTheme.name;
|
|
||||||
};
|
|
||||||
|
|
||||||
settings = {
|
|
||||||
global = {
|
|
||||||
follow = "mouse";
|
|
||||||
width = 270;
|
|
||||||
height = 300;
|
|
||||||
origin = "top-right";
|
|
||||||
offset = "30x30";
|
|
||||||
scale = 0;
|
|
||||||
alignment = "left";
|
|
||||||
vertical_alignment = "center";
|
|
||||||
ellipsize = "middle";
|
|
||||||
padding = 10;
|
|
||||||
horizontal_padding = 10;
|
|
||||||
text_icon_padding = 0;
|
|
||||||
icon_position = "left";
|
|
||||||
min_icon_size = 0;
|
|
||||||
max_icon_size = 32;
|
|
||||||
separator_height = 2;
|
|
||||||
frame_width = 3;
|
|
||||||
frame_color = "#27292c";
|
|
||||||
separator_color = "frame";
|
|
||||||
corner_radius = 0;
|
|
||||||
transparency = 20;
|
|
||||||
word_wrap = "yes";
|
|
||||||
line_height = 0;
|
|
||||||
notification_limit = 3;
|
|
||||||
idle_threshold = 120;
|
|
||||||
history_length = 20;
|
|
||||||
show_age_threshold = 60;
|
|
||||||
markup = "full";
|
|
||||||
format = "<b>%a - %s</b>\\n%b";
|
|
||||||
font = "JetBrainsMono Nerd Font 11";
|
|
||||||
sort = "yes";
|
|
||||||
shrink = "no";
|
|
||||||
sticky_history = "yes";
|
|
||||||
ignore_newline = "no";
|
|
||||||
show_indicators = "yes";
|
|
||||||
stack_duplicates = true;
|
|
||||||
always_run_script = true;
|
|
||||||
hide_duplicate_count = false;
|
|
||||||
ignore_dbusclose = false;
|
|
||||||
force_xwayland = false;
|
|
||||||
force_xinerama = false;
|
|
||||||
mouse_left_click = "do_action, open_url, close_current";
|
|
||||||
mouse_middle_click = "context";
|
|
||||||
mouse_right_click = "close_current";
|
|
||||||
indicate_hidden = "yes";
|
|
||||||
progress_bar = true;
|
|
||||||
progress_bar_height = 30;
|
|
||||||
progress_bar_frame_width = 1;
|
|
||||||
progress_bar_min_width = 150;
|
|
||||||
progress_bar_max_width = 300;
|
|
||||||
title = "Dunst";
|
|
||||||
class = "Dunst";
|
|
||||||
};
|
|
||||||
|
|
||||||
fullscreen_delay_everything = {fullscreen = "delay";};
|
|
||||||
|
|
||||||
urgency_low = {
|
|
||||||
timeout = 5;
|
|
||||||
background = "#1e2137fa";
|
|
||||||
foreground = "#ffffff";
|
|
||||||
highlight = "#fe6c5a";
|
|
||||||
};
|
|
||||||
|
|
||||||
urgency_normal = {
|
|
||||||
timeout = 10;
|
|
||||||
background = "#141c21fa";
|
|
||||||
foreground = "#ffffffff";
|
|
||||||
highlight = "#fe6c5a";
|
|
||||||
};
|
|
||||||
|
|
||||||
urgency_critical = {
|
|
||||||
timeout = 0;
|
|
||||||
background = "#dd130ddd";
|
|
||||||
foreground = "#ffffffff";
|
|
||||||
highlight = "#fe6c5a";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -70,7 +70,6 @@
|
||||||
# Applications
|
# Applications
|
||||||
".config/spotify"
|
".config/spotify"
|
||||||
".config/vesktop"
|
".config/vesktop"
|
||||||
"./config/nomacs"
|
|
||||||
".local/share/Smart Code ltd/Stremio"
|
".local/share/Smart Code ltd/Stremio"
|
||||||
|
|
||||||
# Tools
|
# Tools
|
||||||
|
@ -174,16 +173,10 @@
|
||||||
enable = true;
|
enable = true;
|
||||||
autoStart = true;
|
autoStart = true;
|
||||||
};
|
};
|
||||||
mpv.enable = true;
|
|
||||||
nomacs.enable = true;
|
nomacs.enable = true;
|
||||||
qbittorrent.enable = true;
|
qbittorrent.enable = true;
|
||||||
obs.enable = true;
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
services = {
|
|
||||||
dunst.enable = true;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,6 @@ in
|
||||||
./git.nix
|
./git.nix
|
||||||
./wms.nix
|
./wms.nix
|
||||||
./theme.nix
|
./theme.nix
|
||||||
./services.nix
|
|
||||||
];
|
];
|
||||||
|
|
||||||
options.myOptions.home-manager = {
|
options.myOptions.home-manager = {
|
||||||
|
|
|
@ -35,8 +35,6 @@ in
|
||||||
};
|
};
|
||||||
nomacs.enable = mkEnableOption "Nomacs (Qt-based image viewer)";
|
nomacs.enable = mkEnableOption "Nomacs (Qt-based image viewer)";
|
||||||
qbittorrent.enable = mkEnableOption "Qbittorrent (Free software BitTorrent client)";
|
qbittorrent.enable = mkEnableOption "Qbittorrent (Free software BitTorrent client)";
|
||||||
obs.enable = mkEnableOption "OBS (Free and oepn source software for video recording and live streaming)";
|
|
||||||
mpv.enable = mkEnableOption "MPV (General-purpose media player)";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
tools = {
|
tools = {
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
{ lib, ... }: with lib; let
|
|
||||||
inherit (lib) mkEnableOption mkOption types;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.myOptions.home-manager.services = {
|
|
||||||
dunst.enable = mkEnableOption "Dunst (lightweight notification daemon)";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
Loading…
Reference in a new issue