Overhaul luna complete
7
modules/wm/default.nix
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
{inputs, ...}: {
|
||||
imports = [
|
||||
./gnome
|
||||
./plasma
|
||||
./qtile
|
||||
];
|
||||
}
|
||||
138
modules/wm/gnome/config.nix
Normal file
|
|
@ -0,0 +1,138 @@
|
|||
{pkgs, ...}: {
|
||||
dconf.settings = {
|
||||
"org/gnome/desktop/peripherals/touchpad" = {
|
||||
natural-scroll = false;
|
||||
};
|
||||
|
||||
"org/gnome/desktop/interface" = {
|
||||
color-scheme = "prefer-dark";
|
||||
enable-hot-corners = false;
|
||||
show-battery-percentage = true;
|
||||
};
|
||||
|
||||
"org/gnome/desktop/search-providers" = {
|
||||
disabled = [
|
||||
"org.gnome.seahorse.Application.desktop"
|
||||
"org.gnome.Photos.desktop"
|
||||
"org.gnome.Epiphany.desktop"
|
||||
"org.gnome.clocks.desktop"
|
||||
"org.gnome.Contacts.desktop"
|
||||
"org.gnome.Calendar.desktop"
|
||||
];
|
||||
sort-order = [
|
||||
"org.gnome.Settings.desktop"
|
||||
"org.gnome.Documents.desktop"
|
||||
"org.gnome.Calculator.desktop"
|
||||
"org.gnome.Characters.desktop"
|
||||
"org.gnome.Contacts.desktop"
|
||||
"org.gnome.Nautilus.desktop"
|
||||
"org.gnome.Calendar.desktop"
|
||||
"org.gnome.clocks.desktop"
|
||||
"org.gnome.seahorse.Application.desktop"
|
||||
"org.gnome.Photos.desktop"
|
||||
];
|
||||
};
|
||||
|
||||
"org/gnome/desktop/wm/preferences" = {
|
||||
num-workspaces = 3;
|
||||
};
|
||||
|
||||
"org/gnome/shell" = {
|
||||
favorite-apps = [
|
||||
"firefox.desktop"
|
||||
"org.gnome.Console.desktop"
|
||||
"org.gnome.Nautilus.desktop"
|
||||
"spotify.desktop"
|
||||
"com.github.eneshecan.WhatsAppForLinux.desktop"
|
||||
"discord.desktop"
|
||||
];
|
||||
enabled-extensions = [
|
||||
"just-perfection-desktop@just-perfection"
|
||||
"window-list@gnome-shell-extensions.gcampax.github.com"
|
||||
"auto-move-windows@gnome-shell-extensions.gcampax.github.com"
|
||||
];
|
||||
disable-user-extensions = false;
|
||||
};
|
||||
|
||||
"org/gnome/shell/extensions/just-perfection" = {
|
||||
activities-button = false;
|
||||
app-menu = false;
|
||||
app-menu-label = false;
|
||||
ripple-box = false;
|
||||
windows-demands-attention-focus = true;
|
||||
switcher-popup-delay = true;
|
||||
animation = 5;
|
||||
alt-tab-small-icon-size = 64;
|
||||
alt-tab-window-preview-size = 256;
|
||||
};
|
||||
|
||||
"org/gnome/shell/extensions/auto-move-windows" = {
|
||||
application-list = [
|
||||
"com.github.eneshecan.WhatsAppForLinux.desktop:2"
|
||||
"discord.desktop:2"
|
||||
"spotify.desktop:2"
|
||||
"parsecd.desktop:3"
|
||||
];
|
||||
};
|
||||
|
||||
"org/gnome/settings-daemon/plugins/power" = {
|
||||
power-button-action = "nothing";
|
||||
sleep-inactive-ac-type = "nothing";
|
||||
};
|
||||
|
||||
"org/gnome/mutter" = {
|
||||
edge-tiling = true;
|
||||
dynamic-workspaces = false;
|
||||
center-new-windows = true;
|
||||
};
|
||||
|
||||
"org/gnome/tweaks" = {
|
||||
show-extensions-notice = false;
|
||||
clock-show-weekday = true;
|
||||
clock-show-seconds = true;
|
||||
show-weekdate = true;
|
||||
};
|
||||
|
||||
"org/gnome/shell/extensions/window-list" = {
|
||||
show-on-all-monitors = true;
|
||||
};
|
||||
|
||||
# Keybindings
|
||||
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = {
|
||||
binding = ["<Super>t"];
|
||||
command = "kgx";
|
||||
name = "Console";
|
||||
};
|
||||
|
||||
"org/gnome/desktop/wm/keybindings" = {
|
||||
switch-applications = ["<Control><Super><Alt>Z"];
|
||||
switch-applications-backward = ["<Control><Super><Alt><Shift>Z"];
|
||||
switch-windows = ["<Alt>Tab"];
|
||||
switch-windows-backward = ["<Shift><Alt>Tab"];
|
||||
minimize = ["<Super>Down"];
|
||||
toggle-maximized = ["<Super>Up"];
|
||||
close = ["<Alt>F4"];
|
||||
panel-run-dialog = ["<Alt>F2"];
|
||||
switch-to-workspace-left = ["<Control><Super>Left"];
|
||||
switch-to-workspace-right = ["<Control><Super>Right"];
|
||||
};
|
||||
|
||||
"org/gnome/settings-daemon/plugins/media-keys" = {
|
||||
screensaver = ["<Super>l"];
|
||||
home = ["<Super>e"];
|
||||
custom-keybindings = [
|
||||
"/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/"
|
||||
];
|
||||
};
|
||||
|
||||
"org/gnome/shell/keybindings" = {
|
||||
screenshot = ["Print"];
|
||||
show-screenshot-ui = ["<Shift><Super>s"];
|
||||
toggle-message-tray = ["<Super>v"];
|
||||
};
|
||||
|
||||
"org/gnome/mutter/wayland/keybindings" = {
|
||||
restore-shortcuts = "disabled";
|
||||
};
|
||||
};
|
||||
}
|
||||
46
modules/wm/gnome/default.nix
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit (lib) mkEnableOption mkIf mkOption types;
|
||||
cfg = config.horseman.wm.gnome;
|
||||
in {
|
||||
options = {
|
||||
horseman.desktop.gnome = {
|
||||
enable = mkEnableOption "Gnome";
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
services.xserver = {
|
||||
enable = true;
|
||||
desktopManager.gnome.enable = true;
|
||||
};
|
||||
|
||||
environment.gnome.excludePackages = with pkgs; [
|
||||
gnome-calendar
|
||||
gnome-characters
|
||||
nautilus
|
||||
gnome-clocks
|
||||
gnome-contacts
|
||||
evince
|
||||
file-roller
|
||||
geary
|
||||
gnome-system-monitor
|
||||
eog
|
||||
gnome-logs
|
||||
gnome-maps
|
||||
gnome-music
|
||||
seahorse
|
||||
gnome-text-editor
|
||||
];
|
||||
|
||||
home-manager.users.horseman = {
|
||||
imports = [./config.nix];
|
||||
};
|
||||
};
|
||||
}
|
||||
604
modules/wm/plasma/config.nix
Normal file
|
|
@ -0,0 +1,604 @@
|
|||
{
|
||||
programs.plasma = {
|
||||
enable = true;
|
||||
shortcuts = {
|
||||
"ActivityManager"."switch-to-activity-b2ab5fe5-5164-403b-a54c-47948116f11a" = [];
|
||||
"ActivityManager"."switch-to-activity-c82192f5-3d2d-4f8d-9c58-364b4cca1b53" = [];
|
||||
"ActivityManager"."switch-to-activity-d15629d7-eac1-4856-990c-e88d4acd7c5d" = [];
|
||||
"ActivityManager"."switch-to-activity-df5108d4-687b-4cd3-835e-318d72116b93" = [];
|
||||
"KDE Keyboard Layout Switcher"."Switch to Last-Used Keyboard Layout" = "Meta+Alt+L";
|
||||
"KDE Keyboard Layout Switcher"."Switch to Next Keyboard Layout" = "Meta+Alt+K";
|
||||
"kaccess"."Toggle Screen Reader On and Off" = "Meta+Alt+S";
|
||||
"kcm_touchpad"."Disable Touchpad" = "Touchpad Off";
|
||||
"kcm_touchpad"."Enable Touchpad" = "Touchpad On";
|
||||
"kcm_touchpad"."Toggle Touchpad" = ["Touchpad Toggle" "" "Meta+Ctrl+Zenkaku Hankaku,Touchpad Toggle" "Meta+Ctrl+Zenkaku Hankaku"];
|
||||
"kmix"."decrease_microphone_volume" = "Microphone Volume Down";
|
||||
"kmix"."decrease_volume" = "Volume Down";
|
||||
"kmix"."decrease_volume_small" = "Shift+Volume Down";
|
||||
"kmix"."increase_microphone_volume" = "Microphone Volume Up";
|
||||
"kmix"."increase_volume" = "Volume Up";
|
||||
"kmix"."increase_volume_small" = "Shift+Volume Up";
|
||||
"kmix"."mic_mute" = ["Microphone Mute" "Meta+Volume Mute,Microphone Mute" "Meta+Volume Mute,Mute Microphone"];
|
||||
"kmix"."mute" = "Volume Mute";
|
||||
"ksmserver"."Halt Without Confirmation" = [];
|
||||
"ksmserver"."Lock Session" = ["Meta+L" "" "Screensaver\\, ,Meta+L" "Screensaver,Lock Session"];
|
||||
"ksmserver"."Log Out" = "Ctrl+Alt+Del";
|
||||
"ksmserver"."Log Out Without Confirmation" = [];
|
||||
"ksmserver"."LogOut" = [];
|
||||
"ksmserver"."Reboot" = [];
|
||||
"ksmserver"."Reboot Without Confirmation" = [];
|
||||
"ksmserver"."Shut Down" = [];
|
||||
"kwin"."Activate Window Demanding Attention" = "Meta+Ctrl+A";
|
||||
"kwin"."Cube" = "Ctrl+Meta+G";
|
||||
"kwin"."Cycle Overview" = [];
|
||||
"kwin"."Cycle Overview Opposite" = [];
|
||||
"kwin"."Decrease Opacity" = [];
|
||||
"kwin"."Edit Tiles" = "Meta+T";
|
||||
"kwin"."Expose" = "Ctrl+F9";
|
||||
"kwin"."ExposeAll" = ["Ctrl+F10" "" "Launch (C)\\, ,Ctrl+F10" "Launch (C),Toggle Present Windows (All desktops)"];
|
||||
"kwin"."ExposeClass" = "Ctrl+F7";
|
||||
"kwin"."ExposeClassCurrentDesktop" = [];
|
||||
"kwin"."Grid View" = "Meta+G";
|
||||
"kwin"."Increase Opacity" = [];
|
||||
"kwin"."Invert Screen Colors" = [];
|
||||
"kwin"."Kill Window" = "Meta+Ctrl+Esc";
|
||||
"kwin"."MinimizeAll" = [];
|
||||
"kwin"."Move Tablet to Next Output" = [];
|
||||
"kwin"."MoveMouseToCenter" = "Meta+F6";
|
||||
"kwin"."MoveMouseToFocus" = "Meta+F5";
|
||||
"kwin"."MoveZoomDown" = [];
|
||||
"kwin"."MoveZoomLeft" = [];
|
||||
"kwin"."MoveZoomRight" = [];
|
||||
"kwin"."MoveZoomUp" = [];
|
||||
"kwin"."Overview" = "Meta+W";
|
||||
"kwin"."Setup Window Shortcut" = [];
|
||||
"kwin"."Show Desktop" = "Meta+D";
|
||||
"kwin"."Switch One Desktop Down" = "Meta+Ctrl+Down";
|
||||
"kwin"."Switch One Desktop Up" = "Meta+Ctrl+Up";
|
||||
"kwin"."Switch One Desktop to the Left" = "Meta+Ctrl+Left";
|
||||
"kwin"."Switch One Desktop to the Right" = "Meta+Ctrl+Right";
|
||||
"kwin"."Switch Window Down" = "Meta+Alt+Down";
|
||||
"kwin"."Switch Window Left" = "Meta+Alt+Left";
|
||||
"kwin"."Switch Window Right" = "Meta+Alt+Right";
|
||||
"kwin"."Switch Window Up" = "Meta+Alt+Up";
|
||||
"kwin"."Switch to Desktop 1" = "Ctrl+F1";
|
||||
"kwin"."Switch to Desktop 10" = [];
|
||||
"kwin"."Switch to Desktop 11" = [];
|
||||
"kwin"."Switch to Desktop 12" = [];
|
||||
"kwin"."Switch to Desktop 13" = [];
|
||||
"kwin"."Switch to Desktop 14" = [];
|
||||
"kwin"."Switch to Desktop 15" = [];
|
||||
"kwin"."Switch to Desktop 16" = [];
|
||||
"kwin"."Switch to Desktop 17" = [];
|
||||
"kwin"."Switch to Desktop 18" = [];
|
||||
"kwin"."Switch to Desktop 19" = [];
|
||||
"kwin"."Switch to Desktop 2" = "Ctrl+F2";
|
||||
"kwin"."Switch to Desktop 20" = [];
|
||||
"kwin"."Switch to Desktop 3" = "Ctrl+F3";
|
||||
"kwin"."Switch to Desktop 4" = "Ctrl+F4";
|
||||
"kwin"."Switch to Desktop 5" = [];
|
||||
"kwin"."Switch to Desktop 6" = [];
|
||||
"kwin"."Switch to Desktop 7" = [];
|
||||
"kwin"."Switch to Desktop 8" = [];
|
||||
"kwin"."Switch to Desktop 9" = [];
|
||||
"kwin"."Switch to Next Desktop" = [];
|
||||
"kwin"."Switch to Next Screen" = [];
|
||||
"kwin"."Switch to Previous Desktop" = [];
|
||||
"kwin"."Switch to Previous Screen" = [];
|
||||
"kwin"."Switch to Screen 0" = [];
|
||||
"kwin"."Switch to Screen 1" = [];
|
||||
"kwin"."Switch to Screen 2" = [];
|
||||
"kwin"."Switch to Screen 3" = [];
|
||||
"kwin"."Switch to Screen 4" = [];
|
||||
"kwin"."Switch to Screen 5" = [];
|
||||
"kwin"."Switch to Screen 6" = [];
|
||||
"kwin"."Switch to Screen 7" = [];
|
||||
"kwin"."Switch to Screen Above" = [];
|
||||
"kwin"."Switch to Screen Below" = [];
|
||||
"kwin"."Switch to Screen to the Left" = [];
|
||||
"kwin"."Switch to Screen to the Right" = [];
|
||||
"kwin"."Toggle" = [];
|
||||
"kwin"."Toggle Night Color" = [];
|
||||
"kwin"."Toggle Window Raise/Lower" = [];
|
||||
"kwin"."TrackMouse" = [];
|
||||
"kwin"."Walk Through Windows" = "Alt+Tab";
|
||||
"kwin"."Walk Through Windows (Reverse)" = "Alt+Shift+Tab";
|
||||
"kwin"."Walk Through Windows Alternative" = [];
|
||||
"kwin"."Walk Through Windows Alternative (Reverse)" = [];
|
||||
"kwin"."Walk Through Windows of Current Application" = "Alt+`";
|
||||
"kwin"."Walk Through Windows of Current Application (Reverse)" = "Alt+~";
|
||||
"kwin"."Walk Through Windows of Current Application Alternative" = [];
|
||||
"kwin"."Walk Through Windows of Current Application Alternative (Reverse)" = [];
|
||||
"kwin"."Window Above Other Windows" = [];
|
||||
"kwin"."Window Below Other Windows" = [];
|
||||
"kwin"."Window Close" = "Alt+F4";
|
||||
"kwin"."Window Fullscreen" = [];
|
||||
"kwin"."Window Grow Horizontal" = [];
|
||||
"kwin"."Window Grow Vertical" = [];
|
||||
"kwin"."Window Lower" = [];
|
||||
"kwin"."Window Maximize" = "Alt+Up";
|
||||
"kwin"."Window Maximize Horizontal" = [];
|
||||
"kwin"."Window Maximize Vertical" = [];
|
||||
"kwin"."Window Minimize" = "Meta+PgDown";
|
||||
"kwin"."Window Move" = [];
|
||||
"kwin"."Window Move Center" = [];
|
||||
"kwin"."Window No Border" = [];
|
||||
"kwin"."Window On All Desktops" = [];
|
||||
"kwin"."Window One Desktop Down" = "Meta+Ctrl+Shift+Down";
|
||||
"kwin"."Window One Desktop Up" = "Meta+Ctrl+Shift+Up";
|
||||
"kwin"."Window One Desktop to the Left" = "Meta+Ctrl+Shift+Left";
|
||||
"kwin"."Window One Desktop to the Right" = "Meta+Ctrl+Shift+Right";
|
||||
"kwin"."Window One Screen Down" = [];
|
||||
"kwin"."Window One Screen Up" = [];
|
||||
"kwin"."Window One Screen to the Left" = [];
|
||||
"kwin"."Window One Screen to the Right" = [];
|
||||
"kwin"."Window Operations Menu" = "Alt+F3";
|
||||
"kwin"."Window Pack Down" = [];
|
||||
"kwin"."Window Pack Left" = [];
|
||||
"kwin"."Window Pack Right" = [];
|
||||
"kwin"."Window Pack Up" = [];
|
||||
"kwin"."Window Quick Tile Bottom" = "Meta+Down";
|
||||
"kwin"."Window Quick Tile Bottom Left" = [];
|
||||
"kwin"."Window Quick Tile Bottom Right" = [];
|
||||
"kwin"."Window Quick Tile Left" = "Meta+Left";
|
||||
"kwin"."Window Quick Tile Right" = "Meta+Right";
|
||||
"kwin"."Window Quick Tile Top" = "Meta+Up";
|
||||
"kwin"."Window Quick Tile Top Left" = [];
|
||||
"kwin"."Window Quick Tile Top Right" = [];
|
||||
"kwin"."Window Raise" = [];
|
||||
"kwin"."Window Resize" = [];
|
||||
"kwin"."Window Shade" = [];
|
||||
"kwin"."Window Shrink Horizontal" = [];
|
||||
"kwin"."Window Shrink Vertical" = [];
|
||||
"kwin"."Window to Desktop 1" = [];
|
||||
"kwin"."Window to Desktop 10" = [];
|
||||
"kwin"."Window to Desktop 11" = [];
|
||||
"kwin"."Window to Desktop 12" = [];
|
||||
"kwin"."Window to Desktop 13" = [];
|
||||
"kwin"."Window to Desktop 14" = [];
|
||||
"kwin"."Window to Desktop 15" = [];
|
||||
"kwin"."Window to Desktop 16" = [];
|
||||
"kwin"."Window to Desktop 17" = [];
|
||||
"kwin"."Window to Desktop 18" = [];
|
||||
"kwin"."Window to Desktop 19" = [];
|
||||
"kwin"."Window to Desktop 2" = [];
|
||||
"kwin"."Window to Desktop 20" = [];
|
||||
"kwin"."Window to Desktop 3" = [];
|
||||
"kwin"."Window to Desktop 4" = [];
|
||||
"kwin"."Window to Desktop 5" = [];
|
||||
"kwin"."Window to Desktop 6" = [];
|
||||
"kwin"."Window to Desktop 7" = [];
|
||||
"kwin"."Window to Desktop 8" = [];
|
||||
"kwin"."Window to Desktop 9" = [];
|
||||
"kwin"."Window to Next Desktop" = [];
|
||||
"kwin"."Window to Next Screen" = "Meta+Shift+Right";
|
||||
"kwin"."Window to Previous Desktop" = [];
|
||||
"kwin"."Window to Previous Screen" = "Meta+Shift+Left";
|
||||
"kwin"."Window to Screen 0" = [];
|
||||
"kwin"."Window to Screen 1" = [];
|
||||
"kwin"."Window to Screen 2" = [];
|
||||
"kwin"."Window to Screen 3" = [];
|
||||
"kwin"."Window to Screen 4" = [];
|
||||
"kwin"."Window to Screen 5" = [];
|
||||
"kwin"."Window to Screen 6" = [];
|
||||
"kwin"."Window to Screen 7" = [];
|
||||
"kwin"."view_actual_size" = ",Meta+0,Zoom to Actual Size";
|
||||
"kwin"."view_zoom_in" = ["Meta++" "Meta+=,Meta++" "Meta+=,Zoom In"];
|
||||
"kwin"."view_zoom_out" = "Meta+-";
|
||||
"mediacontrol"."mediavolumedown" = [];
|
||||
"mediacontrol"."mediavolumeup" = [];
|
||||
"mediacontrol"."nextmedia" = "Media Next";
|
||||
"mediacontrol"."pausemedia" = "Media Pause";
|
||||
"mediacontrol"."playmedia" = [];
|
||||
"mediacontrol"."playpausemedia" = "Media Play";
|
||||
"mediacontrol"."previousmedia" = "Media Previous";
|
||||
"mediacontrol"."stopmedia" = "Media Stop";
|
||||
"org_kde_powerdevil"."Decrease Keyboard Brightness" = "Keyboard Brightness Down";
|
||||
"org_kde_powerdevil"."Decrease Screen Brightness" = "Monitor Brightness Down";
|
||||
"org_kde_powerdevil"."Decrease Screen Brightness Small" = "Shift+Monitor Brightness Down";
|
||||
"org_kde_powerdevil"."Hibernate" = "Hibernate";
|
||||
"org_kde_powerdevil"."Increase Keyboard Brightness" = "Keyboard Brightness Up";
|
||||
"org_kde_powerdevil"."Increase Screen Brightness" = "Monitor Brightness Up";
|
||||
"org_kde_powerdevil"."Increase Screen Brightness Small" = "Shift+Monitor Brightness Up";
|
||||
"org_kde_powerdevil"."PowerDown" = "Power Down";
|
||||
"org_kde_powerdevil"."PowerOff" = "Power Off";
|
||||
"org_kde_powerdevil"."Sleep" = "Sleep";
|
||||
"org_kde_powerdevil"."Toggle Keyboard Backlight" = "Keyboard Light On/Off";
|
||||
"org_kde_powerdevil"."Turn Off Screen" = [];
|
||||
"org_kde_powerdevil"."powerProfile" = ["Battery" "" "Meta+B\\, ,Battery" "Meta+B,Switch Power Profile"];
|
||||
"plasmashell"."activate application launcher" = ["Alt+F1" "Alt+F1,Activate Application Launcher"];
|
||||
"plasmashell"."activate task manager entry 1" = "Meta+1";
|
||||
"plasmashell"."activate task manager entry 10" = "\\, Meta+0\\, ,Meta+0,Activate Task Manager Entry 10";
|
||||
"plasmashell"."activate task manager entry 2" = "Meta+2";
|
||||
"plasmashell"."activate task manager entry 3" = "Meta+3";
|
||||
"plasmashell"."activate task manager entry 4" = "Meta+4";
|
||||
"plasmashell"."activate task manager entry 5" = "Meta+5";
|
||||
"plasmashell"."activate task manager entry 6" = "Meta+6";
|
||||
"plasmashell"."activate task manager entry 7" = "Meta+7";
|
||||
"plasmashell"."activate task manager entry 8" = "Meta+8";
|
||||
"plasmashell"."activate task manager entry 9" = "Meta+9";
|
||||
"plasmashell"."clear-history" = "none,,Clear Clipboard History";
|
||||
"plasmashell"."clipboard_action" = "Meta+Ctrl+X";
|
||||
"plasmashell"."cycle-panels" = "Meta+Alt+P";
|
||||
"plasmashell"."cycleNextAction" = "none,,Next History Item";
|
||||
"plasmashell"."cyclePrevAction" = "none,,Previous History Item";
|
||||
"plasmashell"."manage activities" = "Meta+Q";
|
||||
"plasmashell"."next activity" = [];
|
||||
"plasmashell"."previous activity" = [];
|
||||
"plasmashell"."repeat_action" = "Meta+Ctrl+R";
|
||||
"plasmashell"."show dashboard" = "Ctrl+F12";
|
||||
"plasmashell"."show-barcode" = [];
|
||||
"plasmashell"."show-on-mouse-pos" = "Meta+V";
|
||||
"plasmashell"."stop current activity" = "Meta+S";
|
||||
"plasmashell"."switch to next activity" = [];
|
||||
"plasmashell"."switch to previous activity" = [];
|
||||
"plasmashell"."toggle do not disturb" = [];
|
||||
"services/alacritty.desktop"."_launch" = "Alt+Q";
|
||||
"services/lookandfeeltool-4.desktop"."_launch" = "Ctrl+F12";
|
||||
"services/org.kde.konsole.desktop"."_launch" = [];
|
||||
"services/org.kde.plasma-systemmonitor.desktop"."_launch" = ["Ctrl+Shift+Esc" "Meta+Esc"];
|
||||
"services/org.kde.spectacle.desktop"."ActiveWindowScreenShot" = [];
|
||||
"services/org.kde.spectacle.desktop"."FullScreenScreenShot" = [];
|
||||
"services/org.kde.spectacle.desktop"."RecordRegion" = [];
|
||||
"services/org.kde.spectacle.desktop"."RecordScreen" = [];
|
||||
"services/org.kde.spectacle.desktop"."RecordWindow" = [];
|
||||
"services/org.kde.spectacle.desktop"."RectangularRegionScreenShot" = "Meta+Shift+S";
|
||||
"services/org.kde.spectacle.desktop"."WindowUnderCursorScreenShot" = [];
|
||||
"services/org.kde.spectacle.desktop"."_launch" = [];
|
||||
"services/systemsettings.desktop"."_launch" = [];
|
||||
};
|
||||
configFile = {
|
||||
"baloofilerc"."Basic Settings"."Indexing-Enabled" = false;
|
||||
"baloofilerc"."General"."dbVersion" = 2;
|
||||
"baloofilerc"."General"."exclude filters" = "*~,*.part,*.o,*.la,*.lo,*.loT,*.moc,moc_*.cpp,qrc_*.cpp,ui_*.h,cmake_install.cmake,CMakeCache.txt,CTestTestfile.cmake,libtool,config.status,confdefs.h,autom4te,conftest,confstat,Makefile.am,*.gcode,.ninja_deps,.ninja_log,build.ninja,*.csproj,*.m4,*.rej,*.gmo,*.pc,*.omf,*.aux,*.tmp,*.po,*.vm*,*.nvram,*.rcore,*.swp,*.swap,lzo,litmain.sh,*.orig,.histfile.*,.xsession-errors*,*.map,*.so,*.a,*.db,*.qrc,*.ini,*.init,*.img,*.vdi,*.vbox*,vbox.log,*.qcow2,*.vmdk,*.vhd,*.vhdx,*.sql,*.sql.gz,*.ytdl,*.tfstate*,*.class,*.pyc,*.pyo,*.elc,*.qmlc,*.jsc,*.fastq,*.fq,*.gb,*.fasta,*.fna,*.gbff,*.faa,po,CVS,.svn,.git,_darcs,.bzr,.hg,CMakeFiles,CMakeTmp,CMakeTmpQmake,.moc,.obj,.pch,.uic,.npm,.yarn,.yarn-cache,__pycache__,node_modules,node_packages,nbproject,.terraform,.venv,venv,core-dumps,lost+found";
|
||||
"baloofilerc"."General"."exclude filters version" = 9;
|
||||
"dolphinrc"."DetailsMode"."PreviewSize" = 256;
|
||||
"dolphinrc"."General"."ViewPropsTimestamp" = "2024,4,28,14,31,52.291";
|
||||
"dolphinrc"."IconsMode"."PreviewSize" = 144;
|
||||
"dolphinrc"."KFileDialog Settings"."Places Icons Auto-resize" = false;
|
||||
"dolphinrc"."KFileDialog Settings"."Places Icons Static Size" = 22;
|
||||
"kactivitymanagerdrc"."activities"."b2ab5fe5-5164-403b-a54c-47948116f11a" = "Stay Awake";
|
||||
"kactivitymanagerdrc"."activities"."c82192f5-3d2d-4f8d-9c58-364b4cca1b53" = "Default";
|
||||
"kactivitymanagerdrc"."activities"."d15629d7-eac1-4856-990c-e88d4acd7c5d" = "Stay Awake";
|
||||
"kactivitymanagerdrc"."activities"."df5108d4-687b-4cd3-835e-318d72116b93" = "Default";
|
||||
"kactivitymanagerdrc"."activities-icons"."b2ab5fe5-5164-403b-a54c-47948116f11a" = "activities";
|
||||
"kactivitymanagerdrc"."activities-icons"."d15629d7-eac1-4856-990c-e88d4acd7c5d" = "activities";
|
||||
"kactivitymanagerdrc"."activities-icons"."df5108d4-687b-4cd3-835e-318d72116b93" = "activities";
|
||||
"kactivitymanagerdrc"."main"."currentActivity" = "df5108d4-687b-4cd3-835e-318d72116b93";
|
||||
"kactivitymanagerdrc"."main"."runningActivities" = "df5108d4-687b-4cd3-835e-318d72116b93";
|
||||
"kactivitymanagerdrc"."main"."stoppedActivities" = "";
|
||||
"katerc"."General"."Days Meta Infos" = 30;
|
||||
"katerc"."General"."Save Meta Infos" = true;
|
||||
"katerc"."General"."Show Full Path in Title" = false;
|
||||
"katerc"."General"."Show Menu Bar" = true;
|
||||
"katerc"."General"."Show Status Bar" = true;
|
||||
"katerc"."General"."Show Tab Bar" = true;
|
||||
"katerc"."General"."Show Url Nav Bar" = true;
|
||||
"katerc"."KTextEditor Renderer"."Animate Bracket Matching" = false;
|
||||
"katerc"."KTextEditor Renderer"."Auto Color Theme Selection" = true;
|
||||
"katerc"."KTextEditor Renderer"."Color Theme" = "Breeze Light";
|
||||
"katerc"."KTextEditor Renderer"."Line Height Multiplier" = 1;
|
||||
"katerc"."KTextEditor Renderer"."Show Indentation Lines" = false;
|
||||
"katerc"."KTextEditor Renderer"."Show Whole Bracket Expression" = false;
|
||||
"katerc"."KTextEditor Renderer"."Text Font" = "Hack,10,-1,7,400,0,0,0,0,0,0,0,0,0,0,1";
|
||||
"katerc"."KTextEditor Renderer"."Text Font Features" = "";
|
||||
"katerc"."KTextEditor Renderer"."Word Wrap Marker" = false;
|
||||
"katerc"."filetree"."editShade" = "183,220,246";
|
||||
"katerc"."filetree"."listMode" = false;
|
||||
"katerc"."filetree"."middleClickToClose" = false;
|
||||
"katerc"."filetree"."shadingEnabled" = true;
|
||||
"katerc"."filetree"."showCloseButton" = false;
|
||||
"katerc"."filetree"."showFullPathOnRoots" = false;
|
||||
"katerc"."filetree"."showToolbar" = true;
|
||||
"katerc"."filetree"."sortRole" = 0;
|
||||
"katerc"."filetree"."viewShade" = "211,190,222";
|
||||
"kcminputrc"."Keyboard"."NumLock" = 0;
|
||||
"kcminputrc"."Keyboard"."RepeatDelay" = 300;
|
||||
"kcminputrc"."Keyboard"."RepeatRate" = 50;
|
||||
"kcminputrc"."Libinput/1133/49970/Logitech Gaming Mouse G502"."PointerAccelerationProfile" = 2;
|
||||
"kcminputrc"."Libinput/1133/49970/Logitech Gaming Mouse G502"."ScrollFactor" = 0.5;
|
||||
"kcminputrc"."Libinput/1133/50504/Logitech USB Receiver Mouse"."MiddleButtonEmulation" = false;
|
||||
"kcminputrc"."Libinput/1133/50504/Logitech USB Receiver Mouse"."PointerAcceleration" = "-0.460";
|
||||
"kcminputrc"."Libinput/1133/50504/Logitech USB Receiver Mouse"."PointerAccelerationProfile" = 2;
|
||||
"kcminputrc"."Libinput/1133/50504/Logitech USB Receiver Mouse"."ScrollFactor" = 1;
|
||||
"kcminputrc"."Libinput/1133/50504/Logitech USB Receiver Mouse"."ScrollMethod" = 0;
|
||||
"kcminputrc"."Libinput/1267/12432/ELAN1200:00 04F3:3090 Mouse"."PointerAcceleration" = 0.0;
|
||||
"kcminputrc"."Libinput/1267/12432/ELAN1200:00 04F3:3090 Touchpad"."ClickMethod" = 2;
|
||||
"kcminputrc"."Libinput/1267/12432/ELAN1200:00 04F3:3090 Touchpad"."Enabled" = true;
|
||||
"kcminputrc"."Libinput/1267/12432/ELAN1200:00 04F3:3090 Touchpad"."ScrollFactor" = 0.3;
|
||||
"kcminputrc"."Libinput/1267/12432/ELAN1200:00 04F3:3090 Touchpad"."ScrollMethod" = 1;
|
||||
"kcminputrc"."Mouse"."X11LibInputXAccelProfileFlat" = true;
|
||||
"kded5rc"."Module-browserintegrationreminder"."autoload" = false;
|
||||
"kded5rc"."Module-device_automounter"."autoload" = false;
|
||||
"kdeglobals"."DirSelect Dialog"."DirSelectDialog Size" = "820,584";
|
||||
"kdeglobals"."General"."AllowKDEAppsToRememberWindowPositions" = true;
|
||||
"kdeglobals"."General"."TerminalApplication" = "alacritty";
|
||||
"kdeglobals"."General"."TerminalService" = "Alacritty.desktop";
|
||||
"kdeglobals"."General"."UseSystemBell" = true;
|
||||
"kdeglobals"."KDE"."AnimationDurationFactor" = 0.35355339059327373;
|
||||
"kdeglobals"."KDE"."SingleClick" = true;
|
||||
"kdeglobals"."KFileDialog Settings"."Allow Expansion" = false;
|
||||
"kdeglobals"."KFileDialog Settings"."Automatically select filename extension" = true;
|
||||
"kdeglobals"."KFileDialog Settings"."Breadcrumb Navigation" = true;
|
||||
"kdeglobals"."KFileDialog Settings"."Decoration position" = 2;
|
||||
"kdeglobals"."KFileDialog Settings"."LocationCombo Completionmode" = 5;
|
||||
"kdeglobals"."KFileDialog Settings"."PathCombo Completionmode" = 5;
|
||||
"kdeglobals"."KFileDialog Settings"."Show Bookmarks" = false;
|
||||
"kdeglobals"."KFileDialog Settings"."Show Full Path" = false;
|
||||
"kdeglobals"."KFileDialog Settings"."Show Inline Previews" = true;
|
||||
"kdeglobals"."KFileDialog Settings"."Show Preview" = false;
|
||||
"kdeglobals"."KFileDialog Settings"."Show Speedbar" = true;
|
||||
"kdeglobals"."KFileDialog Settings"."Show hidden files" = false;
|
||||
"kdeglobals"."KFileDialog Settings"."Sort by" = "Name";
|
||||
"kdeglobals"."KFileDialog Settings"."Sort directories first" = true;
|
||||
"kdeglobals"."KFileDialog Settings"."Sort hidden files last" = false;
|
||||
"kdeglobals"."KFileDialog Settings"."Sort reversed" = true;
|
||||
"kdeglobals"."KFileDialog Settings"."Speedbar Width" = 140;
|
||||
"kdeglobals"."KFileDialog Settings"."View Style" = "DetailTree";
|
||||
"kdeglobals"."Shortcuts"."Help" = "";
|
||||
"kdeglobals"."WM"."activeBackground" = "49,54,59";
|
||||
"kdeglobals"."WM"."activeBlend" = "252,252,252";
|
||||
"kdeglobals"."WM"."activeForeground" = "252,252,252";
|
||||
"kdeglobals"."WM"."inactiveBackground" = "42,46,50";
|
||||
"kdeglobals"."WM"."inactiveBlend" = "161,169,177";
|
||||
"kdeglobals"."WM"."inactiveForeground" = "161,169,177";
|
||||
"krunnerrc"."Plugins"."baloosearchEnabled" = false;
|
||||
"krunnerrc"."Plugins"."browserhistoryEnabled" = false;
|
||||
"krunnerrc"."Plugins"."browsertabsEnabled" = false;
|
||||
"krunnerrc"."Plugins"."krunner_appstreamEnabled" = false;
|
||||
"krunnerrc"."Plugins"."krunner_recentdocumentsEnabled" = false;
|
||||
"krunnerrc"."Plugins"."krunner_sessionsEnabled" = false;
|
||||
"krunnerrc"."Plugins"."krunner_webshortcutsEnabled" = false;
|
||||
"krunnerrc"."Plugins/Favorites"."plugins" = "krunner_services";
|
||||
"kscreenlockerrc"."Daemon"."Autolock" = false;
|
||||
"ksmserverrc"."General"."loginMode" = "restoreSavedSession";
|
||||
"ksmserverrc"."SubSession: 037b4336-809c-4a07-a148-9ef660a5cc9c"."count" = 0;
|
||||
"ksmserverrc"."SubSession: c82192f5-3d2d-4f8d-9c58-364b4cca1b53"."count" = 0;
|
||||
"ksmserverrc"."SubSession: d15629d7-eac1-4856-990c-e88d4acd7c5d"."count" = 0;
|
||||
"ksmserverrc"."SubSession: df5108d4-687b-4cd3-835e-318d72116b93"."count" = 0;
|
||||
"ksplashrc"."KSplash"."Theme" = "org.kde.breeze.desktop";
|
||||
"kwalletrc"."Wallet"."First Use" = false;
|
||||
"kwinrc"."Desktops"."Id_1" = "e1429fd3-ee1a-43d1-a96c-3e98155ffa70";
|
||||
"kwinrc"."Desktops"."Id_2" = "91da48f0-dcd0-40fa-937a-9f6a40f98a61";
|
||||
"kwinrc"."Desktops"."Id_3" = "b421dd32-1365-49d6-97a0-e6a2850c864d";
|
||||
"kwinrc"."Desktops"."Id_4" = "083e63b2-d84c-4100-bd4a-fa4d286f6575";
|
||||
"kwinrc"."Desktops"."Id_5" = "2e7db0b3-0c21-41da-a9b1-df9e62d7dba3";
|
||||
"kwinrc"."Desktops"."Id_6" = "49fd9f05-4801-4829-bc01-dd8e78ee5ce7";
|
||||
"kwinrc"."Desktops"."Name_1" = "UL";
|
||||
"kwinrc"."Desktops"."Name_2" = "UM";
|
||||
"kwinrc"."Desktops"."Name_3" = "UR";
|
||||
"kwinrc"."Desktops"."Name_4" = "BL";
|
||||
"kwinrc"."Desktops"."Name_5" = "BM";
|
||||
"kwinrc"."Desktops"."Name_6" = "BR";
|
||||
"kwinrc"."Desktops"."Number" = 6;
|
||||
"kwinrc"."Desktops"."Rows" = 2;
|
||||
"kwinrc"."Effect-diminactive"."Strength" = 50;
|
||||
"kwinrc"."Effect-magiclamp"."AnimationDuration" = 4096;
|
||||
"kwinrc"."Effect-mousemark"."LineWidth" = 8;
|
||||
"kwinrc"."Effect-overview"."BorderActivate" = 9;
|
||||
"kwinrc"."Effect-overview"."GridBorderActivate" = 7;
|
||||
"kwinrc"."Effect-shakecursor"."Magnification" = 10;
|
||||
"kwinrc"."Effect-slide"."HorizontalGap" = 0;
|
||||
"kwinrc"."Effect-slide"."SlideBackground" = false;
|
||||
"kwinrc"."Effect-slide"."VerticalGap" = 0;
|
||||
"kwinrc"."Effect-trackmouse"."Alt" = true;
|
||||
"kwinrc"."Effect-trackmouse"."Control" = false;
|
||||
"kwinrc"."Effect-trackmouse"."Shift" = true;
|
||||
"kwinrc"."Effect-wobblywindows"."AdvancedMode" = true;
|
||||
"kwinrc"."Effect-wobblywindows"."Drag" = 100;
|
||||
"kwinrc"."Effect-wobblywindows"."MoveFactor" = 25;
|
||||
"kwinrc"."Effect-wobblywindows"."Stiffness" = 50;
|
||||
"kwinrc"."Effect-wobblywindows"."WobblynessLevel" = 4;
|
||||
"kwinrc"."MouseBindings"."CommandInactiveTitlebar3" = "Nothing";
|
||||
"kwinrc"."MouseBindings"."CommandTitlebarWheel" = "Change Opacity";
|
||||
"kwinrc"."NightColor"."Active" = true;
|
||||
"kwinrc"."NightColor"."Mode" = "Times";
|
||||
"kwinrc"."NightColor"."NightTemperature" = 6500;
|
||||
"kwinrc"."NightColor"."TransitionTime" = 1;
|
||||
"kwinrc"."Plugins"."blurEnabled" = true;
|
||||
"kwinrc"."Plugins"."cubeEnabled" = true;
|
||||
"kwinrc"."Plugins"."desktopchangeosdEnabled" = true;
|
||||
"kwinrc"."Plugins"."eyeonscreenEnabled" = true;
|
||||
"kwinrc"."Plugins"."minimizeallEnabled" = true;
|
||||
"kwinrc"."Plugins"."shakecursorEnabled" = true;
|
||||
"kwinrc"."Plugins"."trackmouseEnabled" = true;
|
||||
"kwinrc"."Plugins"."translucencyEnabled" = true;
|
||||
"kwinrc"."Plugins"."windowapertureEnabled" = false;
|
||||
"kwinrc"."Script-desktopchangeosd"."PopupHideDelay" = 250;
|
||||
"kwinrc"."SubSession: 037b4336-809c-4a07-a148-9ef660a5cc9c"."active" = "-1";
|
||||
"kwinrc"."SubSession: 037b4336-809c-4a07-a148-9ef660a5cc9c"."count" = 0;
|
||||
"kwinrc"."SubSession: c82192f5-3d2d-4f8d-9c58-364b4cca1b53"."active" = "-1";
|
||||
"kwinrc"."SubSession: c82192f5-3d2d-4f8d-9c58-364b4cca1b53"."count" = 0;
|
||||
"kwinrc"."Tiling"."padding" = 4;
|
||||
"kwinrc"."Tiling/17eb1f34-04ff-505f-99d3-b39b78e9af59"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/3d77eb63-ebbd-563e-af91-75062d700137"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":[{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}]}";
|
||||
"kwinrc"."Tiling/5e0aab53-ff8f-58db-aaca-df0f46f273c6"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/71ed7714-9051-5fa1-88b9-b1a4cb02cd13"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.3515624999999996},{\"width\":0.3593750000000003},{\"width\":0.2890625000000001}x5d}";
|
||||
"kwinrc"."Tiling/73f4fa9f-1055-5c2e-9515-22c988437f87"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/805020f2-e93e-5b0a-8771-dc3fefebe3c4"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":[{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}]}";
|
||||
"kwinrc"."Tiling/80f152f6-6f99-533e-a971-0dadb3e879d1"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/88b07ab8-dd78-5153-a6bc-f367d4aed265"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/a3d991e5-e4d6-5b87-b0c7-d6949c612be9"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/a734e78f-0769-5b7e-9626-9fd6e6fb0887"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/cbff9b14-ae6d-566e-843b-52ffde27afab"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/cd7851e2-e3b0-5632-98bb-216623a6ddca"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/d02c035d-eef0-5c68-aa2f-2e83d0ba08b1"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/d9f463ae-41ec-5300-8544-c0ee67dc8c63"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/df6fc5c4-c5b3-553f-b6b9-51ca75717f6e"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/e037cd5c-ea8f-56b9-9ae8-0658e7259bb0"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/e25cd7d6-e0d8-55e7-92de-7a085da94915"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/ec115ba5-57d7-5ed3-814a-1fcddfc3feab"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/ece7370d-6d13-5618-ad29-14697e609bd2"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/f441719b-d1f1-5819-8c11-57faf55c7fc1"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Tiling/f60e4345-d01f-58c0-a5d7-07b5e48a0bdd"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":x5b{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}x5d}";
|
||||
"kwinrc"."Windows"."ElectricBorderCooldown" = 500;
|
||||
"kwinrc"."Windows"."ElectricBorderDelay" = 300;
|
||||
"kwinrc"."Windows"."ElectricBorders" = 1;
|
||||
"kwinrc"."Windows"."HideUtilityWindowsForInactive" = false;
|
||||
"kwinrc"."Windows"."RollOverDesktops" = true;
|
||||
"kwinrc"."Windows"."SnapOnlyWhenOverlapping" = true;
|
||||
"kwinrc"."Xwayland"."Scale" = 1;
|
||||
"kwinrc"."org.kde.kdecoration2"."ButtonsOnLeft" = "MF";
|
||||
"kwinrulesrc"."096aaa12-acd7-4ed3-8682-1135d85ec9be"."Description" = "Application settings for org.kde.konsole";
|
||||
"kwinrulesrc"."096aaa12-acd7-4ed3-8682-1135d85ec9be"."aboverule" = 3;
|
||||
"kwinrulesrc"."096aaa12-acd7-4ed3-8682-1135d85ec9be"."wmclasscomplete" = true;
|
||||
"kwinrulesrc"."096aaa12-acd7-4ed3-8682-1135d85ec9be"."wmclassmatch" = 2;
|
||||
"kwinrulesrc"."1"."Description" = "Application settings for org.kde.konsole";
|
||||
"kwinrulesrc"."1"."aboverule" = 3;
|
||||
"kwinrulesrc"."1"."wmclasscomplete" = true;
|
||||
"kwinrulesrc"."1"."wmclassmatch" = 2;
|
||||
"kwinrulesrc"."6abee73a-6ad7-4238-8e85-ae830edacafa"."Description" = "Window settings for org.kde.konsole";
|
||||
"kwinrulesrc"."6abee73a-6ad7-4238-8e85-ae830edacafa"."noborder" = true;
|
||||
"kwinrulesrc"."6abee73a-6ad7-4238-8e85-ae830edacafa"."noborderrule" = 3;
|
||||
"kwinrulesrc"."6abee73a-6ad7-4238-8e85-ae830edacafa"."title" = "~ : zsh — Konsole";
|
||||
"kwinrulesrc"."6abee73a-6ad7-4238-8e85-ae830edacafa"."types" = 1;
|
||||
"kwinrulesrc"."6abee73a-6ad7-4238-8e85-ae830edacafa"."wmclass" = "konsole org.kde.konsole";
|
||||
"kwinrulesrc"."6abee73a-6ad7-4238-8e85-ae830edacafa"."wmclasscomplete" = true;
|
||||
"kwinrulesrc"."6abee73a-6ad7-4238-8e85-ae830edacafa"."wmclassmatch" = 1;
|
||||
"kwinrulesrc"."General"."count" = 1;
|
||||
"kwinrulesrc"."General"."rules" = 1;
|
||||
"kxkbrc"."Layout"."Options" = "terminate:ctrl_alt_bksp";
|
||||
"kxkbrc"."Layout"."ResetOldOptions" = true;
|
||||
"plasma-localerc"."Formats"."LANG" = "en_US.UTF-8";
|
||||
"plasma-localerc"."Formats"."LC_MEASUREMENT" = "C";
|
||||
"plasma-localerc"."Formats"."LC_PAPER" = "C";
|
||||
"plasma-localerc"."Formats"."LC_TIME" = "C";
|
||||
"plasmanotifyrc"."Applications/com.github.eneshecan.WhatsAppForLinux"."Seen" = true;
|
||||
"plasmanotifyrc"."Applications/firefox"."Seen" = true;
|
||||
"plasmanotifyrc"."Notifications"."PopupPosition" = "BottomRight";
|
||||
"plasmarc"."Wallpapers"."usersWallpapers" = "/home/horseman/nix-config/misc/nixos_wallpaper_light_3840x2160.png,/home/horseman/nix-config/misc/nixos_wallpaper_dark_3840x2160.png";
|
||||
"spectaclerc"."Annotations"."annotationToolType" = 2;
|
||||
"spectaclerc"."Annotations"."rectangleFillColor" = "255,0,0";
|
||||
"spectaclerc"."Annotations"."rectangleShadow" = false;
|
||||
"spectaclerc"."Annotations"."rectangleStrokeColor" = "255,0,0";
|
||||
"spectaclerc"."General"."clipboardGroup" = "PostScreenshotCopyImage";
|
||||
"spectaclerc"."GuiConfig"."captureMode" = 0;
|
||||
"spectaclerc"."ImageSave"."lastImageSaveAsLocation" = "file:///home/horseman/Pictures/Screenshots/Screenshot_20240917_133224.png";
|
||||
"spectaclerc"."ImageSave"."lastImageSaveLocation" = "file:///home/horseman/Pictures/Screenshots/Screenshot_20241114_161422.png";
|
||||
"spectaclerc"."ImageSave"."translatedScreenshotsFolder" = "Screenshots";
|
||||
"spectaclerc"."VideoSave"."translatedScreencastsFolder" = "Screencasts";
|
||||
"systemsettingsrc"."systemsettings_sidebar_mode"."HighlightNonDefaultSettings" = false;
|
||||
};
|
||||
dataFile = {
|
||||
"dolphin/view_properties/global/.directory"."Dolphin"."VisibleRoles" = "Icons_text";
|
||||
"dolphin/view_properties/global/.directory"."Settings"."HiddenFilesShown" = true;
|
||||
"kate/anonymous.katesession"."Document 0"."URL" = "sftp://solis/home/horseman/wget-log.1";
|
||||
"kate/anonymous.katesession"."Kate Plugins"."cmaketoolsplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."compilerexplorer" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."eslintplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."externaltoolsplugin" = true;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."formatplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."katebacktracebrowserplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."katebuildplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."katecloseexceptplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."katecolorpickerplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."katectagsplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."katefilebrowserplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."katefiletreeplugin" = true;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."kategdbplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."kategitblameplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."katekonsoleplugin" = true;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."kateprojectplugin" = true;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."katereplicodeplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."katesearchplugin" = true;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."katesnippetsplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."katesqlplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."katesymbolviewerplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."katexmlcheckplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."katexmltoolsplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."keyboardmacrosplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."ktexteditorpreviewplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."latexcompletionplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."lspclientplugin" = true;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."openlinkplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."rainbowparens" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."rbqlplugin" = false;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."tabswitcherplugin" = true;
|
||||
"kate/anonymous.katesession"."Kate Plugins"."textfilterplugin" = true;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Active ViewSpace" = 0;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-H-Splitter" = "0,594,0";
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-0-Bar-0-TvList" = "kate_private_plugin_katefiletreeplugin,kateproject,kateprojectgit,lspclient_symbol_outline";
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-0-LastSize" = 200;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-0-SectSizes" = 0;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-0-Splitter" = 371;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-1-Bar-0-TvList" = "";
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-1-LastSize" = 200;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-1-SectSizes" = 0;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-1-Splitter" = 371;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-2-Bar-0-TvList" = "";
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-2-LastSize" = 200;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-2-SectSizes" = 0;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-2-Splitter" = 594;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-3-Bar-0-TvList" = "output,diagnostics,kate_plugin_katesearch,kateprojectinfo,kate_private_plugin_katekonsoleplugin";
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-3-LastSize" = 200;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-3-SectSizes" = 0;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-3-Splitter" = 313;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-Style" = 2;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-Sidebar-Visible" = true;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-diagnostics-Position" = 3;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-diagnostics-Show-Button-In-Sidebar" = true;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-diagnostics-Visible" = false;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kate_plugin_katesearch-Position" = 3;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kate_plugin_katesearch-Show-Button-In-Sidebar" = true;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kate_plugin_katesearch-Visible" = false;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kate_private_plugin_katefiletreeplugin-Position" = 0;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kate_private_plugin_katefiletreeplugin-Show-Button-In-Sidebar" = true;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kate_private_plugin_katefiletreeplugin-Visible" = false;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kate_private_plugin_katekonsoleplugin-Position" = 3;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kate_private_plugin_katekonsoleplugin-Show-Button-In-Sidebar" = true;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kate_private_plugin_katekonsoleplugin-Visible" = false;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kateproject-Position" = 0;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kateproject-Show-Button-In-Sidebar" = true;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kateproject-Visible" = false;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kateprojectgit-Position" = 0;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kateprojectgit-Show-Button-In-Sidebar" = true;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kateprojectgit-Visible" = false;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kateprojectinfo-Position" = 3;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kateprojectinfo-Show-Button-In-Sidebar" = true;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-kateprojectinfo-Visible" = false;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-lspclient_symbol_outline-Position" = 0;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-lspclient_symbol_outline-Show-Button-In-Sidebar" = true;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-lspclient_symbol_outline-Visible" = false;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-output-Position" = 3;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-output-Show-Button-In-Sidebar" = true;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-ToolView-output-Visible" = false;
|
||||
"kate/anonymous.katesession"."MainWindow0"."Kate-MDI-V-Splitter" = "0,369,0";
|
||||
"kate/anonymous.katesession"."MainWindow0"."ToolBarsMovable" = "Disabled";
|
||||
"kate/anonymous.katesession"."MainWindow0 Settings"."ToolBarsMovable" = "Disabled";
|
||||
"kate/anonymous.katesession"."MainWindow0 Settings"."WindowState" = 8;
|
||||
"kate/anonymous.katesession"."MainWindow0-Splitter 0"."Children" = "MainWindow0-ViewSpace 0";
|
||||
"kate/anonymous.katesession"."MainWindow0-Splitter 0"."Orientation" = 1;
|
||||
"kate/anonymous.katesession"."MainWindow0-Splitter 0"."Sizes" = 594;
|
||||
"kate/anonymous.katesession"."MainWindow0-ViewSpace 0"."Active View" = "sftp://solis/home/horseman/wget-log.1";
|
||||
"kate/anonymous.katesession"."MainWindow0-ViewSpace 0"."Count" = 1;
|
||||
"kate/anonymous.katesession"."MainWindow0-ViewSpace 0"."Documents" = "sftp://solis/home/horseman/wget-log.1";
|
||||
"kate/anonymous.katesession"."MainWindow0-ViewSpace 0"."View 0" = "sftp://solis/home/horseman/wget-log.1";
|
||||
"kate/anonymous.katesession"."MainWindow0-ViewSpace 0 file:\\/\\/\\/home\\/horseman\\/gpus.json"."ScrollLine" = 2060;
|
||||
"kate/anonymous.katesession"."Open Documents"."Count" = 1;
|
||||
"kate/anonymous.katesession"."Open MainWindows"."Count" = 1;
|
||||
"kate/anonymous.katesession"."Plugin:kateprojectplugin:"."projects" = "";
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."BinaryFiles" = false;
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."CurrentExcludeFilter" = "-1";
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."CurrentFilter" = "-1";
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."ExcludeFilters" = "";
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."ExpandSearchResults" = false;
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."Filters" = "";
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."FollowSymLink" = false;
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."HiddenFiles" = false;
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."MatchCase" = false;
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."Place" = 1;
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."Recursive" = true;
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."Replaces" = "";
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."Search" = "";
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."SearchAsYouTypeAllProjects" = true;
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."SearchAsYouTypeCurrentFile" = true;
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."SearchAsYouTypeFolder" = true;
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."SearchAsYouTypeOpenFiles" = true;
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."SearchAsYouTypeProject" = true;
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."SearchDiskFiles" = "";
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."SearchDiskFiless" = "";
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."SizeLimit" = 128;
|
||||
"kate/anonymous.katesession"."Plugin:katesearchplugin:MainWindow:0"."UseRegExp" = false;
|
||||
};
|
||||
};
|
||||
}
|
||||
39
modules/wm/plasma/default.nix
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit (lib) mkEnableOption mkIf mkOption types;
|
||||
cfg = config.horseman.wm.plasma;
|
||||
in {
|
||||
options = {
|
||||
horseman.wm.plasma = {
|
||||
enable = mkEnableOption "Plasma 6";
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
services = {
|
||||
xserver.enable = true;
|
||||
|
||||
desktopManager.plasma6.enable = true;
|
||||
displayManager = {
|
||||
sddm.autoNumlock = true;
|
||||
};
|
||||
|
||||
power-profiles-daemon.enable = true;
|
||||
};
|
||||
|
||||
environment.plasma6.excludePackages = with pkgs.kdePackages; [
|
||||
kate
|
||||
konsole
|
||||
];
|
||||
|
||||
home-manager.users.horseman = {
|
||||
imports = [./config.nix];
|
||||
};
|
||||
};
|
||||
}
|
||||
20
modules/wm/qtile/config/LICENSE
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2020 Daniel Diaz
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
91
modules/wm/qtile/config/README.md
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
# Qtile configuration file
|
||||
|
||||
## Screenshots 🖥️
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
## What is Qtile?
|
||||
|
||||
[Qtile](http://www.qtile.org/) is a window manager written and configured in Python🐍. It is hackable and lightweight, you can install it among other desktop environments and [standalone WM's](https://wiki.archlinux.org/index.php/window_manager).
|
||||
|
||||
## Installation 🐧
|
||||
|
||||
Install Qtile and other dependencies.
|
||||
|
||||
### For Arch Linux
|
||||
All software, one command:
|
||||
|
||||
```bash
|
||||
yay -S qtile picom rofi nitrogen xorg-server-xephyr
|
||||
lxappearance-gtk3 megasync python-psutil brave-browser alacritty
|
||||
bat playerctl pulseaudio-ctl dunst alacritty fish starship neovim
|
||||
pavucontrol flameshot noto-fonts-emoji noto-fonts-emoji brightnessctl blueman xfce4-power-manager network-manager-applet xfce4-clipman-plugin
|
||||
```
|
||||
|
||||
Also install Rofi Power menu:
|
||||
```
|
||||
git clone git@github.com:jluttine/rofi-power-menu.git
|
||||
cp rofi-power-menu ~/.local/bin/
|
||||
```
|
||||
|
||||
The [xephyr](https://wiki.archlinux.org/index.php/Xephyr) package is for testing purposes.
|
||||
|
||||
[Nitrogen](https://wiki.archlinux.org/index.php/nitrogen) help us to set a cool wallpaper since Qtile doesn't have a wallpaper manager by default.
|
||||
|
||||
### For Debian, Ubuntu
|
||||
|
||||
For Debian, Ubuntu and derivates [here](http://docs.qtile.org/en/latest/manual/install/ubuntu.html) is the qtile installation guide.
|
||||
|
||||
#### Dependencies
|
||||
|
||||
```
|
||||
sudo apt install picom rofi xserver-xephyr nitrogen
|
||||
```
|
||||
|
||||
## Cloning the config files 📁
|
||||
|
||||
```
|
||||
git clone git@github.com:DaniDiazTech/Qtile-Config.git ~/.config/qtile
|
||||
```
|
||||
|
||||
## Testing 🧪
|
||||
|
||||
If you want to test the config files without crashing your current qtile instance, type the following commands:
|
||||
|
||||
```
|
||||
Xephyr -br -ac -noreset -screen 1280x720 :1 &
|
||||
DISPLAY=:1 qtile "/PATH/TO/TEST-CONFIG"
|
||||
```
|
||||
|
||||
Once you've done all these steps you should have a cool Qtile instance, but most keybindings won't work, because probably you don´t have the software I use, you could install [my software](https://github.com/DaniDiazTech/Qtile-Config/blob/main/software.txt) or re-map the keybindings in [keybindings.py](https://github.com/Daniel1404/Qtile-Config/blob/main/keybindings.py) file.
|
||||
|
||||
## Startup 🏁
|
||||
|
||||
One of the most important functions in the config is the startup function located at the bottom of _config.py_.
|
||||
|
||||
``` python
|
||||
@hook.subscribe.startup_once
|
||||
def start_once():
|
||||
home = os.path.expanduser('~')
|
||||
subprocess.call([home + '/.config/qtile/autostart.sh'])
|
||||
```
|
||||
|
||||
You can manage the autostart applications editing the _autostart.sh_ file.
|
||||
|
||||
``` bash
|
||||
#! /bin/bash
|
||||
picom --experimental-backend &
|
||||
nitrogen --restore &
|
||||
```
|
||||
|
||||
You can setup your Qtile instance quickly using the `setup.py` file:
|
||||
|
||||
```python
|
||||
python setup.py
|
||||
```
|
||||
|
||||
Remember to set a wallpaper with nitrogen so every time you boot into Qtile, your wallpaper will be restored.
|
||||
104
modules/wm/qtile/config/config.py
Normal file
|
|
@ -0,0 +1,104 @@
|
|||
###############################################
|
||||
### QTILE CONFIGURATION FILE OF DANIEL DIAZ ###
|
||||
#
|
||||
# ____ ____
|
||||
# | _ \ | _ \ Copyright (c) 2020 Daniel Diaz
|
||||
# | | | || | | |
|
||||
# | |_| || |_| | http://www.github.com/DaniDiazTech/
|
||||
# |____/ |____/
|
||||
#
|
||||
|
||||
|
||||
####### IMPORTS #########
|
||||
import os
|
||||
import subprocess
|
||||
|
||||
|
||||
# from typing import List # noqa: F401
|
||||
|
||||
from libqtile import hook, layout
|
||||
from libqtile.config import Group, Match
|
||||
|
||||
# Local Files
|
||||
from keys.keybindings import Mouse,Keybindings
|
||||
|
||||
from widgets import MyWidgets
|
||||
from layouts import Layouts
|
||||
from groups import CreateGroups
|
||||
from icons import group_icons
|
||||
|
||||
|
||||
###### MAIN ######
|
||||
if __name__ in ["config", "__main__"]:
|
||||
# Initializes objects
|
||||
|
||||
# Initializes keybindings
|
||||
obj_keys = Keybindings()
|
||||
|
||||
# Mouse
|
||||
obj_mouse = Mouse()
|
||||
obj_widgets = MyWidgets()
|
||||
obj_layouts = Layouts()
|
||||
obj_groups = CreateGroups()
|
||||
|
||||
# Initializes qtile variables
|
||||
keys = obj_keys.init_keys()
|
||||
mouse = obj_mouse.init_mouse()
|
||||
layouts = obj_layouts.init_layouts()
|
||||
groups = obj_groups.init_groups()
|
||||
|
||||
# Append group keys for groups
|
||||
keys += obj_keys.init_keys_groups(group_icons)
|
||||
|
||||
### DISPLAYS WIDGETS IN THE SCREEN ####
|
||||
|
||||
screens = obj_widgets.init_screen()
|
||||
main_widgets_list = obj_widgets.init_widgets_list()
|
||||
widgets_screen1 = obj_widgets.init_widgets_screen()
|
||||
|
||||
|
||||
|
||||
dgroups_key_binder = None
|
||||
|
||||
dgroups_app_rules = [] # type: list
|
||||
|
||||
follow_mouse_focus = True
|
||||
|
||||
bring_front_click = False
|
||||
|
||||
cursor_warp = False
|
||||
|
||||
|
||||
floating_layout = layout.Floating(float_rules=[
|
||||
# Run the utility of `xprop` to see the wm class and name of an X client.
|
||||
*layout.Floating.default_float_rules,
|
||||
Match(wm_class='confirmreset'), # gitk
|
||||
Match(wm_class='dialog'), # Dialogs stuff
|
||||
Match(wm_class='makebranch'), # gitk
|
||||
Match(wm_class='maketag'), # gitk
|
||||
Match(wm_class='ssh-askpass'), # ssh-askpass
|
||||
Match(title='branchdialog'), # gitk
|
||||
Match(title='pinentry'), # GPG key password entry
|
||||
])
|
||||
auto_fullscreen = True
|
||||
|
||||
focus_on_window_activation = "smart"
|
||||
|
||||
reconfigure_screens = True
|
||||
|
||||
# If things like steam games want to auto-minimize themselves when losing
|
||||
# focus, should we respect this or not?
|
||||
respect_minimize_requests = True
|
||||
|
||||
# XXX: Gasp! We're lying here. In fact, nobody really uses or cares about this
|
||||
wmname = "LG3D"
|
||||
|
||||
@hook.subscribe.startup_once
|
||||
def start_once():
|
||||
home = os.path.expanduser('~')
|
||||
subprocess.call([home + '/.local/bin/autostart'])
|
||||
|
||||
@hook.subscribe.client_new
|
||||
def dialogs(window):
|
||||
if(window.window.get_wm_type() == 'dialog' or window.window.get_wm_transient_for()):
|
||||
window.floating = True
|
||||
117
modules/wm/qtile/config/config_keybindings.py
Normal file
|
|
@ -0,0 +1,117 @@
|
|||
"""
|
||||
MODIFY THIS FILE TO CREATE CUSTOM KEYBINDINGS
|
||||
|
||||
Keybindings are configured with tuples, inside Predifined lists Variables
|
||||
|
||||
Modifier -> list() -> Ex: [MOD, CONTROL]
|
||||
|
||||
Key -> str() -> Ex: 'j'
|
||||
|
||||
Command -> str() -> Ex: vscode
|
||||
|
||||
(Modifier, Key, Command)
|
||||
"""
|
||||
|
||||
from libqtile.confreader import ConfigError
|
||||
|
||||
# Import default mod keys
|
||||
from keys.default import *
|
||||
|
||||
from functions import PWA
|
||||
|
||||
from os.path import expanduser
|
||||
|
||||
HOME = expanduser("~")
|
||||
|
||||
# Define constants here
|
||||
TERMINAL = "alacritty"
|
||||
|
||||
|
||||
# Basic window manager movements
|
||||
|
||||
|
||||
# Qtile shutdown/restart keys
|
||||
SHUTDOWN_MODIFIER = [MOD, CONTROL]
|
||||
RESTART = "r"
|
||||
SHUTDOWN = "q"
|
||||
|
||||
|
||||
# Group movement keys:
|
||||
GROUPS_KEY = CONTROL
|
||||
SWAP_GROUP_KEY = SHIFT
|
||||
|
||||
NEXT_GROUP = "period"
|
||||
PREV_GROUP = "comma"
|
||||
|
||||
|
||||
# ------------ Hardware Configs ------------
|
||||
HARDWARE_KEYS = [
|
||||
# (Modifier, Key, Command)
|
||||
|
||||
# Volume
|
||||
([], "XF86AudioLowerVolume", "pactl set-sink-volume @DEFAULT_SINK@ -5%"),
|
||||
([], "XF86AudioRaiseVolume", "pactl set-sink-volume @DEFAULT_SINK@ +5%"),
|
||||
([], "XF86AudioMute", "pactl set-sink-mute @DEFAULT_SINK@ toggle"),
|
||||
|
||||
# Brightness
|
||||
([], "XF86MonBrightnessUp", "brightnessctl set +5%"),
|
||||
([], "XF86MonBrightnessDown", "brightnessctl set 5%-"),
|
||||
]
|
||||
|
||||
|
||||
APPS = [
|
||||
([MOD], "Return", TERMINAL),
|
||||
# (Modifier, Key, Command)
|
||||
([MOD], "e", "thunar"),
|
||||
([MOD, ALT], "d", "emacs"),
|
||||
([MOD, ALT], "o", "env LIBGL_ALWAYS_SOFTWARE=1 obs"),
|
||||
([MOD, ALT], "v", "gvim"),
|
||||
([MOD, ALT], "b", "brave"),
|
||||
([MOD, ALT], "c", "code"),
|
||||
([MOD, ALT], "p", "pycharm"),
|
||||
([MOD, ALT], "a", "pavucontrol"),
|
||||
([MOD, ALT], "e", "vim -g .config/qtile/config.py"),
|
||||
([MOD, ALT], "z", "zoom"),
|
||||
|
||||
# Media hotkeys
|
||||
([MOD], "Up", "pulseaudio-ctl up 5"),
|
||||
([MOD], "Down", "pulseaudio-ctl down 5"),
|
||||
|
||||
# Makes reference to play-pause script
|
||||
# You can find it in my scripts repository
|
||||
([ALTGR], "space", "play-pause"),
|
||||
|
||||
# Run "rofi-theme-selector" in terminal to select a theme
|
||||
([MOD], "space", 'rofi -modi "drun,power-menu:rofi-power-menu,run,window,ssh" -show drun -show-icons'),
|
||||
|
||||
# Screenshots
|
||||
([], "Print", "xfce4-screenshooter"),
|
||||
# Full screen screenshot
|
||||
([ALT], "Print", "xfce4-screenshooter -f -c"),
|
||||
|
||||
# Terminal apps
|
||||
([MOD, ALT], "n", TERMINAL + " -e nvim"),
|
||||
|
||||
]
|
||||
|
||||
##########################
|
||||
# Your custom keys here #
|
||||
##########################
|
||||
|
||||
CUSTOM_SPAWN_KEYS = [
|
||||
# PWA keys
|
||||
([MOD, ALT], "s", PWA.spotify()),
|
||||
([MOD, ALT], "m", PWA.music()),
|
||||
([MOD, ALT], "t", PWA.calendar()),
|
||||
([MOD, ALT], "y", PWA.youtube()),
|
||||
([MOD, ALT], "l", PWA.notion()),
|
||||
([MOD, ALT], "h", PWA.habitica()),
|
||||
]
|
||||
|
||||
|
||||
SPAWN_KEYS = HARDWARE_KEYS + APPS + CUSTOM_SPAWN_KEYS
|
||||
|
||||
SPAWN_CMD_KEYS = [
|
||||
# Takes full screenshot and creates a file on the screenshot folder
|
||||
([SHIFT], "Print", f"xfce4-screenshooter -f -s {HOME}/Pictures/Screenshots/"),
|
||||
]
|
||||
85
modules/wm/qtile/config/functions.py
Normal file
|
|
@ -0,0 +1,85 @@
|
|||
from libqtile.lazy import lazy
|
||||
# from libqtile.command_client import InteractiveCommandClient
|
||||
|
||||
|
||||
class Functions:
|
||||
|
||||
##### MOVE WINDOW IN GROUPS #####
|
||||
|
||||
@staticmethod
|
||||
def window_to_prev_group():
|
||||
@lazy.function
|
||||
def __inner(qtile):
|
||||
i = qtile.groups.index(qtile.current_group)
|
||||
|
||||
if qtile.current_window and i != 0:
|
||||
group = qtile.groups[i - 1].name
|
||||
qtile.current_window.togroup(group, switch_group=True)
|
||||
|
||||
return __inner
|
||||
|
||||
@staticmethod
|
||||
def window_to_next_group():
|
||||
@lazy.function
|
||||
def __inner(qtile):
|
||||
i = qtile.groups.index(qtile.current_group)
|
||||
|
||||
if qtile.current_window and i != len(qtile.groups):
|
||||
group = qtile.groups[i + 1].name
|
||||
qtile.current_window.togroup(group, switch_group=True)
|
||||
|
||||
return __inner
|
||||
|
||||
##### KILL ALL WINDOWS #####
|
||||
|
||||
@staticmethod
|
||||
def kill_all_windows():
|
||||
@lazy.function
|
||||
def __inner(qtile):
|
||||
for window in qtile.current_group.windows:
|
||||
window.kill()
|
||||
|
||||
return __inner
|
||||
|
||||
@staticmethod
|
||||
def kill_all_windows_minus_current():
|
||||
@lazy.function
|
||||
def __inner(qtile):
|
||||
for window in qtile.current_group.windows:
|
||||
if window != qtile.current_window:
|
||||
window.kill()
|
||||
|
||||
return __inner
|
||||
|
||||
|
||||
class PWA:
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
@staticmethod
|
||||
def notion():
|
||||
return "brave --profile-directory=Default --app=https://notion.so"
|
||||
|
||||
@staticmethod
|
||||
def music():
|
||||
return "brave --profile-directory=Default --app=https://music.youtube.com/"
|
||||
|
||||
@staticmethod
|
||||
def spotify():
|
||||
return "brave --profile-directory=Default --app=https://open.spotify.com/"
|
||||
|
||||
@staticmethod
|
||||
def youtube():
|
||||
return "brave --user-data-dir=Default --app=https://www.youtube.com"
|
||||
|
||||
@staticmethod
|
||||
def calendar():
|
||||
return "brave --profile-directory=Default --app=https://calendar.google.com/calendar/"
|
||||
|
||||
@staticmethod
|
||||
def habitica():
|
||||
return "brave --profile-directory=Default --app=https://habitica.com/"
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
print("This is an utilities module")
|
||||
17
modules/wm/qtile/config/groups.py
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
from libqtile.config import Group
|
||||
from icons import group_icons
|
||||
|
||||
class CreateGroups:
|
||||
group_names = group_icons
|
||||
|
||||
def init_groups(self):
|
||||
"""
|
||||
Return the groups of Qtile
|
||||
"""
|
||||
#### First and last
|
||||
groups = [Group(name, layout="max") if name == self.group_names[0]
|
||||
else Group(name, layout="floating")
|
||||
if name == self.group_names[-1] else Group(name, layout="monadtall")
|
||||
for name in self.group_names]
|
||||
return groups
|
||||
|
||||
15
modules/wm/qtile/config/icons.py
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
|
||||
# You can define a letter and its icon here
|
||||
group_icons = ["B ",
|
||||
"D ",
|
||||
"T ",
|
||||
"V ",
|
||||
"M ",
|
||||
"C ",
|
||||
"E ",
|
||||
"N ",
|
||||
]
|
||||
|
||||
BIN
modules/wm/qtile/config/icons/layout-floating.png
Normal file
|
After Width: | Height: | Size: 232 B |
BIN
modules/wm/qtile/config/icons/layout-max.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
modules/wm/qtile/config/icons/layout-monadtall.png
Normal file
|
After Width: | Height: | Size: 218 B |
BIN
modules/wm/qtile/config/icons/layout-tile.png
Normal file
|
After Width: | Height: | Size: 225 B |
BIN
modules/wm/qtile/config/icons/layout-treetab.png
Normal file
|
After Width: | Height: | Size: 212 B |
BIN
modules/wm/qtile/config/icons/python.png
Normal file
|
After Width: | Height: | Size: 746 B |
BIN
modules/wm/qtile/config/icons/terminal-iconx14.png
Normal file
|
After Width: | Height: | Size: 288 B |
BIN
modules/wm/qtile/config/icons/terminal-iconx24.png
Normal file
|
After Width: | Height: | Size: 365 B |
4
modules/wm/qtile/config/keys/assets.py
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
def create_keybinding():
|
||||
"""
|
||||
Returns a key object based on a dictionary
|
||||
"""
|
||||
60
modules/wm/qtile/config/keys/default.py
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
"""Qtile default keybindings"""
|
||||
|
||||
# Keys
|
||||
MOD = "mod4"
|
||||
ALT = "mod1"
|
||||
ALTGR = "mod5"
|
||||
SHIFT = "shift"
|
||||
CONTROL = "control"
|
||||
|
||||
# Basic wm bindings
|
||||
|
||||
# All of these variables include the MOVEMENT_KEYS at the start
|
||||
|
||||
# The key which the WM will use to move the layouts
|
||||
MOVEMENT_KEY = MOD
|
||||
KILL_KEY = MOD
|
||||
|
||||
SWAP_KEY = SHIFT
|
||||
FLOATING_KEY = SHIFT
|
||||
|
||||
|
||||
############ BINDINGS FOR MONADTALL ##############
|
||||
# Move between windows
|
||||
LEFT = "h"
|
||||
RIGHT = "l"
|
||||
DOWN = "j"
|
||||
UP = "k"
|
||||
|
||||
# Swap windows
|
||||
SWAP_LEFT = "h"
|
||||
SWAP_RIGHT = "l"
|
||||
SWAP_DOWN = "j"
|
||||
SWAP_UP = "k"
|
||||
|
||||
SWAP_FLIP = "space" # Flip the layout
|
||||
|
||||
########### LAYOUTS ###############
|
||||
# Change windows lenght
|
||||
GROW = "i"
|
||||
SHRINK = "m"
|
||||
NORMALIZE = "n"
|
||||
MAXIMIZE = "o"
|
||||
|
||||
# Floating layout
|
||||
TOOGLE_FLOATING = "f"
|
||||
TOOGLE_FULL = "g"
|
||||
|
||||
# Groups key
|
||||
# Move screen to next and previous group
|
||||
NEXT = "k"
|
||||
PREVIOUS = "j"
|
||||
|
||||
# Kill Functions
|
||||
KILL_CURRENT = "w"
|
||||
KILL_ALL = "x"
|
||||
KILL_ALL_MINUS_CURRENT = "c"
|
||||
|
||||
# Rotates layouts
|
||||
|
||||
TOOGLE_LAYOUT = "Tab"
|
||||
165
modules/wm/qtile/config/keys/keybindings.py
Normal file
|
|
@ -0,0 +1,165 @@
|
|||
|
||||
from libqtile.config import Click, Drag, Key
|
||||
from libqtile.lazy import lazy
|
||||
|
||||
# Import the function that move the window to the next and prev group
|
||||
from functions import Functions, PWA
|
||||
|
||||
from config_keybindings import *
|
||||
|
||||
|
||||
class Keybindings:
|
||||
|
||||
keys = []
|
||||
|
||||
spawn_keys = SPAWN_KEYS
|
||||
|
||||
cmd_keys = SPAWN_CMD_KEYS
|
||||
|
||||
def create_layout_keys(self):
|
||||
############ BINDINGS FOR MONADTALL ##############
|
||||
modifier = [MOVEMENT_KEY]
|
||||
|
||||
layout_left = Key(modifier, LEFT, lazy.layout.left())
|
||||
|
||||
layout_right = Key(modifier, RIGHT, lazy.layout.right())
|
||||
|
||||
layout_down = Key(modifier, DOWN, lazy.layout.down())
|
||||
|
||||
layout_up = Key(modifier, UP, lazy.layout.up())
|
||||
|
||||
toogle_layout = Key(modifier, TOOGLE_LAYOUT, lazy.next_layout())
|
||||
|
||||
self.keys += [layout_left, layout_right, layout_down, layout_up, toogle_layout]
|
||||
|
||||
def create_swap_keys(self):
|
||||
modifier = [MOVEMENT_KEY, SWAP_KEY]
|
||||
|
||||
left = Key(modifier, SWAP_LEFT, lazy.layout.swap_left())
|
||||
right = Key(modifier, SWAP_RIGHT, lazy.layout.swap_right())
|
||||
down = Key(modifier, SWAP_DOWN, lazy.layout.shuffle_down())
|
||||
up = Key(modifier, SWAP_UP, lazy.layout.shuffle_up())
|
||||
|
||||
flip = Key(modifier, SWAP_FLIP, lazy.layout.flip())
|
||||
|
||||
self.keys += [left, right, down, up, flip]
|
||||
|
||||
|
||||
def create_windows_keys(self):
|
||||
|
||||
modifier = [MOVEMENT_KEY]
|
||||
|
||||
grow = Key(modifier, GROW, lazy.layout.grow())
|
||||
shrink = Key(modifier, SHRINK, lazy.layout.shrink())
|
||||
normalize = Key(modifier, NORMALIZE, lazy.layout.normalize())
|
||||
maximize = Key(modifier, MAXIMIZE, lazy.layout.maximize())
|
||||
|
||||
self.keys += [grow, shrink, normalize, maximize]
|
||||
|
||||
def create_shutdown_keys(self):
|
||||
|
||||
shutdown = Key(SHUTDOWN_MODIFIER, SHUTDOWN, lazy.shutdown())
|
||||
restart = Key(SHUTDOWN_MODIFIER, RESTART, lazy.restart())
|
||||
|
||||
self.keys += [shutdown, restart]
|
||||
|
||||
def create_kill_keys(self):
|
||||
modifier = [MOVEMENT_KEY, ALTGR]
|
||||
|
||||
all_minus_current = Key(modifier, KILL_ALL_MINUS_CURRENT,
|
||||
Functions.kill_all_windows_minus_current())
|
||||
all_ = Key(modifier, KILL_ALL,
|
||||
Functions.kill_all_windows())
|
||||
current = Key([KILL_KEY], KILL_CURRENT,
|
||||
lazy.window.kill())
|
||||
|
||||
self.keys += [all_minus_current, all_, current]
|
||||
|
||||
def create_floating_keys(self):
|
||||
|
||||
modifier = [MOVEMENT_KEY, FLOATING_KEY]
|
||||
|
||||
floating = Key(modifier, TOOGLE_FLOATING, lazy.window.toggle_floating())
|
||||
full = Key(modifier, TOOGLE_FULL, lazy.window.toggle_fullscreen())
|
||||
|
||||
self.keys += [floating, full]
|
||||
|
||||
def create_groups_keys(self):
|
||||
modifier = [GROUPS_KEY]
|
||||
swap_modifier = [GROUPS_KEY, SWAP_GROUP_KEY]
|
||||
screen_modifier = [MOVEMENT_KEY]
|
||||
|
||||
move_next = Key(modifier, NEXT_GROUP, lazy.screen.next_group())
|
||||
move_prev = Key(modifier, PREV_GROUP, lazy.screen.prev_group())
|
||||
|
||||
swap_next = Key(swap_modifier, NEXT_GROUP, Functions.window_to_next_group())
|
||||
swap_prev = Key(swap_modifier, PREV_GROUP, Functions.window_to_prev_group())
|
||||
|
||||
move_next_screen = Key(screen_modifier, NEXT_GROUP, lazy.next_screen())
|
||||
move_prev_screen = Key(screen_modifier, PREV_GROUP, lazy.next_screen())
|
||||
|
||||
self.keys += [move_next, move_prev, swap_next, swap_prev, move_next_screen, move_prev_screen]
|
||||
|
||||
def create_spawn_keys(self):
|
||||
|
||||
for spawn_key in self.spawn_keys:
|
||||
|
||||
modifier, key, command = spawn_key
|
||||
|
||||
keybinding = Key(modifier, key, lazy.spawn(command))
|
||||
|
||||
self.keys.append(keybinding)
|
||||
|
||||
def create_cmd_keys(self):
|
||||
|
||||
for cmd_key in self.cmd_keys:
|
||||
|
||||
modifier, key, command = cmd_key
|
||||
|
||||
keybinding = Key(modifier, key, lazy.spawncmd(command))
|
||||
|
||||
self.keys.append(keybinding)
|
||||
|
||||
|
||||
def init_keys_groups(self, group_names):
|
||||
"""
|
||||
Create bindings to move between groups
|
||||
"""
|
||||
group_keys = []
|
||||
for icon in group_names:
|
||||
index = (icon[0]).lower()
|
||||
|
||||
group_keys += [Key([MOVEMENT_KEY, GROUPS_KEY], index, lazy.group[icon].toscreen()), Key(
|
||||
[MOVEMENT_KEY, SWAP_GROUP_KEY], index, lazy.window.togroup(icon, switch_group=True))]
|
||||
|
||||
return group_keys
|
||||
|
||||
def init_keys(self):
|
||||
|
||||
self.create_layout_keys()
|
||||
self.create_swap_keys()
|
||||
self.create_windows_keys()
|
||||
self.create_shutdown_keys()
|
||||
self.create_kill_keys()
|
||||
self.create_floating_keys()
|
||||
self.create_groups_keys()
|
||||
|
||||
self.create_cmd_keys()
|
||||
self.create_spawn_keys()
|
||||
|
||||
return self.keys
|
||||
|
||||
|
||||
class Mouse:
|
||||
def __init__(self, mod_key=MOD):
|
||||
self.mod = mod_key
|
||||
|
||||
def init_mouse(self):
|
||||
mouse = [
|
||||
Drag([self.mod], "Button1", lazy.window.set_position_floating(),
|
||||
start=lazy.window.get_position()),
|
||||
Drag([self.mod], "Button3", lazy.window.set_size_floating(),
|
||||
start=lazy.window.get_size()),
|
||||
Click([self.mod], "Button2", lazy.window.bring_to_front())
|
||||
]
|
||||
return mouse
|
||||
15
modules/wm/qtile/config/keys/print_keybindings.py
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
"""
|
||||
Script that automates the process of writing a keybindings.md
|
||||
By directly getting the keybindings from keybindings.py
|
||||
"""
|
||||
|
||||
# Local import
|
||||
from keybindings import Keybindings
|
||||
|
||||
def get_keybindings():
|
||||
current_keybindings = Keybindings()
|
||||
list_of_keys = list(current_keybindings.init_keys())
|
||||
return list_of_keys
|
||||
|
||||
|
||||
print(*get_keybindings(), sep="\n")
|
||||
51
modules/wm/qtile/config/layouts.py
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
from libqtile import layout
|
||||
|
||||
|
||||
class Layouts:
|
||||
def __init__(self):
|
||||
self.default = {
|
||||
"border_width": 2,
|
||||
"margin": 8,
|
||||
"border_focus": "#668bd7",
|
||||
"border_normal": "1D2330"}
|
||||
|
||||
def init_layouts(self):
|
||||
"""
|
||||
Returns the layouts variable
|
||||
"""
|
||||
layouts = [
|
||||
layout.Max(**self.default),
|
||||
layout.MonadTall(**self.default),
|
||||
layout.floating.Floating(**self.default),
|
||||
layout.TreeTab(
|
||||
font="Ubuntu",
|
||||
fontsize=10,
|
||||
sections=["FIRST", "SECOND", "THIRD", "FOURTH"],
|
||||
section_fontsize=10,
|
||||
border_width=2,
|
||||
bg_color="1c1f24",
|
||||
active_bg="c678dd",
|
||||
active_fg="000000",
|
||||
inactive_bg="a9a1e1",
|
||||
inactive_fg="1c1f24",
|
||||
padding_left=0,
|
||||
padding_x=0,
|
||||
padding_y=5,
|
||||
section_top=10,
|
||||
section_bottom=20,
|
||||
level_shift=8,
|
||||
vspace=3,
|
||||
panel_width=200
|
||||
),
|
||||
# layout.Stack(num_stacks=2),
|
||||
# Try more layouts by unleashing below layouts.
|
||||
# layout.Bsp(),
|
||||
# layout.Columns(),
|
||||
# layout.Matrix(),
|
||||
# layout.MonadWide(**self.default),
|
||||
# layout.RatioTile(),
|
||||
# layout.Tile(),
|
||||
# layout.VerticalTile(),
|
||||
# layout.Zoomy(),
|
||||
]
|
||||
return layouts
|
||||
26
modules/wm/qtile/config/scripts/autostart.sh
Executable file
|
|
@ -0,0 +1,26 @@
|
|||
#!/usr/bin/env bash
|
||||
# ---
|
||||
# Use "run program" to run it only if it is not already running
|
||||
# Use "program &" to run it regardless
|
||||
# ---
|
||||
# NOTE: This script runs with every restart of AwesomeWM
|
||||
# TODO: run_once
|
||||
|
||||
|
||||
function run {
|
||||
if ! pgrep $1 > /dev/null ;
|
||||
then
|
||||
$@&
|
||||
fi
|
||||
}
|
||||
|
||||
run picom -CGb &
|
||||
run nitrogen --restore &
|
||||
run /usr/lib/polkit-kde-authentication-agent-1 &
|
||||
run megasync
|
||||
run xfce4-clipman
|
||||
run xfce4-power-manager
|
||||
run gammy
|
||||
run dunst
|
||||
run nm-applet
|
||||
run blueman-applet
|
||||
4
modules/wm/qtile/config/scripts/play-pause.sh
Executable file
|
|
@ -0,0 +1,4 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
playerctl play-pause
|
||||
|
||||
225
modules/wm/qtile/config/setup.py
Executable file
|
|
@ -0,0 +1,225 @@
|
|||
# /usr/bin/python
|
||||
|
||||
# Os level operations
|
||||
import os
|
||||
from getpass import getuser
|
||||
|
||||
# Determinates if the program is installed
|
||||
from shutil import which
|
||||
|
||||
# Get the OS I'm in
|
||||
import platform
|
||||
|
||||
INSTALL_PATH = ".local/bin"
|
||||
|
||||
|
||||
def print_program_welcome():
|
||||
|
||||
row = "=" * 55
|
||||
|
||||
sep = "||"
|
||||
|
||||
welcome = "SETUP SCRIPT OF DANIEL'S QTILE CONFIG".center(len(row) - len(sep) * 2)
|
||||
|
||||
welcome = sep + welcome + sep
|
||||
|
||||
|
||||
print(row)
|
||||
|
||||
print("")
|
||||
|
||||
|
||||
print(welcome)
|
||||
|
||||
print("")
|
||||
|
||||
print(row + "\n")
|
||||
|
||||
print(f"Hi there {getuser()}, you are about to setup Qtile".center(len(row)))
|
||||
|
||||
print("\n" + row)
|
||||
|
||||
|
||||
def print_current_dir():
|
||||
print(f"Currently you are in {os.getcwd()} directory")
|
||||
|
||||
def get_correct_os():
|
||||
"""
|
||||
Returns the Os name:
|
||||
|
||||
get_os -> bool
|
||||
|
||||
Linux: linux
|
||||
Mac: darwin
|
||||
Windows: windows
|
||||
"""
|
||||
os = platform.system().lower()
|
||||
|
||||
return os == "linux"
|
||||
|
||||
|
||||
def get_home_path():
|
||||
"""
|
||||
Get Linux home path
|
||||
|
||||
get_home_path -> str
|
||||
"""
|
||||
return os.path.expanduser("~")
|
||||
|
||||
def get_local_bin(home):
|
||||
"""
|
||||
Returns the local bin path of the User
|
||||
"""
|
||||
return f"{home}/.local/bin"
|
||||
|
||||
def check_local_folder_exists():
|
||||
"""
|
||||
Check if .local/bin exists
|
||||
"""
|
||||
home = get_home_path()
|
||||
|
||||
local = get_local_bin(home)
|
||||
|
||||
return os.path.exists(local)
|
||||
|
||||
|
||||
def create_local_install_folder(local_bin):
|
||||
"""
|
||||
Creates local bin folder
|
||||
"""
|
||||
print("")
|
||||
print(f"Creating folder ar {local_bin}")
|
||||
print("")
|
||||
|
||||
try:
|
||||
os.mkdir(local_bin)
|
||||
except OSError:
|
||||
raise OSError(f"Creation of the directory {local_bin} failed")
|
||||
else:
|
||||
print(f"Successfully created the directory {local_bin}")
|
||||
|
||||
def get_response(message="yes/no"):
|
||||
"""
|
||||
returns -> bool
|
||||
"""
|
||||
while True:
|
||||
response = input(message).lower()
|
||||
|
||||
if response == "yes":
|
||||
return True
|
||||
elif response == "no":
|
||||
return False
|
||||
else:
|
||||
print("\nSorry your response must be yes or no\n")
|
||||
continue
|
||||
|
||||
|
||||
LOCAL_BIN = get_local_bin(get_home_path())
|
||||
|
||||
def link_scripts(path):
|
||||
|
||||
path = os.path.abspath(path)
|
||||
if not os.path.exists(path):
|
||||
raise OSError("Sorry that path doesn't exist")
|
||||
|
||||
|
||||
os.chdir(path)
|
||||
|
||||
i = 0
|
||||
|
||||
|
||||
for file_ in os.listdir(path):
|
||||
file_path = os.path.abspath(file_)
|
||||
|
||||
file_name = file_.split(".")[0]
|
||||
|
||||
link_path = LOCAL_BIN + f"/{file_name}"
|
||||
|
||||
if os.path.exists(link_path):
|
||||
print("You have already in path", file_name)
|
||||
continue
|
||||
|
||||
os.link(file_path, link_path)
|
||||
|
||||
i += 1
|
||||
|
||||
return f"Linked {i} files to .local/bin"
|
||||
|
||||
|
||||
def get_dependencies(software_path="software.txt"):
|
||||
"""software_path -> path of software.txt
|
||||
|
||||
returns list of dependencies
|
||||
"""
|
||||
|
||||
if not os.path.exists(software_path):
|
||||
print(f"The file {software_path} wasn't found. Please clone again or provide one")
|
||||
|
||||
if get_response("Continue without dependencies warnings? [yes/no]"):
|
||||
print("Dependencies won't be shown")
|
||||
return None
|
||||
else:
|
||||
print("Clone again or provide a file.")
|
||||
exit()
|
||||
|
||||
software = []
|
||||
|
||||
with open(software_path, "r") as file_:
|
||||
for line in file_:
|
||||
software.append(line.strip())
|
||||
|
||||
return software
|
||||
|
||||
def check_dependencies(dependencies=None):
|
||||
"""dependencies -> list
|
||||
|
||||
returns -> str programs that aren't installed
|
||||
"""
|
||||
if dependencies is None:
|
||||
return ""
|
||||
|
||||
not_installed = []
|
||||
|
||||
for program in dependencies:
|
||||
if which(program) is not None:
|
||||
continue
|
||||
|
||||
not_installed.append(program)
|
||||
|
||||
first_row = "The following software is not installed, some scripts may not work\n"
|
||||
|
||||
if not_installed:
|
||||
return first_row + "\n".join(not_installed)
|
||||
else:
|
||||
return ""
|
||||
|
||||
def main():
|
||||
|
||||
print_program_welcome()
|
||||
|
||||
if not get_correct_os():
|
||||
raise OSError("Sorry Qtile is only supported in Linux")
|
||||
|
||||
if not check_local_folder_exists():
|
||||
print("\n.local/bin folder doesn't exists\n")
|
||||
|
||||
response = get_response(message="Do you want to create that directory [yes, no] >> ")
|
||||
|
||||
if not response:
|
||||
print("Setup can't continue if .local/bin doesn't exists")
|
||||
print("Rerun the script or set up the scripts manually")
|
||||
exit()
|
||||
|
||||
print("Creating .local/bin/folder")
|
||||
create_local_install_folder(LOCAL_BIN)
|
||||
|
||||
|
||||
dependencies = get_dependencies()
|
||||
scripts_path = "./scripts"
|
||||
print(check_dependencies(dependencies=dependencies))
|
||||
print(link_scripts(path=scripts_path))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
||||
11
modules/wm/qtile/config/software.txt
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
picom
|
||||
nitrogen
|
||||
megasync
|
||||
xfce4-clipman-plugin
|
||||
playerctl
|
||||
pulseaudio-ctl
|
||||
bat
|
||||
python-psutil
|
||||
alacritty
|
||||
brave-browser
|
||||
lxappearance-gtk3
|
||||
456
modules/wm/qtile/config/widgets.py
Normal file
|
|
@ -0,0 +1,456 @@
|
|||
import os
|
||||
from libqtile import bar, widget
|
||||
from libqtile.lazy import lazy
|
||||
from libqtile.config import Screen
|
||||
|
||||
from functions import PWA
|
||||
# widget_defaults = dict(
|
||||
# font="Ubuntu Mono",
|
||||
# fontsize = 12,
|
||||
# padding = 2,
|
||||
# background=colors[2]
|
||||
# )
|
||||
|
||||
# extension_defaults = widget_defaults.copy()
|
||||
|
||||
|
||||
class MyWidgets:
|
||||
def __init__(self):
|
||||
self.colors = [["#292d3e", "#292d3e"], # panel background
|
||||
# background for current screen tab
|
||||
["#434758", "#434758"],
|
||||
["#ffffff", "#ffffff"], # font color for group names
|
||||
# border line color for current tab
|
||||
["#bc13fe", "#bc13fe"], # Group down color
|
||||
# border line color for other tab and odd widgets
|
||||
["#8d62a9", "#8d62a9"],
|
||||
["#668bd7", "#668bd7"], # color for the even widgets
|
||||
["#e1acff", "#e1acff"], # window name
|
||||
|
||||
["#000000", "#000000"],
|
||||
["#AD343E", "#AD343E"],
|
||||
["#f76e5c", "#f76e5c"],
|
||||
["#F39C12", "#F39C12"],
|
||||
["#F7DC6F", "#F7DC6F"],
|
||||
["#f1ffff", "#f1ffff"],
|
||||
["#4c566a", "#4c566a"], ]
|
||||
|
||||
self.termite = "alacritty"
|
||||
|
||||
def init_widgets_list(self):
|
||||
'''
|
||||
Function that returns the desired widgets in form of list
|
||||
'''
|
||||
widgets_list = [
|
||||
widget.Sep(
|
||||
linewidth=0,
|
||||
padding=5,
|
||||
foreground=self.colors[2],
|
||||
background=self.colors[0]
|
||||
),
|
||||
widget.GroupBox(
|
||||
font="Ubuntu Bold",
|
||||
fontsize=12,
|
||||
margin_y=2,
|
||||
margin_x=0,
|
||||
padding_y=5,
|
||||
padding_x=3,
|
||||
borderwidth=3,
|
||||
active=self.colors[-2],
|
||||
inactive=self.colors[-1],
|
||||
# rounded=True,
|
||||
rounded=False,
|
||||
# highlight_color=self.colors[9],
|
||||
# highlight_method="line",
|
||||
highlight_method='block',
|
||||
urgent_alert_method='block',
|
||||
# urgent_border=self.colors[9],
|
||||
this_current_screen_border=self.colors[9],
|
||||
this_screen_border=self.colors[4],
|
||||
other_current_screen_border=self.colors[0],
|
||||
other_screen_border=self.colors[0],
|
||||
foreground=self.colors[2],
|
||||
background=self.colors[0],
|
||||
disable_drag=True
|
||||
),
|
||||
# widget.Prompt(
|
||||
# prompt=lazy.spawncmd(),
|
||||
# font="Ubuntu Mono",
|
||||
# padding=10,
|
||||
# foreground=self.colors[3],
|
||||
# background=self.colors[1]
|
||||
# ),
|
||||
widget.Sep(
|
||||
linewidth=0,
|
||||
padding=25,
|
||||
foreground=self.colors[2],
|
||||
background=self.colors[0]
|
||||
),
|
||||
widget.WindowName(
|
||||
foreground=self.colors[6],
|
||||
background=self.colors[0],
|
||||
padding=5
|
||||
),
|
||||
widget.Systray(
|
||||
background=self.colors[0],
|
||||
padding=5
|
||||
),
|
||||
# widget.TextBox(
|
||||
# font="Ubuntu Bold",
|
||||
# text='',
|
||||
# background=self.colors[0],
|
||||
# foreground=self.colors[11],
|
||||
# padding=0,
|
||||
# fontsize=37
|
||||
# ),
|
||||
widget.Battery(
|
||||
charge_char='+', discharge_char='-', error_message='error',
|
||||
format='{percent:2.0%} ({char}{hour:d}:{min:02d})', hide_threshold=None,
|
||||
low_percentage=0.1, foreground=self.colors[7], background=self.colors[10], update_delay=10),
|
||||
widget.TextBox(
|
||||
text=" 🖬",
|
||||
foreground=self.colors[7],
|
||||
background=self.colors[11],
|
||||
padding=0,
|
||||
fontsize=14
|
||||
),
|
||||
widget.Memory(
|
||||
foreground=self.colors[7],
|
||||
background=self.colors[11],
|
||||
mouse_callbacks={'Button1': lambda: qtile.cmd_spawn(
|
||||
self.termite + ' -e htop')},
|
||||
padding=5
|
||||
),
|
||||
widget.ThermalSensor(
|
||||
# interface="enp5s0",
|
||||
# fmt='Net: {down} ↓↑ {up}',
|
||||
foreground=self.colors[7],
|
||||
background=self.colors[9],
|
||||
padding=5
|
||||
),
|
||||
# widget.TextBox(
|
||||
# text='',
|
||||
# background=self.colors[11],
|
||||
# foreground=self.colors[10],
|
||||
# padding=0,
|
||||
# fontsize=37
|
||||
# ),
|
||||
widget.TextBox(
|
||||
text=" ",
|
||||
foreground=self.colors[7],
|
||||
background=self.colors[10],
|
||||
padding=0,
|
||||
mouse_callbacks={
|
||||
"Button1": lambda: qtile.cmd_spawn("pavucontrol")}
|
||||
),
|
||||
widget.Volume(
|
||||
foreground=self.colors[7],
|
||||
background=self.colors[10],
|
||||
padding=5
|
||||
),
|
||||
# widget.TextBox(
|
||||
# text='',
|
||||
# background=self.colors[10],
|
||||
# foreground=self.colors[9],
|
||||
# padding=0,
|
||||
# fontsize=37
|
||||
# ),
|
||||
widget.CurrentLayoutIcon(
|
||||
custom_icon_paths=[os.path.expanduser(
|
||||
"~/.config/qtile/icons")],
|
||||
foreground=self.colors[0],
|
||||
background=self.colors[9],
|
||||
padding=0,
|
||||
scale=0.7
|
||||
),
|
||||
widget.CurrentLayout(
|
||||
foreground=self.colors[7],
|
||||
background=self.colors[9],
|
||||
padding=5
|
||||
),
|
||||
# widget.TextBox(
|
||||
# text='',
|
||||
# foreground=self.colors[8],
|
||||
# background=self.colors[9],
|
||||
# padding=0,
|
||||
# fontsize=37
|
||||
# ),
|
||||
widget.Clock(
|
||||
foreground=self.colors[7],
|
||||
background=self.colors[8],
|
||||
mouse_callbacks={
|
||||
"Button1": lambda qtile: qtile.cmd_spawn(PWA.calendar())},
|
||||
format="%A %d - %H:%M"
|
||||
),
|
||||
widget.Sep(
|
||||
linewidth=0,
|
||||
padding=10,
|
||||
foreground=self.colors[0],
|
||||
background=self.colors[8]
|
||||
),
|
||||
]
|
||||
return widgets_list
|
||||
|
||||
def init_widgets_screen(self):
|
||||
'''
|
||||
Function that returns the widgets in a list.
|
||||
It can be modified so it is useful if you have a multimonitor system
|
||||
'''
|
||||
widgets_screen = self.init_widgets_list()
|
||||
return widgets_screen
|
||||
|
||||
def init_widgets_screen2(self):
|
||||
'''
|
||||
Function that returns the widgets in a list.
|
||||
It can be modified so it is useful if you have a multimonitor system
|
||||
'''
|
||||
widgets_screen2 = self.init_widgets_screen()
|
||||
return widgets_screen2
|
||||
|
||||
def init_screen(self):
|
||||
'''
|
||||
Init the widgets in the screen
|
||||
'''
|
||||
return [Screen(top=bar.Bar(widgets=self.init_widgets_screen(), opacity=1.0, size=20)),
|
||||
Screen(top=bar.Bar(
|
||||
widgets=self.init_widgets_screen2(), opacity=1.0, size=20))
|
||||
]
|
||||
|
||||
|
||||
# bar = Bar([
|
||||
# Sep(
|
||||
# linewidth = 0,
|
||||
# padding = 2,
|
||||
# foreground = onedark_darker["color4"],
|
||||
# background = onedark_darker["color4"]
|
||||
# ),
|
||||
# Image(
|
||||
# filename = "~/.config/qtile/icons/archlinux_blue.png",
|
||||
# scale = "False",
|
||||
# mouse_callbacks = {'Button1': lambda: qtile.cmd_spawn("alacritty")},
|
||||
# background = onedark_darker["color4"],
|
||||
# ),
|
||||
# #widget.Sep(
|
||||
# # linewidth = 0,
|
||||
# # padding = 2,
|
||||
# # foreground = onedark_darker["colorback"],
|
||||
# # background = onedark_darker["colorback"]
|
||||
# #),
|
||||
# right_arrow(onedark_darker["color4"], onedark_darker["colorback"]),
|
||||
# GroupBox(
|
||||
# font = "JetBrains Nerd Font Mono Bold",
|
||||
# fontsize = 12,
|
||||
# fmt = '{}',
|
||||
# borderwidth = 2,
|
||||
# background = onedark_darker["colorback"],
|
||||
# active = onedark_darker["color6"],
|
||||
# inactive = onedark_darker["color5"],
|
||||
# rounded = False,
|
||||
# #Block_highlight_text_color = onedark_darker["color3"],
|
||||
# highlight_method = 'line',
|
||||
# highlight_color = onedark_darker["colorback"], # line block colour
|
||||
# this_current_screen_border = onedark_darker["color4"],
|
||||
# this_screen_border = onedark_darker["color7"],
|
||||
# urgent_alert_method = 'line',
|
||||
# urgent_border = onedark_darker["color10"],
|
||||
# urgent_text = onedark_darker["color14"],
|
||||
# disable_drag = True,
|
||||
# ),
|
||||
# right_arrow(onedark_darker["colorback"], onedark_darker["color14"]),
|
||||
# CurrentLayoutIcon(
|
||||
# custom_icon_paths = [os.path.expanduser("~/.config/qtile/icons")],
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# background = onedark_darker["color14"],
|
||||
# padding = 0,
|
||||
# scale = 0.7
|
||||
# ),
|
||||
# CurrentLayout(
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# background = onedark_darker["color14"],
|
||||
# padding = 5,
|
||||
# ),
|
||||
# right_arrow(onedark_darker["color14"], onedark_darker["color9"]),
|
||||
# TextBox(
|
||||
# text = '',
|
||||
# font = "Font Awesome 6 Free Solid",
|
||||
# fontsize = 15,
|
||||
# background = onedark_darker["color9"],
|
||||
# foreground = onedark_darker["color4"],
|
||||
# padding = 2
|
||||
# ),
|
||||
# WindowCount(
|
||||
# format = ' {num} ',
|
||||
# background = onedark_darker["color9"],
|
||||
# foreground = onedark_darker["color4"],
|
||||
# show_zero = True,
|
||||
# ),
|
||||
# right_arrow(onedark_darker["color9"], onedark_darker["color1"]),
|
||||
# WindowName(
|
||||
# foreground = onedark_darker["color5"],
|
||||
# background = onedark_darker["color1"],
|
||||
# padding = 5,
|
||||
# format = '[ {name} ]',
|
||||
# empty_group_string = '[ ]',
|
||||
# parse_text = parse_func,
|
||||
# ),
|
||||
# #widget.Spacer(),
|
||||
# Sep(
|
||||
# linewidth = 0,
|
||||
# padding = 6,
|
||||
# foreground = onedark_darker["color1"],
|
||||
# background = onedark_darker["color1"],
|
||||
# ),
|
||||
# left_arrow(onedark_darker["color2"], onedark_darker["color1"]),
|
||||
# TextBox(
|
||||
# text = '',
|
||||
# font = "Font Awesome 6 Free Solid",
|
||||
# fontsize = 15,
|
||||
# padding = 2,
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# background = onedark_darker["color2"],
|
||||
# ),
|
||||
# Net(
|
||||
# interface = "wlp44s0",
|
||||
# format = '{down} {up}',
|
||||
# prefix = 'M',
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# background = onedark_darker["color2"],
|
||||
# padding = 5,
|
||||
# ),
|
||||
# left_arrow(onedark_darker["color3"], onedark_darker["color2"]),
|
||||
# TextBox(
|
||||
# text = '',
|
||||
# font = "Font Awesome 6 Free Solid",
|
||||
# fontsize = 15,
|
||||
# padding = 2,
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# background = onedark_darker["color3"]
|
||||
# ),
|
||||
# CPU(
|
||||
# background = onedark_darker["color3"],
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# fmt = 'Cpu: {}',
|
||||
# #format = '{freq_current}GHz {load_percent}%',
|
||||
# format = '[ {load_percent} ]%',
|
||||
# padding = 5,
|
||||
# ),
|
||||
# left_arrow(onedark_darker["color4"], onedark_darker["color3"]),
|
||||
# TextBox(
|
||||
# text = '',
|
||||
# font = "Font Awesome 6 Free Solid",
|
||||
# fontsize = 15,
|
||||
# padding = 2,
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# background = onedark_darker["color4"]
|
||||
# ),
|
||||
# ThermalSensor(
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# background = onedark_darker["color4"],
|
||||
# threshold = 90,
|
||||
# fmt = 'Temp: {}',
|
||||
# format='[ {temp:.0f}{unit} ]',
|
||||
# padding = 5,
|
||||
# ),
|
||||
# left_arrow(onedark_darker["color5"], onedark_darker["color4"]),
|
||||
# TextBox(
|
||||
# text = '',
|
||||
# font = "Font Awesome 6 Free Solid",
|
||||
# fontsize = 15,
|
||||
# padding = 2,
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# background = onedark_darker["color5"]
|
||||
# ),
|
||||
# Memory(
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# background = onedark_darker["color5"],
|
||||
# #mouse_callbacks = {'Button1': lambda: qtile.cmd_spawn(myTerm + ' -e htop')},
|
||||
# fmt = 'Mem: {}',
|
||||
# #format = '{MemUsed: .0f}{mm}/{MemTotal: .0f}{mm}',
|
||||
# format = '[ {MemUsed:.0f} ]{mm}',
|
||||
# padding = 5,
|
||||
# ),
|
||||
# left_arrow(onedark_darker["color6"], onedark_darker["color5"]),
|
||||
# TextBox(
|
||||
# text = '',
|
||||
# font = "Font Awesome 6 Free Solid",
|
||||
# fontsize = 15,
|
||||
# padding = 2,
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# background = onedark_darker["color6"]
|
||||
# ),
|
||||
# Battery(
|
||||
# padding = 5,
|
||||
# background = onedark_darker["color6"],
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# charge_char = 'AC',
|
||||
# discharge_char = '',
|
||||
# empty_char = 'ﮣ',
|
||||
# full_char = 'ﭹ',
|
||||
# fmt = 'Bat: {}',
|
||||
# format = '{char}[ {percent:2.0%} ]', #{hour:d}:{min:02d} {watt:.2f} W'
|
||||
# #low_background = none,
|
||||
# low_forground = '#ff0000',
|
||||
# update_interval = 60,
|
||||
# ),
|
||||
# #battery,
|
||||
|
||||
# left_arrow(onedark_darker["color7"], onedark_darker["color6"]),
|
||||
# TextBox(
|
||||
# text = '',
|
||||
# font = "Font Awesome 6 Free Solid",
|
||||
# fontsize = 15,
|
||||
# padding = 2,
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# background = onedark_darker["color7"]
|
||||
# ),
|
||||
# PulseVolume(
|
||||
# background = onedark_darker["color7"],
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# fmt = 'Vol: [ {} ]',
|
||||
# device = 'default',
|
||||
# channel = 'Master',
|
||||
# limit_max_volume = True,
|
||||
# padding = 5,
|
||||
# update_interval = 0.1,
|
||||
# mute_command = 'pactl set-sink-mute @DEFAULT_SINK@ toggle',
|
||||
# volume_up_command = 'pactl set-sink-volume @DEFAULT_SINK@ +5%',
|
||||
# volume_down_command = 'pactl set-sink-volume @DEFAULT_SINK@ -5%',
|
||||
# ),
|
||||
# #volume,
|
||||
# #widget.Volume(
|
||||
# # foreground = onedark_darker[8],
|
||||
# # background = onedark_darker[0],
|
||||
# # fmt = 'Vol: {}',
|
||||
# # padding = 5,
|
||||
# # mouse_callbacks = {'Button1': lambda: qtile.cmd_spawn(myTerm + ' -e alsamixer')}
|
||||
# #),
|
||||
# left_arrow(onedark_darker["color10"], onedark_darker["color7"]),
|
||||
# TextBox(
|
||||
# text = '',
|
||||
# font = "Font Awesome 6 Free Solid",
|
||||
# fontsize = 15,
|
||||
# padding = 2,
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# background = onedark_darker["color10"]
|
||||
# ),
|
||||
# Clock(
|
||||
# foreground = onedark_darker["colorback"],
|
||||
# background = onedark_darker["color10"],
|
||||
# format = "%a %d, %b [ %I:%M ]%P",
|
||||
# padding = 5,
|
||||
# ),
|
||||
# left_arrow(onedark_darker["colorback"], onedark_darker["color10"]),
|
||||
# Systray(
|
||||
# background = onedark_darker["colorback"],
|
||||
# padding = 2
|
||||
# ),
|
||||
|
||||
# #widget.TextBox(
|
||||
# # text = '',
|
||||
# # font = "Mononoki Regular Bold",
|
||||
# # fontsize = 18,
|
||||
# # padding = 0,
|
||||
# # background = onedark_darker[0],
|
||||
# # foreground = onedark_darker[9],
|
||||
# #),
|
||||
# ], size=25)
|
||||
31
modules/wm/qtile/default.nix
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit (lib) mkEnableOption mkIf mkOption types;
|
||||
cfg = config.horseman.wm.qtile;
|
||||
in {
|
||||
options = {
|
||||
horseman.desktop.qtile = {
|
||||
enable = mkEnableOption "Qtile";
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
services.xserver = {
|
||||
enable = true;
|
||||
windowManager.qtile.enable = true;
|
||||
};
|
||||
|
||||
system.activationScripts.script.text = ''
|
||||
cd /home/horseman && \
|
||||
rm -r .config/qtile && \
|
||||
cp -r nix-config/modules/wm/qtile/config \
|
||||
.config/qtile
|
||||
'';
|
||||
};
|
||||
}
|
||||