{"id":18974494,"url":"https://github.com/m7a/lp-conf-gui","last_synced_at":"2025-10-09T07:34:45.820Z","repository":{"id":164554616,"uuid":"335435487","full_name":"m7a/lp-conf-gui","owner":"m7a","description":"MDVL GUI Configuration Package","archived":false,"fork":false,"pushed_at":"2024-05-01T10:59:56.000Z","size":27,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-01T09:07:58.851Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/m7a.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-02-02T22:04:03.000Z","updated_at":"2024-05-01T10:59:59.000Z","dependencies_parsed_at":"2024-04-28T20:49:52.451Z","dependency_job_id":null,"html_url":"https://github.com/m7a/lp-conf-gui","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m7a%2Flp-conf-gui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m7a%2Flp-conf-gui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m7a%2Flp-conf-gui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m7a%2Flp-conf-gui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/m7a","download_url":"https://codeload.github.com/m7a/lp-conf-gui/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239972037,"owners_count":19727290,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T15:15:14.043Z","updated_at":"2025-10-09T07:34:40.785Z","avatar_url":"https://github.com/m7a.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"---\nsection: 32\nx-masysma-name: conf-gui\ntitle: MDVL GUI Configuration Package\ndate: 2021/02/02 20:45:11\nlang: en-US\nauthor: [\"Linux-Fan, Ma_Sys.ma (Ma_Sys.ma@web.de)\"]\nkeywords: [\"mdvl\", \"conf\", \"dotfiles\", \"gui\", \"mdvl-conf-gui\", \"x11\", \"linux\"]\nx-masysma-version: 1.0.0\nx-masysma-website: https://masysma.net/32/conf-gui.xhtml\nx-masysma-repository: https://www.github.com/m7a/lp-conf-gui\nx-masysma-owned: 1\nx-masysma-copyright: |\n  Copyright (c) 2021 Ma_Sys.ma.\n  For further info send an e-mail to Ma_Sys.ma@web.de.\n---\nDescription\n===========\n\nThis package contains dotfile-like configuration settings for Linux GUI\nprograms. It is intended to be installed on MDVL systems but may not be suitable\nfor general-purpose Debian installations given that some changes deviate far\nfrom the defaults and do not integrate well unless many other MDVL packages\nare also installed.\n\nConfigured Programs\n===================\n\nHere is an overview on the files provided and the programs configured.\n\n## GTK-Configuration\n\nThe following files configure GTK (2.0 and 3.0) to use a dark theme and set\nGUI fonts to Terminus:\n\n * `/etc/gtk-2.0/gtkrc`\n * `/etc/gtk-3.0/settings.ini`\n * `/usr/share/themes/masysma/gtk-2.0/gtkrc`\n\n## Feh Keybindings\n\nFile `/etc/feh/keys` reconfigures the keybindings of the `feh` image viewer to\nbe similar to `plan_view.py`. See also: [image_viewer(32)](image_viewer.xhtml).\n\n## i3-Configuration\n\nFile `/etc/i3/config` configures the i3 window manager to use the [WINDOWS]\n(aka. [SUPER]) together with certain keys to manage windows. It is mostly based\non an old i3 version's defaults with notable changes being described in the\nfollowing:\n\n\tbindsym $m+Shift+h        move left\n\tbindsym $m+Shift+j        move down\n\tbindsym $m+Shift+k        move up\n\tbindsym $m+Shift+l        move right\n\nAll movement commands are configured to use VIM-style [H]/[J]/[K]/[L] keys:\n\n\tbindsym $m+Escape         mode \"passthrough\"\n\tmode \"passthrough\" {\n\t\tbindsym $m+Escape mode \"default\"\n\t}\n\nA _passthrough_ mode is provided to be invoked by [WINDOWS]-[ESC] which disables\nall keybindings. This may be useful when interacting with Windows VMs and such.\n\n\tbindsym Mod1+F1           exec /usr/bin/materm\n\tbindsym Mod1+F2           exec /usr/bin/dmenu_run\n\tbindsym Mod1+F3           exec /usr/bin/materm -e vifm /data/main\n\tbindsym Mod1+F5           exec /usr/bin/materm -e d5mantui\n\tbindsym Mod1+F7           exec GTK_THEME=Adwaita:dark /usr/bin/firefox\n\tbindsym Mod1+F9           exec /usr/bin/materm -e htop\n\tbindsym Mod1+F10          exec /usr/bin/virt-manager\n\tbindsym $m+Shift+Delete   exec /usr/bin/q\n\nVarious programs are configured to be assigned to [ALT]-[FX] combinations where\nX is one of the F-keys' numbers like X=1 for [ALT]-[F1] to invoke a `materm`.\nThe settings used here are expected to be changed by users to their respectively\nused applications. The defaults provided here are used as a reference across\nmultiple Ma_Sys.ma systems. E. g. Ma_Zentral DVDs assign F1, F2, F7, F9 to\nWindows programs that perform similar tasks to their Linux counterparts\nconfigured here.\n\n\t# requires xdotool, .mdvl/scrroot.txt, maim\n\tbindsym --release Print   exec \"/bin/sh -ec 'dnam=\\\\\"$(cat \\\\\"$HOME/.mdvl/scrroot.txt\\\\\")/$(date +%Y%m%d)\\\\\"; [ -d \\\\\"$dnam\\\\\" ] || mkdir \\\\\"$dnam\\\\\"; fnam=\\\\\"$(date +%Y%m%d%H%M%S).png\\\\\"; maim -i $(xdotool getactivewindow) \u003e \\\\\"$dnam/$fnam\\\\\"'\"\n\nAn elaborated screenshot function is assigned to the [PRINTSCREEN] key.\nThis setting invokes the `maim` tool to take a screenshot of the currently\nactive window and saves it into the directory path specified in\n`$HOME/.mdvl/scrroot.txt`. It automatically ensures that screenshots are stored\ninto different subdirectories depending on the current day.\n\n\texec /bin/run-parts --exit-on-error --regex=\".*\" --verbose /usr/lib/mdvl-gui.d\n\nThis line enables the scripts from below `/usr/lib/mdvl-gui.d` to be\nautomatically invoked upon GUI startup.\n\n\tfont -*-terminus-medium-*-normal-*-16-*-*-*-*-*-iso10646-1\n\n\t# class                  border   bg       fg       split\n\tclient.focused           #cc4040  #cc4040  #ffffff  #ff0000\n\tclient.focused_inactive  #806060  #806060  #aaaaaa  #bb0000\n\tclient.unfocused         #201818  #201818  #505050  #400000\n\tclient.urgent            #ffaa00  #ffaa00  #ffffff  #ffaa00\n\n\tbar {\n\t\tfont -*-terminus-medium-*-normal-*-12-*-*-*-*-*-iso10646-1\n\t\tstatus_command /usr/bin/mai3bar --json\n\t\tposition top\n\t\ttray_output primary\n\t\tcolors {\n\t\t\t#                   border  bg      fg\n\t\t\tfocused_workspace   #cc4040 #cc4040 #ffffff\n\t\t\tactive_workspace    #806060 #806060 #aaaaaa\n\t\t\tinactive_workspace  #201818 #201818 #505050\n\t\t\turgent_workspace    #ffaa00 #ffaa00 #ffffff\n\t\t\tbackground                  #000000\n\t\t\tstatusline                          #ffffff\n\t\t\tseparator                           #333333\n\t\t}\n\t}\n\nThis block configures a Ma_Sys.ma-specific color scheme that is based on red\ncolors. Additionally, the `i3bar` is populated by `mai3bar` --\nsee [i3bar(32)](i3bar.xhtml). Additionally, the GUI is configured to use\nTerminus for all window manager parts.\n\nGUI Autorun Scripts\n===================\n\nDirectory `/usr/lib/mdvl-gui.d` is checked for scripts to automatically invoke\nupon starting i3 with the configuration described above. Relevant default\nconfiguration is found in file `00-initial.sh`:\n\n~~~{.bash}\n# -- Keyboard --\n/usr/bin/xmodmap\nsetxkbmap -layout de -variant deadgraveacute\n# Speed up key repeat\nxset r rate 270 30\n# disable bell\nxset b 0\n\n# -- Theme for password-gorilla --\nif [ -d /usr/share/tcltk/awthemes ]; then\n\techo \"*TkTheme: awdark\" | xrdb -merge\nfi\n\n# -- Background Processes --\n/usr/bin/screenindex -l -g \u0026\n\nif [ \"$(head -c 3 /etc/hostname)\" = \"vm-\" ]; then\n\t/usr/bin/spice-vdagent \u0026\n\txrandr --dpi 109\nelse\n\t/usr/bin/xscreensaver -no-splash \u0026\nfi\n~~~\n\nThe keyboard configuration is set to German keyboard layout, faster repeat\nrate and all bell sounds are disabled. For details on the effects of the\nkeyboard configuration, see also: [linux_x11_keyboard_configuration(37)](../37/linux_x11_keyboard_configuration.xhtml).\n\nAfterwards, some optional components are invoked depending on whether they are\npresent:\n\n * If installed, theme `awdark` is set for use with Tk GUIs like\n   `password-gorilla`. This theme is available from Debian 11 onwards.\n * If installed, `screenindex` logging is started in background.\n   See [screenindex(32)](screenindex.xhtml) for details.\n * Finally, depending on whether the current system is a virtual machine\n   (decided by the name for the lack of a better criterion), different processes\n   are started: Physical systems run `xscreensaver` whereas virtual machines\n   start `spice-vdagent` if installed and fix the DPI setting that is sometimes\n   incorrect in VMs.\n\nThe advantage of the `run-parts`-based approach here is that system-specific\nadditional GUI startup scripts (like e.g. `nm-applet` for laptops) can be\nprovided by separate packages.\n\nChanges to `/etc/skel`\n======================\n\nIn the past, most Ma_Sys.ma dotfiles were configured in `/etc/skel` -- a\ndirectory that is taken as a base for creating new users. Given that this makes\nupdates slow (new settings are only applied upon re-creating the user!), this\napproach is newly avoided whenever possible.\n\nCurrently, the following files are provided for `/etc/skel`:\n\n`.xscreensaver`\n:   Default configuration for `xscreensaver`\n`.xsession`\n:   Default X11 session set to `i3`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fm7a%2Flp-conf-gui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fm7a%2Flp-conf-gui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fm7a%2Flp-conf-gui/lists"}