# IMMutable DEbian with Xfce
-Immudex to wersja debian zawierająca niezmienne środowisko pracy. Wykorzystuje
-ona bowiem archiwum .squashfs znane z LiveCD. Przyczym pozwala ona na pełen
-dostęp do partycji zawierające archiwum, w razie aktualizacji. Tak przygotowana
-wersja popularnego systemu operacyjnego pozwoli bezpieczniejsze korzystanie
-z komputera oraz zasobów internetu. Jeśli coś się stanie, wystarczy uruchomić
-komputer ponownie.
+## GNU/LINUX Debian stable (bookworm)
-Immudex nastawiowny jest na wykorzystanie do przechowywania danych szyfrowanych
-partycji za pomocą mechanizmu LUKS. Dodatkowy mechanizm pozwala na
-zabezpieczenie danych składowanych na tego typu partycjach, na przykład jeśli
-mamy otwarte jakieś pliki na zaszyfrowanej partycji przeglądarka się nie
-uruchomi. Musimy wówczas zamknąć wszystkie pliki oraz opuścić punkt montowania
-szyfrowanej partycji, wtenczas zostanie ona odmontowana szyfrowany wolumin
-zostanie zamknięty. Po tych czynnościach przeglądarką uruchomi się
-samodzielnie. W ramach bezpieczeństwa dostępny jest również sandboxer FireJail,
-zablokowano również wszelkie sieciowe połączenia przychodzące.
+To repozytorium zawiera pliki służące do tworzenia dystrybucji immudex.
+Zawiera ono wiele ciekawych informacji, jednak podstawowe infomacje na temat
+tej dystrybucji (wraz z adresami do serwerów lustrzanych z obrazmi płyt)
+znajdują się pod adresem:
-Immudex domyślnie korzysta z wolnego oprogramowania, nie zainstalowano na nim
-niewolnych pakietów, w konfiguracji nie ma również niewolnych repozytoriów.
-Do dyspozycji mamy:
- * Standardowe środowisko XFCE dostępne na Debian Stable
- * Odtwarzacz muzyki QMMP
- * Odtwarzacz multimedialny VLC
- * virt-manager (KVM)
-
-Obraz płyty znajduje się na serwisie sourceforge.net. Poniżej znajduje się
-odnośniki.
-
- * 64-bit: [https://ftp.morketsmerke.org/immudex/stable/iso/0.1.3/immudex64.iso](https://ftp.morketsmerke.org/immudex/stable/iso/0.1.3/immudex64.iso)
-
- CRC: 3635402843 SHA1: 8df09c433c1e089cf84e1bc9d42a1bc194242729
- * 32-bit: [https://ftp.morketsmerke.org/immudex/stable/iso/0.1.3/immudex32.iso](https://ftp.morketsmerke.org/immudex/stable/iso/0.1.3/immudex32.iso)
-
- CRC: 4060229527 SHA1: 3e89a8e70ac21e8cd31632fbcfd30b37d9d76c07
-
-Domyślnym użytkownikiem jest user, dostęp to niego uzyskujemy za pomocą hasła
-user1. Możemy również skorzystać z konta superużytkownika root z hasłem toor.
-
-Dokumentacja systemu znajduje się pod [tym](https://morketsmerke.github.io/articles/immudex/index.html) adresem.
+[https://morketsmerke.github.io/articles/immudex/immudex.html](https://morketsmerke.github.io/articles/immudex/immudex.html)
immudex is not affiliated with Debian. Debian is a registered trademark owned
by Software in the Public Interest, Inc.
-[Lock icons created by Freepik - Flaticon](https://www.flaticon.com/free-icons/lock)
-
[Rss icons created by Freepik - Flaticon](https://www.flaticon.com/free-icons/rss)
--- /dev/null
+immudex 1.0.0 - wydanie nowej wersji stablinej Debian
+
+ 1. Zmiana wersji stabilnej Debian z Bullseye na Bookworm.
+
+ 2. Zmiana domyślnego wyglądu pulpitu dla użytkowników. Wykorzystano do tego
+ project xfcedebian dla gałęzi testing (obecnie main). Zmieniona została
+ tapeta. Jest jeden pasek na dole, przypominający pasek z systemów MS
+ Windows. Aktywatory obecnie znajdują się na pulpicie. Użyto także
+ bardzie rozbudowanej wersji menu, znajdującego się pod przyciskiem start.
+
+ 3. Zmiana tła ekranu logowania oraz zmiana domyślnego obrazu użytkownika na
+ ekranie logowania
+
+ 4. Rozszerzenie miejsca wymagana do instalacji 'immudex' z 4 do 6GB. Jest to
+ wymagana aby przeprowadzać aktualizacje systemu w czasie jego działania.
+
+ 5. Dodanie narzędzia 'immudex_branch' pozwalającego na określenie gałęzi
+ 'immudex'. Jest ono głównie wykorzystywane przez widget 'Conky', przez
+ to narzędzie ma dość specyficzne działanie.
+
+ 6. Instalacja oraz konfiguracja widgetu 'Conky'. Wiget startuje automatycznie
+ po zalogowaniu użytkownika.
+
+ 7. Usunięcie zbędnych plików APT (odzyskanie kilkudziesięciu megabajtów z
+ rozmiaru obrazu).
+
+ 8. Wdrożenie do 'immudex_install' nowej minimalnej wielkości partycji
+ systemowej 'immudex'.
+
+ 9. Instalacja pakietu gvfs-backends. Pakiet pozwala na skorzystanie z różnych
+ protokołów dostępu do plików takich jak 'smb://' czy 'mtp://' za pomocą
+ okienkowego menedżera plików ('Thunar").
+
+ 10. Instalacja z gałezi 'experimental' elementu projektu XFCE:
+ 'xfce4-notes-plugin' - mały program pozwalający na tworzenie szybkich
+ notatek na pulpicie. Dostosowanie jego wyglądu do obecnego wyglądu
+ pulpitu 'immudex' (ustawienie ciemnego motywu oraz obrazu tła podobnego
+ do terminala), utworzenie skryptu uruchamiającego
+ 'xfce4-notes-plugin' w pierwszym otwartym 'cryptfs'. Dodanie pliku
+ autostartu dla tego skryptu. Dodanie funkcji uruchamiającej autostart
+ skryptu (funkcja stosowana jest tylko dla użytkownika 'xf0r3m') do
+ pliku szablonu (pliku z funkcjami dla plików wersji).
+
+ 11. Dodanie do opcji 'create' narzędzia 'immudex_crypt' funkcji, która
+ ustawia prawa własności dla użytkownika, który właśnie tworzy 'cryptfs'.
+
+ 12. Zmiana źródła oraz sposóbu wyświetlania pogody przez narzędzie 'meteo'.
+ Obecnie korzysta ono z serwisu wttr.in i wyświetla informacje w
+ terminalu.
+
+ 13. Utworzono usługę dynamicznej nazwy hosta. Usługa bazuje na informacjach
+ wyświetlanych w polach 'Hardware vendor' oraz 'Hardware model' wyjścia
+ polecenia 'hostnamectl'. Wymaga recznej aktualizacji i dodanie
+ informacji o uruchomionym sprzęcie do skryptu, dlatego. Póki co będzie
+ ona poprawnie ustawiać nazwę hosta dla Komputerów marki Dell z serii
+ Latitude oraz komputerów marki Lenovo z serii ThinkPad. Usługa jest
+ plikiem jednoski 'systemd' i jest uruchamiana przed uruchomienie
+ mendżera wyświetlania 'LightDM'.
+
+ 14. Zmieniono domyślny format opcji '-a' ("audio-only") narzędzia 'ytplay'.
+ Z '--bestaudio' (co nie pozwalało na uruchomienie wyłącznie strumienia
+ dźwieku z transmisji na żywo) na '--novideo --best[height=360]'. Co
+ wpłynęło na wyżej wymieniony problem.
+
+ 15. Dodanie nowego narzędzia 'pl'. Pozwalającego na wybór i odtworzenie
+ wybranego linku z pliku tekstowego. Poza odnośnikami z YT jest możliwe
+ odtwarzenie również radia internetowego.
--- /dev/null
+immudex 1.0.1 - aktualizacja jądra
+
+ 1. Aktualizacja pakietów wraz z jądrem Linux.
+
+ 2. Zmiana programu pocztowego dostarczanego wraz z dystrybucją.
+ 'Thunderbirda' zastąpił 'mutt'.
+
+ 3. Aktualizacja narzędzia 'pl'. Umożliwienie odtwarzania filmów oraz
+ możliwość zmiany linku podczas odtwarzania innego.
+
+ 4. Aktualizacja narzędzia 'import_gpgkeys'. Obecnie wymagane jest również
+ eksport bazy zaufania kluczy 'trustdb' w pliku 'otrust.txt'. Przez co
+ niema już potrzeby ustawiania poziomu zaufania dla kluczy.
+
+ 5. Zmiana nazwy kodowej wersji testowej w narzędziu 'immudex_branch' oraz
+ w funkcji 'get_debian_branch' w pliku 'library.sh' wykorzystywanym przez
+ kilka innych narzędzi.
+
+ 6. Uzupełnienie 'immudex_hostname' o zgłoszone hostname-y. Dodano również
+ generowanie hostname-u dla maszyn wirtualnych KVM. Hostname generowany jest
+ na podstawie Machine ID.
+
+ 7. Zmiana domyślnych programów dla znanych plików.
+
+ 8. Aktualizacja narzędzia 'newsfeed'. Teraz pod tytułami wyświetlone zostanie
+ zawartość pola "<description>" z pliku RSS.
--- /dev/null
+immudex 1.0.2 - aktualizacja jądra
+(immudex 1.0.2 = immudex-testing 1.0.6)
+
+ 1. Aktualizacja pakietów wraz z jądrem Linux.
+
+ 2. Dodanie zaginione aktualizacji narzędzia 'create_media'. Dodanie opcji
+ '--nuke', pozwalające wyzerować pierwszy megabajt dysku - BT #83
+
+ 3. Aktualizacja narzędzia 'pl'. Oczyszczenie odnośnika do yt z początkowej
+ spacji, mogło to powodować zablokowania odtwarzania filmów, w niektórych
+ wersjach 'mpv' - BT#85
+
+ 4. Wdrożenie zunifikowanego narzędzia 'immudex_hostname' - BT #92
+
+ 5. Definicja skrótów klawiszowych:
+ - Ctrl+Alt+T - uruchmia xfce4-terminal.
+ - Win - wyświetla/chowa menu "Start" (identycznie jak systemach MS Windows)
--- /dev/null
+immudex 1.0.3 - aktualizacja jądra
+(immudex 1.0.3 = immudex-testing 1.0.8)
+
+ 1. Aktualizacja pakietów wraz z jądrem Linux.
+
+ 2. Usunięcie pakietu 'xpra'.
+
+ 3. Aktualizcja skryptu yt-dlp.
+
+ 4. Dodanie skrótów klawiszowych pozwalających wyrównać okno do wybranej
+ krawędzi ekranu (zgodnie z klawiszami kierunkowymi w 'Vim') oraz
+ przenieść okno na wybrany monitor
+ (Ctrl+Shift+! - lewy, Ctrl+Shift+@ - prawy)
+
+ 5. Dodanie klienta projektu IDLE.
+
+ 6. Aktualizacja narzędzia 'pl'. Dodanie możliwości podania odnośnika URL
+ (HTTP/HTTPS) do listy z linkami.
+
+ 7. Wyłącznie przesuwania okna poprzez kliknięcie na nie z przytrzymanym
+ lewym klawiszem 'Alt'.
+
+
+
--- /dev/null
+@define-color notes_bg_color #343434;
+@define-color theme_base_color #343434;
+@define-color theme_text_color #eeeeec;
+@define-color theme_bg_color @theme_base_color;
+@define-color theme_fg_color shade (@theme_base_color, 0.3);
+@define-color theme_selected_bg_color shade (@theme_base_color, 0.8);
+@define-color theme_selected_fg_color shade (@theme_base_color, 1.4);
+@define-color insensitive_bg_color shade (@theme_bg_color, 1.1);
+@define-color insensitive_fg_color shade (@theme_fg_color, 1.8);
+
+@define-color borders shade (@theme_base_color, 0.8);
+@define-color frame_color shade (@theme_base_color, 0.7);
+@define-color notebook_active_tab_border shade (@theme_base_color, 1.1);
+@define-color notebook_selected_tab_color shade (@theme_base_color, 0.9);
+
+* {
+ border-width: 0px;
+}
+
+/* window and frame */
+window {
+ /*
+ background-image: linear-gradient(to bottom,
+ shade (@theme_base_color, 0.8),
+ shade (@theme_base_color, 0.95) 87px);
+ */
+}
+
+window frame {
+ padding: 1px 2px 4px 2px;
+ border: 1px solid shade (@theme_base_color, 0.7);
+}
+
+/* icon buttons in window title bar */
+window widget#notes-icon-button {
+ color: #eeeeec;
+ background-color: transparent;
+}
+/*
+window widget#notes-icon-button:active {
+ color: lighter (@theme_fg_color);
+ text-shadow: 1px 1px darker (@theme_bg_color);
+}
+*/
+window widget#notes-icon-button:disabled {
+ color: shade (#343434, 1.2);
+}
+window widget#notes-icon-button:hover {
+ color: shade (#eeeeec, 1.4);
+}
+
+/* notebook */
+notebook > header {
+ background: transparent;
+}
+notebook > header.top {
+ border-bottom: 2px solid @theme_selected_bg_color;
+}
+notebook > header.bottom {
+ border-top: 2px solid @theme_selected_bg_color;
+}
+notebook > header.left {
+ border-right: 2px solid @theme_selected_bg_color;
+}
+notebook > header.right {
+ border-left: 2px solid @theme_selected_bg_color;
+}
+
+/* notebook tab style */
+notebook > header.top tab, notebook > header.bottom tab {
+ padding: 0px 4px;
+}
+notebook > header.right tab, notebook > header.left tab {
+ padding: 4px 0px;
+}
+
+notebook > header tab {
+ box-shadow: none;
+ color: @insensitive_fg_color;
+ background: transparent;
+}
+notebook > header tab:checked {
+ color: shade (@theme_text_color, 0.8);
+}
+notebook > header tab.dnd {
+ background: @theme_selected_bg_color;
+}
+
+notebook > header.top > tabs > tab:checked {
+ box-shadow: inset 0px -3px shade (@theme_selected_bg_color, 1.3), 0px 2px 3px @theme_selected_bg_color;
+}
+notebook > header.top > tabs > tab:checked:hover {
+ box-shadow: inset 0px -2px shade (@theme_selected_bg_color, 1.3), 0px 2px 3px @theme_selected_bg_color;
+ background: @theme_selected_bg_color; /* NOTE: must be set before .dnd */
+}
+notebook > header.top > tabs > tab:hover {
+ box-shadow: inset 0px -2px shade (@theme_selected_bg_color, 1.3);
+}
+
+notebook > header.bottom > tabs > tab:checked {
+ box-shadow: inset 0px 3px shade (@theme_selected_bg_color, 1.3), 0px -2px 3px @theme_selected_bg_color;
+}
+notebook > header.bottom > tabs > tab:checked:hover {
+ box-shadow: inset 0px 2px shade (@theme_selected_bg_color, 1.3), 0px -2px 3px @theme_selected_bg_color;
+ background: @theme_selected_bg_color;
+}
+notebook > header.bottom > tabs > tab:hover {
+ box-shadow: inset 0px 2px shade (@theme_selected_bg_color, 1.3);
+}
+
+notebook > header.left > tabs > tab:checked {
+ box-shadow: inset -3px 0px shade (@theme_selected_bg_color, 1.3), 0px 0px 3px @theme_selected_bg_color;
+}
+notebook > header.left > tabs > tab:checked:hover {
+ box-shadow: inset -2px 0px shade (@theme_selected_bg_color, 1.3), 0px 0px 3px @theme_selected_bg_color;
+ background: @theme_selected_bg_color;
+}
+notebook > header.left > tabs > tab:hover {
+ box-shadow: inset -2px 0px shade (@theme_selected_bg_color, 1.3);
+}
+
+notebook > header.right > tabs > tab:checked {
+ box-shadow: inset 3px 0px shade (@theme_selected_bg_color, 1.3), 0px 0px 3px @theme_selected_bg_color;
+}
+notebook > header.right > tabs > tab:checked:hover {
+ box-shadow: inset 2px 0px shade (@theme_selected_bg_color, 1.3), 0px 0px 3px @theme_selected_bg_color;
+ background: @theme_selected_bg_color;
+}
+notebook > header.right > tabs > tab:hover {
+ box-shadow: inset 2px 0px shade (@theme_selected_bg_color, 1.3);
+}
+
+textview > text {
+ color: @theme_text_color;
+ /*
+ background-image: linear-gradient(to bottom,
+ shade (@theme_bg_color, 1.2),
+ shade (@theme_bg_color, 1.3) 20em);
+ */
+ background-image: url("/usr/share/images/desktop-base/notes-background.jpg");
+ background-position: center;
+ background-repeat: no-repeat;
+ background-size: cover;
+ font-weight: bold;
+}
+
+textview > text > selection {
+ color: #343434;
+ background-color: #eeeeec;
+}
+
+scrollbar {
+ background-color: transparent;
+}
+scrollbar slider {
+ background-color: shade (@theme_bg_color, 0.55);
+ min-width: 8px;
+}
+scrollbar slider:hover {
+ background-color: shade (@theme_bg_color, 0.7);
+ transition: 400ms;
+}
+scrollbar slider:hover:active {
+ background-color: shade (@theme_bg_color, 0.55);
+ transition: 200ms;
+}
+
+tooltip, tooltip * {
+ margin: 0px;
+ padding: 0px;
+}
+
--- /dev/null
+favorites=xfce4-web-browser.desktop,xfce4-file-manager.desktop
+recent=xfce4-terminal-emulator.desktop,xfce4-terminal.desktop
+button-title=Start
+button-icon=debian-logo
+button-single-row=false
+show-button-title=true
+show-button-icon=true
+launcher-show-name=true
+launcher-show-description=true
+launcher-show-tooltip=true
+launcher-icon-size=3
+hover-switch-category=false
+category-show-name=true
+category-icon-size=1
+sort-categories=true
+view-mode=0
+default-category=0
+recent-items-max=10
+favorites-in-recent=true
+position-search-alternate=true
+position-commands-alternate=false
+position-categories-alternate=true
+position-categories-horizontal=false
+stay-on-focus-out=false
+profile-shape=0
+confirm-session-command=true
+menu-width=450
+menu-height=500
+menu-opacity=100
+command-settings=xfce4-settings-manager
+show-command-settings=true
+command-lockscreen=xflock4
+show-command-lockscreen=true
+command-switchuser=dm-tool switch-to-greeter
+show-command-switchuser=false
+command-logoutuser=xfce4-session-logout --logout --fast
+show-command-logoutuser=true
+command-restart=xfce4-session-logout --reboot --fast
+show-command-restart=true
+command-shutdown=xfce4-session-logout --halt --fast
+show-command-shutdown=true
+command-suspend=xfce4-session-logout --suspend
+show-command-suspend=true
+command-hibernate=xfce4-session-logout --hibernate
+show-command-hibernate=false
+command-logout=xfce4-session-logout
+show-command-logout=false
+command-menueditor=menulibre
+show-command-menueditor=true
+command-profile=mugshot
+show-command-profile=true
+search-actions=5
+
+[action0]
+name=Strony podręcznika
+pattern=#
+command=exo-open --launch TerminalEmulator man %s
+regex=false
+
+[action1]
+name=Wyszukiwarka internetowa
+pattern=?
+command=exo-open --launch WebBrowser https://duckduckgo.com/?q=%u
+regex=false
+
+[action2]
+name=Wikipedia
+pattern=!w
+command=exo-open --launch WebBrowser https://en.wikipedia.org/wiki/%u
+regex=false
+
+[action3]
+name=Uruchom w terminalu
+pattern=!
+command=exo-open --launch TerminalEmulator %s
+regex=false
+
+[action4]
+name=Otwórz adres URI
+pattern=^(file|http|https):\\/\\/(.*)$
+command=exo-open \\0
+regex=true
+
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+
+<channel name="xfce4-keyboard-shortcuts" version="1.0">
+ <property name="commands" type="empty">
+ <property name="default" type="empty">
+ <property name="<Alt>F1" type="empty"/>
+ <property name="<Alt>F2" type="empty">
+ <property name="startup-notify" type="empty"/>
+ </property>
+ <property name="<Alt>F3" type="empty">
+ <property name="startup-notify" type="empty"/>
+ </property>
+ <property name="<Primary><Alt>Delete" type="empty"/>
+ <property name="<Primary><Alt>l" type="empty"/>
+ <property name="<Primary><Alt>t" type="empty"/>
+ <property name="XF86Display" type="empty"/>
+ <property name="<Super>p" type="empty"/>
+ <property name="<Primary>Escape" type="empty"/>
+ <property name="XF86WWW" type="empty"/>
+ <property name="HomePage" type="empty"/>
+ <property name="XF86Mail" type="empty"/>
+ <property name="Print" type="empty"/>
+ <property name="<Alt>Print" type="empty"/>
+ <property name="<Shift>Print" type="empty"/>
+ <property name="<Super>e" type="empty"/>
+ <property name="<Primary><Alt>f" type="empty"/>
+ <property name="<Primary><Alt>Escape" type="empty"/>
+ <property name="<Primary><Shift>Escape" type="empty"/>
+ <property name="<Super>r" type="empty">
+ <property name="startup-notify" type="empty"/>
+ </property>
+ <property name="<Alt><Super>s" type="empty"/>
+ </property>
+ <property name="custom" type="empty">
+ <property name="<Alt>F2" type="string" value="xfce4-appfinder --collapsed">
+ <property name="startup-notify" type="bool" value="true"/>
+ </property>
+ <property name="<Alt>Print" type="string" value="xfce4-screenshooter -w"/>
+ <property name="<Super>r" type="string" value="xfce4-appfinder -c">
+ <property name="startup-notify" type="bool" value="true"/>
+ </property>
+ <property name="XF86WWW" type="string" value="exo-open --launch WebBrowser"/>
+ <property name="XF86Mail" type="string" value="exo-open --launch MailReader"/>
+ <property name="<Alt>F3" type="string" value="xfce4-appfinder">
+ <property name="startup-notify" type="bool" value="true"/>
+ </property>
+ <property name="Print" type="string" value="xfce4-screenshooter"/>
+ <property name="<Primary>Escape" type="string" value="xfdesktop --menu"/>
+ <property name="<Shift>Print" type="string" value="xfce4-screenshooter -r"/>
+ <property name="<Primary><Alt>Delete" type="string" value="xfce4-session-logout"/>
+ <property name="<Primary><Alt>t" type="string" value="exo-open --launch TerminalEmulator"/>
+ <property name="<Primary><Alt>f" type="string" value="thunar"/>
+ <property name="<Primary><Alt>l" type="string" value="xflock4"/>
+ <property name="<Alt>F1" type="string" value="xfce4-popup-applicationsmenu"/>
+ <property name="<Super>p" type="string" value="xfce4-display-settings --minimal"/>
+ <property name="<Primary><Shift>Escape" type="string" value="xfce4-taskmanager"/>
+ <property name="<Super>e" type="string" value="thunar"/>
+ <property name="<Primary><Alt>Escape" type="string" value="xkill"/>
+ <property name="HomePage" type="string" value="exo-open --launch WebBrowser"/>
+ <property name="XF86Display" type="string" value="xfce4-display-settings --minimal"/>
+ <property name="override" type="bool" value="true"/>
+ <property name="Super_L" type="string" value="/usr/bin/xfce4-popup-whiskermenu"/>
+ </property>
+ </property>
+ <property name="xfwm4" type="empty">
+ <property name="default" type="empty">
+ <property name="<Alt>Insert" type="empty"/>
+ <property name="Escape" type="empty"/>
+ <property name="Left" type="empty"/>
+ <property name="Right" type="empty"/>
+ <property name="Up" type="empty"/>
+ <property name="Down" type="empty"/>
+ <property name="<Alt>Tab" type="empty"/>
+ <property name="<Alt><Shift>Tab" type="empty"/>
+ <property name="<Alt>Delete" type="empty"/>
+ <property name="<Primary><Alt>Down" type="empty"/>
+ <property name="<Primary><Alt>Left" type="empty"/>
+ <property name="<Shift><Alt>Page_Down" type="empty"/>
+ <property name="<Alt>F4" type="empty"/>
+ <property name="<Alt>F6" type="empty"/>
+ <property name="<Alt>F7" type="empty"/>
+ <property name="<Alt>F8" type="empty"/>
+ <property name="<Alt>F9" type="empty"/>
+ <property name="<Alt>F10" type="empty"/>
+ <property name="<Alt>F11" type="empty"/>
+ <property name="<Alt>F12" type="empty"/>
+ <property name="<Primary><Shift><Alt>Left" type="empty"/>
+ <property name="<Primary><Alt>End" type="empty"/>
+ <property name="<Primary><Alt>Home" type="empty"/>
+ <property name="<Primary><Shift><Alt>Right" type="empty"/>
+ <property name="<Primary><Shift><Alt>Up" type="empty"/>
+ <property name="<Primary><Alt>KP_1" type="empty"/>
+ <property name="<Primary><Alt>KP_2" type="empty"/>
+ <property name="<Primary><Alt>KP_3" type="empty"/>
+ <property name="<Primary><Alt>KP_4" type="empty"/>
+ <property name="<Primary><Alt>KP_5" type="empty"/>
+ <property name="<Primary><Alt>KP_6" type="empty"/>
+ <property name="<Primary><Alt>KP_7" type="empty"/>
+ <property name="<Primary><Alt>KP_8" type="empty"/>
+ <property name="<Primary><Alt>KP_9" type="empty"/>
+ <property name="<Alt>space" type="empty"/>
+ <property name="<Shift><Alt>Page_Up" type="empty"/>
+ <property name="<Primary><Alt>Right" type="empty"/>
+ <property name="<Primary><Alt>d" type="empty"/>
+ <property name="<Primary><Alt>Up" type="empty"/>
+ <property name="<Super>Tab" type="empty"/>
+ <property name="<Primary>F1" type="empty"/>
+ <property name="<Primary>F2" type="empty"/>
+ <property name="<Primary>F3" type="empty"/>
+ <property name="<Primary>F4" type="empty"/>
+ <property name="<Primary>F5" type="empty"/>
+ <property name="<Primary>F6" type="empty"/>
+ <property name="<Primary>F7" type="empty"/>
+ <property name="<Primary>F8" type="empty"/>
+ <property name="<Primary>F9" type="empty"/>
+ <property name="<Primary>F10" type="empty"/>
+ <property name="<Primary>F11" type="empty"/>
+ <property name="<Primary>F12" type="empty"/>
+ <property name="<Super>KP_Left" type="empty"/>
+ <property name="<Super>KP_Right" type="empty"/>
+ <property name="<Super>KP_Down" type="empty"/>
+ <property name="<Super>KP_Up" type="empty"/>
+ <property name="<Super>KP_Page_Up" type="empty"/>
+ <property name="<Super>KP_Home" type="empty"/>
+ <property name="<Super>KP_End" type="empty"/>
+ <property name="<Super>KP_Next" type="empty"/>
+ </property>
+ <property name="custom" type="empty">
+ <property name="<Primary>F12" type="string" value="workspace_12_key"/>
+ <property name="<Super>KP_Down" type="string" value="tile_up_key"/>
+ <property name="<Alt>F4" type="string" value="close_window_key"/>
+ <property name="<Primary><Alt>KP_3" type="string" value="move_window_workspace_3_key"/>
+ <property name="<Primary>F2" type="string" value="workspace_2_key"/>
+ <property name="<Primary>F6" type="string" value="workspace_6_key"/>
+ <property name="<Primary><Alt>Down" type="string" value="down_workspace_key"/>
+ <property name="<Primary><Alt>KP_9" type="string" value="move_window_workspace_9_key"/>
+ <property name="<Super>KP_Up" type="string" value="tile_down_key"/>
+ <property name="<Primary><Alt>End" type="string" value="move_window_next_workspace_key"/>
+ <property name="<Primary>F8" type="string" value="workspace_8_key"/>
+ <property name="<Primary><Shift><Alt>Left" type="string" value="move_window_left_key"/>
+ <property name="<Super>KP_Right" type="string" value="tile_right_key"/>
+ <property name="<Primary><Alt>KP_4" type="string" value="move_window_workspace_4_key"/>
+ <property name="Right" type="string" value="right_key"/>
+ <property name="Down" type="string" value="down_key"/>
+ <property name="<Primary>F3" type="string" value="workspace_3_key"/>
+ <property name="<Shift><Alt>Page_Down" type="string" value="lower_window_key"/>
+ <property name="<Primary>F9" type="string" value="workspace_9_key"/>
+ <property name="<Alt>Tab" type="string" value="cycle_windows_key"/>
+ <property name="<Primary><Shift><Alt>Right" type="string" value="move_window_right_key"/>
+ <property name="<Primary><Alt>Right" type="string" value="right_workspace_key"/>
+ <property name="<Alt>F6" type="string" value="stick_window_key"/>
+ <property name="<Primary><Alt>KP_5" type="string" value="move_window_workspace_5_key"/>
+ <property name="<Primary>F11" type="string" value="workspace_11_key"/>
+ <property name="<Alt>F10" type="string" value="maximize_window_key"/>
+ <property name="<Alt>Delete" type="string" value="del_workspace_key"/>
+ <property name="<Super>Tab" type="string" value="switch_window_key"/>
+ <property name="<Primary><Alt>d" type="string" value="show_desktop_key"/>
+ <property name="<Primary>F4" type="string" value="workspace_4_key"/>
+ <property name="<Super>KP_Page_Up" type="string" value="tile_up_right_key"/>
+ <property name="<Alt>F7" type="string" value="move_window_key"/>
+ <property name="Up" type="string" value="up_key"/>
+ <property name="<Primary><Alt>KP_6" type="string" value="move_window_workspace_6_key"/>
+ <property name="<Alt>F11" type="string" value="fullscreen_key"/>
+ <property name="<Alt>space" type="string" value="popup_menu_key"/>
+ <property name="<Super>KP_Home" type="string" value="tile_up_left_key"/>
+ <property name="Escape" type="string" value="cancel_key"/>
+ <property name="<Primary><Alt>KP_1" type="string" value="move_window_workspace_1_key"/>
+ <property name="<Super>KP_Next" type="string" value="tile_down_right_key"/>
+ <property name="<Super>KP_Left" type="string" value="tile_left_key"/>
+ <property name="<Shift><Alt>Page_Up" type="string" value="raise_window_key"/>
+ <property name="<Primary><Alt>Home" type="string" value="move_window_prev_workspace_key"/>
+ <property name="<Alt><Shift>Tab" type="string" value="cycle_reverse_windows_key"/>
+ <property name="<Primary><Alt>Left" type="string" value="left_workspace_key"/>
+ <property name="<Alt>F12" type="string" value="above_key"/>
+ <property name="<Primary><Shift><Alt>Up" type="string" value="move_window_up_key"/>
+ <property name="<Primary>F5" type="string" value="workspace_5_key"/>
+ <property name="<Alt>F8" type="string" value="resize_window_key"/>
+ <property name="<Primary><Alt>KP_7" type="string" value="move_window_workspace_7_key"/>
+ <property name="<Primary><Alt>KP_2" type="string" value="move_window_workspace_2_key"/>
+ <property name="<Super>KP_End" type="string" value="tile_down_left_key"/>
+ <property name="<Primary><Alt>Up" type="string" value="up_workspace_key"/>
+ <property name="<Alt>F9" type="string" value="hide_window_key"/>
+ <property name="<Primary>F7" type="string" value="workspace_7_key"/>
+ <property name="<Primary>F10" type="string" value="workspace_10_key"/>
+ <property name="Left" type="string" value="left_key"/>
+ <property name="<Primary><Alt>KP_8" type="string" value="move_window_workspace_8_key"/>
+ <property name="<Alt>Insert" type="string" value="add_workspace_key"/>
+ <property name="<Primary>F1" type="string" value="workspace_1_key"/>
+ <property name="override" type="bool" value="true"/>
+ </property>
+ </property>
+ <property name="providers" type="array">
+ <value type="string" value="xfwm4"/>
+ <value type="string" value="commands"/>
+ </property>
+</channel>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+
+<channel name="xfce4-keyboard-shortcuts" version="1.0">
+ <property name="commands" type="empty">
+ <property name="default" type="empty">
+ <property name="<Alt>F1" type="empty"/>
+ <property name="<Alt>F2" type="empty">
+ <property name="startup-notify" type="empty"/>
+ </property>
+ <property name="<Alt>F3" type="empty">
+ <property name="startup-notify" type="empty"/>
+ </property>
+ <property name="<Primary><Alt>Delete" type="empty"/>
+ <property name="<Primary><Alt>l" type="empty"/>
+ <property name="<Primary><Alt>t" type="empty"/>
+ <property name="XF86Display" type="empty"/>
+ <property name="<Super>p" type="empty"/>
+ <property name="<Primary>Escape" type="empty"/>
+ <property name="XF86WWW" type="empty"/>
+ <property name="HomePage" type="empty"/>
+ <property name="XF86Mail" type="empty"/>
+ <property name="Print" type="empty"/>
+ <property name="<Alt>Print" type="empty"/>
+ <property name="<Shift>Print" type="empty"/>
+ <property name="<Super>e" type="empty"/>
+ <property name="<Primary><Alt>f" type="empty"/>
+ <property name="<Primary><Alt>Escape" type="empty"/>
+ <property name="<Primary><Shift>Escape" type="empty"/>
+ <property name="<Super>r" type="empty">
+ <property name="startup-notify" type="empty"/>
+ </property>
+ <property name="<Alt><Super>s" type="empty"/>
+ </property>
+ <property name="custom" type="empty">
+ <property name="<Alt>F2" type="string" value="xfce4-appfinder --collapsed">
+ <property name="startup-notify" type="bool" value="true"/>
+ </property>
+ <property name="<Alt>Print" type="string" value="xfce4-screenshooter -w"/>
+ <property name="<Super>r" type="string" value="xfce4-appfinder -c">
+ <property name="startup-notify" type="bool" value="true"/>
+ </property>
+ <property name="XF86WWW" type="string" value="exo-open --launch WebBrowser"/>
+ <property name="XF86Mail" type="string" value="exo-open --launch MailReader"/>
+ <property name="<Alt>F3" type="string" value="xfce4-appfinder">
+ <property name="startup-notify" type="bool" value="true"/>
+ </property>
+ <property name="Print" type="string" value="xfce4-screenshooter"/>
+ <property name="<Primary>Escape" type="string" value="xfdesktop --menu"/>
+ <property name="<Shift>Print" type="string" value="xfce4-screenshooter -r"/>
+ <property name="<Primary><Alt>Delete" type="string" value="xfce4-session-logout"/>
+ <property name="<Primary><Alt>f" type="string" value="thunar"/>
+ <property name="<Primary><Alt>l" type="string" value="xflock4"/>
+ <property name="<Super>p" type="string" value="xfce4-display-settings --minimal"/>
+ <property name="<Primary><Shift>Escape" type="string" value="xfce4-taskmanager"/>
+ <property name="<Super>e" type="string" value="thunar"/>
+ <property name="<Primary><Alt>Escape" type="string" value="xkill"/>
+ <property name="HomePage" type="string" value="exo-open --launch WebBrowser"/>
+ <property name="XF86Display" type="string" value="xfce4-display-settings --minimal"/>
+ <property name="override" type="bool" value="true"/>
+ <property name="Super_L" type="string" value="xfce4-popup-whiskermenu"/>
+ <property name="<Primary><Alt>t" type="string" value="xfce4-terminal"/>
+ </property>
+ </property>
+ <property name="xfwm4" type="empty">
+ <property name="default" type="empty">
+ <property name="<Alt>Insert" type="empty"/>
+ <property name="Escape" type="empty"/>
+ <property name="Left" type="empty"/>
+ <property name="Right" type="empty"/>
+ <property name="Up" type="empty"/>
+ <property name="Down" type="empty"/>
+ <property name="<Alt>Tab" type="empty"/>
+ <property name="<Alt><Shift>Tab" type="empty"/>
+ <property name="<Alt>Delete" type="empty"/>
+ <property name="<Primary><Alt>Down" type="empty"/>
+ <property name="<Primary><Alt>Left" type="empty"/>
+ <property name="<Shift><Alt>Page_Down" type="empty"/>
+ <property name="<Alt>F4" type="empty"/>
+ <property name="<Alt>F6" type="empty"/>
+ <property name="<Alt>F7" type="empty"/>
+ <property name="<Alt>F8" type="empty"/>
+ <property name="<Alt>F9" type="empty"/>
+ <property name="<Alt>F10" type="empty"/>
+ <property name="<Alt>F11" type="empty"/>
+ <property name="<Alt>F12" type="empty"/>
+ <property name="<Primary><Shift><Alt>Left" type="empty"/>
+ <property name="<Primary><Alt>End" type="empty"/>
+ <property name="<Primary><Alt>Home" type="empty"/>
+ <property name="<Primary><Shift><Alt>Right" type="empty"/>
+ <property name="<Primary><Shift><Alt>Up" type="empty"/>
+ <property name="<Primary><Alt>KP_1" type="empty"/>
+ <property name="<Primary><Alt>KP_2" type="empty"/>
+ <property name="<Primary><Alt>KP_3" type="empty"/>
+ <property name="<Primary><Alt>KP_4" type="empty"/>
+ <property name="<Primary><Alt>KP_5" type="empty"/>
+ <property name="<Primary><Alt>KP_6" type="empty"/>
+ <property name="<Primary><Alt>KP_7" type="empty"/>
+ <property name="<Primary><Alt>KP_8" type="empty"/>
+ <property name="<Primary><Alt>KP_9" type="empty"/>
+ <property name="<Alt>space" type="empty"/>
+ <property name="<Shift><Alt>Page_Up" type="empty"/>
+ <property name="<Primary><Alt>Right" type="empty"/>
+ <property name="<Primary><Alt>d" type="empty"/>
+ <property name="<Primary><Alt>Up" type="empty"/>
+ <property name="<Super>Tab" type="empty"/>
+ <property name="<Primary>F1" type="empty"/>
+ <property name="<Primary>F2" type="empty"/>
+ <property name="<Primary>F3" type="empty"/>
+ <property name="<Primary>F4" type="empty"/>
+ <property name="<Primary>F5" type="empty"/>
+ <property name="<Primary>F6" type="empty"/>
+ <property name="<Primary>F7" type="empty"/>
+ <property name="<Primary>F8" type="empty"/>
+ <property name="<Primary>F9" type="empty"/>
+ <property name="<Primary>F10" type="empty"/>
+ <property name="<Primary>F11" type="empty"/>
+ <property name="<Primary>F12" type="empty"/>
+ <property name="<Super>KP_Left" type="empty"/>
+ <property name="<Super>KP_Right" type="empty"/>
+ <property name="<Super>KP_Down" type="empty"/>
+ <property name="<Super>KP_Up" type="empty"/>
+ <property name="<Super>KP_Page_Up" type="empty"/>
+ <property name="<Super>KP_Home" type="empty"/>
+ <property name="<Super>KP_End" type="empty"/>
+ <property name="<Super>KP_Next" type="empty"/>
+ </property>
+ <property name="custom" type="empty">
+ <property name="<Primary>F12" type="string" value="workspace_12_key"/>
+ <property name="<Alt>F4" type="string" value="close_window_key"/>
+ <property name="<Primary><Alt>KP_3" type="string" value="move_window_workspace_3_key"/>
+ <property name="<Primary>F2" type="string" value="workspace_2_key"/>
+ <property name="<Primary>F6" type="string" value="workspace_6_key"/>
+ <property name="<Primary><Alt>Down" type="string" value="down_workspace_key"/>
+ <property name="<Primary><Alt>KP_9" type="string" value="move_window_workspace_9_key"/>
+ <property name="<Primary><Alt>End" type="string" value="move_window_next_workspace_key"/>
+ <property name="<Primary>F8" type="string" value="workspace_8_key"/>
+ <property name="<Primary><Shift><Alt>Left" type="string" value="move_window_left_key"/>
+ <property name="<Primary><Alt>KP_4" type="string" value="move_window_workspace_4_key"/>
+ <property name="Right" type="string" value="right_key"/>
+ <property name="Down" type="string" value="down_key"/>
+ <property name="<Primary>F3" type="string" value="workspace_3_key"/>
+ <property name="<Shift><Alt>Page_Down" type="string" value="lower_window_key"/>
+ <property name="<Primary>F9" type="string" value="workspace_9_key"/>
+ <property name="<Alt>Tab" type="string" value="cycle_windows_key"/>
+ <property name="<Primary><Shift><Alt>Right" type="string" value="move_window_right_key"/>
+ <property name="<Primary><Alt>Right" type="string" value="right_workspace_key"/>
+ <property name="<Alt>F6" type="string" value="stick_window_key"/>
+ <property name="<Primary><Alt>KP_5" type="string" value="move_window_workspace_5_key"/>
+ <property name="<Primary>F11" type="string" value="workspace_11_key"/>
+ <property name="<Alt>F10" type="string" value="maximize_window_key"/>
+ <property name="<Alt>Delete" type="string" value="del_workspace_key"/>
+ <property name="<Super>Tab" type="string" value="switch_window_key"/>
+ <property name="<Primary><Alt>d" type="string" value="show_desktop_key"/>
+ <property name="<Primary>F4" type="string" value="workspace_4_key"/>
+ <property name="<Super>KP_Page_Up" type="string" value="tile_up_right_key"/>
+ <property name="<Alt>F7" type="string" value="move_window_key"/>
+ <property name="Up" type="string" value="up_key"/>
+ <property name="<Primary><Alt>KP_6" type="string" value="move_window_workspace_6_key"/>
+ <property name="<Alt>F11" type="string" value="fullscreen_key"/>
+ <property name="<Alt>space" type="string" value="popup_menu_key"/>
+ <property name="<Super>KP_Home" type="string" value="tile_up_left_key"/>
+ <property name="Escape" type="string" value="cancel_key"/>
+ <property name="<Primary><Alt>KP_1" type="string" value="move_window_workspace_1_key"/>
+ <property name="<Super>KP_Next" type="string" value="tile_down_right_key"/>
+ <property name="<Shift><Alt>Page_Up" type="string" value="raise_window_key"/>
+ <property name="<Primary><Alt>Home" type="string" value="move_window_prev_workspace_key"/>
+ <property name="<Alt><Shift>Tab" type="string" value="cycle_reverse_windows_key"/>
+ <property name="<Primary><Alt>Left" type="string" value="left_workspace_key"/>
+ <property name="<Alt>F12" type="string" value="above_key"/>
+ <property name="<Primary><Shift><Alt>Up" type="string" value="move_window_up_key"/>
+ <property name="<Primary>F5" type="string" value="workspace_5_key"/>
+ <property name="<Alt>F8" type="string" value="resize_window_key"/>
+ <property name="<Primary><Alt>KP_7" type="string" value="move_window_workspace_7_key"/>
+ <property name="<Primary><Alt>KP_2" type="string" value="move_window_workspace_2_key"/>
+ <property name="<Super>KP_End" type="string" value="tile_down_left_key"/>
+ <property name="<Primary><Alt>Up" type="string" value="up_workspace_key"/>
+ <property name="<Alt>F9" type="string" value="hide_window_key"/>
+ <property name="<Primary>F7" type="string" value="workspace_7_key"/>
+ <property name="<Primary>F10" type="string" value="workspace_10_key"/>
+ <property name="Left" type="string" value="left_key"/>
+ <property name="<Primary><Alt>KP_8" type="string" value="move_window_workspace_8_key"/>
+ <property name="<Alt>Insert" type="string" value="add_workspace_key"/>
+ <property name="<Primary>F1" type="string" value="workspace_1_key"/>
+ <property name="override" type="bool" value="true"/>
+ <property name="<Primary><Shift>k" type="string" value="tile_up_key"/>
+ <property name="<Primary><Shift>j" type="string" value="tile_down_key"/>
+ <property name="<Primary><Shift>h" type="string" value="tile_left_key"/>
+ <property name="<Primary><Shift>l" type="string" value="tile_right_key"/>
+ <property name="<Primary><Shift>exclam" type="string" value="move_window_to_monitor_left_key"/>
+ <property name="<Primary><Shift>at" type="string" value="move_window_to_monitor_right_key"/>
+ </property>
+ </property>
+ <property name="providers" type="array">
+ <value type="string" value="xfwm4"/>
+ <value type="string" value="commands"/>
+ </property>
+</channel>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+
+<channel name="xfwm4" version="1.0">
+ <property name="general" type="empty">
+ <property name="activate_action" type="string" value="bring"/>
+ <property name="borderless_maximize" type="bool" value="true"/>
+ <property name="box_move" type="bool" value="false"/>
+ <property name="box_resize" type="bool" value="false"/>
+ <property name="button_layout" type="string" value="O|SHMC"/>
+ <property name="button_offset" type="int" value="0"/>
+ <property name="button_spacing" type="int" value="0"/>
+ <property name="click_to_focus" type="bool" value="true"/>
+ <property name="cycle_apps_only" type="bool" value="false"/>
+ <property name="cycle_draw_frame" type="bool" value="true"/>
+ <property name="cycle_raise" type="bool" value="false"/>
+ <property name="cycle_hidden" type="bool" value="true"/>
+ <property name="cycle_minimum" type="bool" value="true"/>
+ <property name="cycle_minimized" type="bool" value="false"/>
+ <property name="cycle_preview" type="bool" value="true"/>
+ <property name="cycle_tabwin_mode" type="int" value="0"/>
+ <property name="cycle_workspaces" type="bool" value="false"/>
+ <property name="double_click_action" type="string" value="maximize"/>
+ <property name="double_click_distance" type="int" value="5"/>
+ <property name="double_click_time" type="int" value="250"/>
+ <property name="easy_click" type="string" value="Brak"/>
+ <property name="focus_delay" type="int" value="250"/>
+ <property name="focus_hint" type="bool" value="true"/>
+ <property name="focus_new" type="bool" value="true"/>
+ <property name="frame_opacity" type="int" value="100"/>
+ <property name="frame_border_top" type="int" value="0"/>
+ <property name="full_width_title" type="bool" value="true"/>
+ <property name="horiz_scroll_opacity" type="bool" value="false"/>
+ <property name="inactive_opacity" type="int" value="100"/>
+ <property name="maximized_offset" type="int" value="0"/>
+ <property name="mousewheel_rollup" type="bool" value="true"/>
+ <property name="move_opacity" type="int" value="100"/>
+ <property name="placement_mode" type="string" value="center"/>
+ <property name="placement_ratio" type="int" value="20"/>
+ <property name="popup_opacity" type="int" value="100"/>
+ <property name="prevent_focus_stealing" type="bool" value="false"/>
+ <property name="raise_delay" type="int" value="250"/>
+ <property name="raise_on_click" type="bool" value="true"/>
+ <property name="raise_on_focus" type="bool" value="false"/>
+ <property name="raise_with_any_button" type="bool" value="true"/>
+ <property name="repeat_urgent_blink" type="bool" value="false"/>
+ <property name="resize_opacity" type="int" value="100"/>
+ <property name="scroll_workspaces" type="bool" value="true"/>
+ <property name="shadow_delta_height" type="int" value="0"/>
+ <property name="shadow_delta_width" type="int" value="0"/>
+ <property name="shadow_delta_x" type="int" value="0"/>
+ <property name="shadow_delta_y" type="int" value="-3"/>
+ <property name="shadow_opacity" type="int" value="50"/>
+ <property name="show_app_icon" type="bool" value="false"/>
+ <property name="show_dock_shadow" type="bool" value="true"/>
+ <property name="show_frame_shadow" type="bool" value="true"/>
+ <property name="show_popup_shadow" type="bool" value="false"/>
+ <property name="snap_resist" type="bool" value="false"/>
+ <property name="snap_to_border" type="bool" value="true"/>
+ <property name="snap_to_windows" type="bool" value="false"/>
+ <property name="snap_width" type="int" value="10"/>
+ <property name="vblank_mode" type="string" value="auto"/>
+ <property name="theme" type="string" value="Default"/>
+ <property name="tile_on_move" type="bool" value="true"/>
+ <property name="title_alignment" type="string" value="center"/>
+ <property name="title_font" type="string" value="Sans Bold 9"/>
+ <property name="title_horizontal_offset" type="int" value="0"/>
+ <property name="titleless_maximize" type="bool" value="false"/>
+ <property name="title_shadow_active" type="string" value="false"/>
+ <property name="title_shadow_inactive" type="string" value="false"/>
+ <property name="title_vertical_offset_active" type="int" value="0"/>
+ <property name="title_vertical_offset_inactive" type="int" value="0"/>
+ <property name="toggle_workspaces" type="bool" value="false"/>
+ <property name="unredirect_overlays" type="bool" value="true"/>
+ <property name="urgent_blink" type="bool" value="false"/>
+ <property name="use_compositing" type="bool" value="true"/>
+ <property name="workspace_count" type="int" value="1"/>
+ <property name="wrap_cycle" type="bool" value="true"/>
+ <property name="wrap_layout" type="bool" value="true"/>
+ <property name="wrap_resistance" type="int" value="10"/>
+ <property name="wrap_windows" type="bool" value="false"/>
+ <property name="wrap_workspaces" type="bool" value="false"/>
+ <property name="zoom_desktop" type="bool" value="true"/>
+ <property name="zoom_pointer" type="bool" value="true"/>
+ <property name="workspace_names" type="array">
+ <value type="string" value="Obszar roboczy 1"/>
+ <value type="string" value="Obszar roboczy 2"/>
+ <value type="string" value="Obszar roboczy 3"/>
+ <value type="string" value="Obszar roboczy 4"/>
+ </property>
+ </property>
+</channel>
--- /dev/null
+[Desktop Entry]
+Version=1.0
+Type=Application
+Name=LibreWolf (Firejailed)
+Comment=Bezpieczne przeglądanie stron WWW
+Exec=/usr/local/bin/secured-firefox
+Icon=/usr/lib/librewolf/browser/chrome/icons/default/default48.png
+Path=
+Terminal=false
+StartupNotify=false
--- /dev/null
+[Desktop Entry]
+Encoding=UTF-8
+Version=0.9.4
+Type=Application
+Name=Notifier - packages
+Comment=Notifier - packages
+Exec=/usr/local/bin/notifier packages
+OnlyShowIn=XFCE;
+RunHook=0
+StartupNotify=false
+Terminal=false
+Hidden=false
+
--- /dev/null
+[Desktop Entry]
+Encoding=UTF-8
+Version=0.9.4
+Type=Application
+Name=autostart-x4notes
+Comment=Uruchamianie xfce4-notes w cryptfs
+Exec=/usr/local/bin/autostart-x4notes
+OnlyShowIn=XFCE;
+RunHook=0
+StartupNotify=false
+Terminal=false
+Hidden=false
+
--- /dev/null
+[MIME Cache]
+application/clarisworks=libreoffice-calc.desktop;libreoffice-draw.desktop;libreoffice-writer.desktop;
+application/csv=libreoffice-calc.desktop;
+application/epub+zip=atril.desktop;xarchiver.desktop;
+application/excel=libreoffice-calc.desktop;
+application/gzip=xarchiver.desktop;
+application/macwriteii=libreoffice-writer.desktop;
+application/mathml+xml=libreoffice-math.desktop;
+application/mpeg4-iod=vlc.desktop;
+application/mpeg4-muxcodetable=vlc.desktop;
+application/msexcel=libreoffice-calc.desktop;
+application/mspowerpoint=libreoffice-impress.desktop;
+application/msword=libreoffice-writer.desktop;
+application/mxf=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+application/ogg=mpv.desktop;org.xfce.Parole.desktop;qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+application/oxps=atril.desktop;
+application/pdf=atril.desktop;gimp.desktop;libreoffice-draw.desktop;
+application/pkcs10=gcr-viewer.desktop;
+application/pkcs10+pem=gcr-viewer.desktop;
+application/pkcs12=gcr-viewer.desktop;
+application/pkcs12+pem=gcr-viewer.desktop;
+application/pkcs7-mime=gcr-viewer.desktop;
+application/pkcs7-mime+pem=gcr-viewer.desktop;
+application/pkcs8=gcr-viewer.desktop;
+application/pkcs8+pem=gcr-viewer.desktop;
+application/pkix-cert=gcr-viewer.desktop;
+application/pkix-cert+pem=gcr-viewer.desktop;
+application/pkix-crl=gcr-viewer.desktop;
+application/pkix-crl+pem=gcr-viewer.desktop;
+application/postscript=atril.desktop;gimp.desktop;
+application/prs.plucker=libreoffice-writer.desktop;
+application/ram=org.xfce.Parole.desktop;vlc.desktop;
+application/rdf+xml=firefox-esr.desktop;
+application/rss+xml=firefox-esr.desktop;
+application/rtf=libreoffice-writer.desktop;
+application/sdp=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+application/smil=mpv.desktop;org.xfce.Parole.desktop;
+application/smil+xml=org.xfce.Parole.desktop;
+application/streamingmedia=mpv.desktop;
+application/tab-separated-values=libreoffice-calc.desktop;
+application/vnd-comicbook.rar=atril.desktop;
+application/vnd.android.package-archive=xarchiver.desktop;
+application/vnd.apple.mpegurl=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+application/vnd.comicbook+zip=atril.desktop;xarchiver.desktop;
+application/vnd.corel-draw=libreoffice-draw.desktop;
+application/vnd.debian.binary-package=xarchiver.desktop;
+application/vnd.lotus-1-2-3=libreoffice-calc.desktop;
+application/vnd.lotus-wordpro=libreoffice-writer.desktop;
+application/vnd.mozilla.xul+xml=firefox-esr.desktop;
+application/vnd.ms-asf=mpv.desktop;vlc.desktop;
+application/vnd.ms-cab-compressed=xarchiver.desktop;
+application/vnd.ms-excel=libreoffice-calc.desktop;
+application/vnd.ms-excel.sheet.binary.macroEnabled.12=libreoffice-calc.desktop;
+application/vnd.ms-excel.sheet.macroEnabled.12=libreoffice-calc.desktop;
+application/vnd.ms-excel.template.macroEnabled.12=libreoffice-calc.desktop;
+application/vnd.ms-powerpoint=libreoffice-impress.desktop;
+application/vnd.ms-powerpoint.presentation.macroEnabled.12=libreoffice-impress.desktop;
+application/vnd.ms-powerpoint.slideshow.macroEnabled.12=libreoffice-impress.desktop;
+application/vnd.ms-powerpoint.template.macroEnabled.12=libreoffice-impress.desktop;
+application/vnd.ms-publisher=libreoffice-draw.desktop;
+application/vnd.ms-word=libreoffice-writer.desktop;
+application/vnd.ms-word.document.macroEnabled.12=libreoffice-writer.desktop;
+application/vnd.ms-word.template.macroEnabled.12=libreoffice-writer.desktop;
+application/vnd.ms-works=libreoffice-calc.desktop;libreoffice-writer.desktop;
+application/vnd.ms-wpl=org.xfce.Parole.desktop;vlc.desktop;
+application/vnd.ms-xpsdocument=atril.desktop;
+application/vnd.oasis.opendocument.chart=libreoffice-calc.desktop;
+application/vnd.oasis.opendocument.chart-template=libreoffice-calc.desktop;
+application/vnd.oasis.opendocument.formula=libreoffice-math.desktop;
+application/vnd.oasis.opendocument.formula-template=libreoffice-math.desktop;
+application/vnd.oasis.opendocument.graphics=libreoffice-draw.desktop;
+application/vnd.oasis.opendocument.graphics-flat-xml=libreoffice-draw.desktop;libreoffice-xsltfilter.desktop;
+application/vnd.oasis.opendocument.graphics-template=libreoffice-draw.desktop;
+application/vnd.oasis.opendocument.presentation=libreoffice-impress.desktop;
+application/vnd.oasis.opendocument.presentation-flat-xml=libreoffice-impress.desktop;libreoffice-xsltfilter.desktop;
+application/vnd.oasis.opendocument.presentation-template=libreoffice-impress.desktop;
+application/vnd.oasis.opendocument.spreadsheet=libreoffice-calc.desktop;
+application/vnd.oasis.opendocument.spreadsheet-flat-xml=libreoffice-calc.desktop;libreoffice-xsltfilter.desktop;
+application/vnd.oasis.opendocument.spreadsheet-template=libreoffice-calc.desktop;
+application/vnd.oasis.opendocument.text=libreoffice-writer.desktop;
+application/vnd.oasis.opendocument.text-flat-xml=libreoffice-writer.desktop;libreoffice-xsltfilter.desktop;
+application/vnd.oasis.opendocument.text-master=libreoffice-writer.desktop;
+application/vnd.oasis.opendocument.text-master-template=libreoffice-writer.desktop;
+application/vnd.oasis.opendocument.text-template=libreoffice-writer.desktop;
+application/vnd.oasis.opendocument.text-web=libreoffice-writer.desktop;
+application/vnd.openofficeorg.extension=libreoffice-startcenter.desktop;xarchiver.desktop;
+application/vnd.openxmlformats-officedocument.presentationml.presentation=libreoffice-impress.desktop;
+application/vnd.openxmlformats-officedocument.presentationml.slide=libreoffice-impress.desktop;
+application/vnd.openxmlformats-officedocument.presentationml.slideshow=libreoffice-impress.desktop;
+application/vnd.openxmlformats-officedocument.presentationml.template=libreoffice-impress.desktop;
+application/vnd.openxmlformats-officedocument.spreadsheetml.sheet=libreoffice-calc.desktop;
+application/vnd.openxmlformats-officedocument.spreadsheetml.template=libreoffice-calc.desktop;
+application/vnd.openxmlformats-officedocument.wordprocessingml.document=libreoffice-writer.desktop;
+application/vnd.openxmlformats-officedocument.wordprocessingml.template=libreoffice-writer.desktop;
+application/vnd.palm=libreoffice-writer.desktop;
+application/vnd.rar=xarchiver.desktop;
+application/vnd.rn-realmedia=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+application/vnd.rn-realmedia-vbr=mpv.desktop;vlc.desktop;
+application/vnd.snap=xarchiver.desktop;
+application/vnd.squashfs=xarchiver.desktop;
+application/vnd.stardivision.writer-global=libreoffice-writer.desktop;
+application/vnd.sun.xml.calc=libreoffice-calc.desktop;
+application/vnd.sun.xml.calc.template=libreoffice-calc.desktop;
+application/vnd.sun.xml.draw=libreoffice-draw.desktop;
+application/vnd.sun.xml.draw.template=libreoffice-draw.desktop;
+application/vnd.sun.xml.impress=libreoffice-impress.desktop;
+application/vnd.sun.xml.impress.template=libreoffice-impress.desktop;
+application/vnd.sun.xml.math=libreoffice-math.desktop;
+application/vnd.sun.xml.writer=libreoffice-writer.desktop;
+application/vnd.sun.xml.writer.global=libreoffice-writer.desktop;
+application/vnd.sun.xml.writer.template=libreoffice-writer.desktop;
+application/vnd.visio=libreoffice-draw.desktop;
+application/vnd.wordperfect=libreoffice-writer.desktop;
+application/wordperfect=libreoffice-writer.desktop;
+application/x-123=libreoffice-calc.desktop;
+application/x-7z-compressed=xarchiver.desktop;
+application/x-abiword=libreoffice-writer.desktop;
+application/x-aportisdoc=libreoffice-writer.desktop;
+application/x-archive=xarchiver.desktop;
+application/x-arj=xarchiver.desktop;
+application/x-bzdvi=atril.desktop;
+application/x-bzip=xarchiver.desktop;
+application/x-bzip-compressed-tar=xarchiver.desktop;
+application/x-bzpdf=atril.desktop;
+application/x-bzpostscript=atril.desktop;
+application/x-cb7=atril.desktop;
+application/x-cbr=atril.desktop;
+application/x-cbt=atril.desktop;
+application/x-cbz=atril.desktop;
+application/x-cd-image=vlc.desktop;xarchiver.desktop;xfburn.desktop;
+application/x-compress=xarchiver.desktop;
+application/x-compressed-tar=xarchiver.desktop;
+application/x-cpio=xarchiver.desktop;
+application/x-cpio-compressed=xarchiver.desktop;
+application/x-cue=mpv.desktop;qmmp-1.desktop;qmmp-enqueue-1.desktop;
+application/x-dbase=libreoffice-calc.desktop;
+application/x-dbf=libreoffice-calc.desktop;
+application/x-desktop=panel-desktop-handler.desktop;
+application/x-doc=libreoffice-writer.desktop;
+application/x-dos_ms_excel=libreoffice-calc.desktop;
+application/x-dvi=atril.desktop;
+application/x-excel=libreoffice-calc.desktop;
+application/x-extension-m4a=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+application/x-extension-mp4=vlc.desktop;
+application/x-extension-txt=libreoffice-writer.desktop;
+application/x-fictionbook+xml=libreoffice-writer.desktop;
+application/x-flac=io.github.quodlibet.QuodLibet.desktop;org.xfce.Parole.desktop;vlc.desktop;
+application/x-flash-video=org.xfce.Parole.desktop;vlc.desktop;
+application/x-gzdvi=atril.desktop;
+application/x-gzpdf=atril.desktop;
+application/x-gzpostscript=atril.desktop;
+application/x-hwp=libreoffice-writer.desktop;
+application/x-iwork-keynote-sffkey=libreoffice-impress.desktop;
+application/x-iwork-numbers-sffnumbers=libreoffice-calc.desktop;
+application/x-iwork-pages-sffpages=libreoffice-writer.desktop;
+application/x-java-archive=xarchiver.desktop;
+application/x-lha=xarchiver.desktop;
+application/x-lrzip=xarchiver.desktop;
+application/x-lrzip-compressed-tar=xarchiver.desktop;
+application/x-lz4=xarchiver.desktop;
+application/x-lz4-compressed-tar=xarchiver.desktop;
+application/x-lzip=xarchiver.desktop;
+application/x-lzip-compressed-tar=xarchiver.desktop;
+application/x-lzma=xarchiver.desktop;
+application/x-lzma-compressed-tar=xarchiver.desktop;
+application/x-lzop=xarchiver.desktop;
+application/x-matroska=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+application/x-mpegurl=mpv.desktop;
+application/x-ms-excel=libreoffice-calc.desktop;
+application/x-msexcel=libreoffice-calc.desktop;
+application/x-mswrite=libreoffice-writer.desktop;
+application/x-netshow-channel=org.xfce.Parole.desktop;
+application/x-ogg=mpv.desktop;org.xfce.Parole.desktop;qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+application/x-ogm=mpv.desktop;
+application/x-ogm-audio=mpv.desktop;
+application/x-ogm-video=mpv.desktop;
+application/x-pagemaker=libreoffice-draw.desktop;
+application/x-pem-file=gcr-viewer.desktop;
+application/x-pem-key=gcr-viewer.desktop;
+application/x-pkcs12=gcr-viewer.desktop;
+application/x-pkcs7-certificates=gcr-viewer.desktop;
+application/x-quattropro=libreoffice-calc.desktop;
+application/x-quicktime-media-link=org.xfce.Parole.desktop;vlc.desktop;
+application/x-quicktimeplayer=org.xfce.Parole.desktop;vlc.desktop;
+application/x-rar=xarchiver.desktop;
+application/x-remmina=org.remmina.Remmina-file.desktop;org.remmina.Remmina.desktop;
+application/x-rpm=xarchiver.desktop;
+application/x-shellscript=gvim.desktop;vim.desktop;
+application/x-shockwave-flash=vlc.desktop;
+application/x-shorten=mpv.desktop;org.xfce.Parole.desktop;
+application/x-smil=mpv.desktop;org.xfce.Parole.desktop;
+application/x-sony-bbeb=libreoffice-writer.desktop;
+application/x-source-rpm=xarchiver.desktop;
+application/x-spkac=gcr-viewer.desktop;
+application/x-spkac+base64=gcr-viewer.desktop;
+application/x-starcalc=libreoffice-calc.desktop;
+application/x-stardraw=libreoffice-draw.desktop;
+application/x-starwriter=libreoffice-writer.desktop;
+application/x-streamingmedia=mpv.desktop;
+application/x-t602=libreoffice-writer.desktop;
+application/x-tar=xarchiver.desktop;
+application/x-tarz=xarchiver.desktop;
+application/x-tzo=xarchiver.desktop;
+application/x-virt-viewer=remote-viewer.desktop;
+application/x-wpg=libreoffice-draw.desktop;
+application/x-x509-ca-cert=gcr-viewer.desktop;
+application/x-x509-user-cert=gcr-viewer.desktop;
+application/x-xpinstall=xarchiver.desktop;
+application/x-xpraconfig=xpra-launcher.desktop;
+application/x-xz=xarchiver.desktop;
+application/x-xz-compressed-tar=xarchiver.desktop;
+application/x-xzpdf=atril.desktop;
+application/x-zstd-compressed-tar=xarchiver.desktop;
+application/xhtml+xml=firefox-esr.desktop;
+application/xml=firefox-esr.desktop;
+application/xspf+xml=org.xfce.Parole.desktop;vlc.desktop;
+application/zip=xarchiver.desktop;
+application/zstd=xarchiver.desktop;
+audio/3gpp=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+audio/3gpp2=mpv.desktop;vlc.desktop;
+audio/AMR=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+audio/AMR-WB=org.xfce.Parole.desktop;vlc.desktop;
+audio/aac=qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/ac3=vlc.desktop;
+audio/aiff=io.github.quodlibet.QuodLibet.desktop;mpv.desktop;
+audio/amr-wb=mpv.desktop;
+audio/basic=org.xfce.Parole.desktop;vlc.desktop;
+audio/dsf=io.github.quodlibet.QuodLibet.desktop;
+audio/dv=mpv.desktop;vlc.desktop;
+audio/eac3=mpv.desktop;vlc.desktop;
+audio/flac=qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/m3u=mpv.desktop;
+audio/m4a=mpv.desktop;qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/midi=qmmp-1.desktop;vlc.desktop;
+audio/mp1=mpv.desktop;vlc.desktop;
+audio/mp2=qmmp-1.desktop;vlc.desktop;
+audio/mp3=qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/mp4=vlc.desktop;
+audio/mpeg=qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/mpeg2=mpv.desktop;
+audio/mpeg3=mpv.desktop;
+audio/mpeg4=io.github.quodlibet.QuodLibet.desktop;
+audio/mpegurl=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+audio/mpg=io.github.quodlibet.QuodLibet.desktop;mpv.desktop;vlc.desktop;
+audio/musepack=mpv.desktop;
+audio/ogg=qmmp-1.desktop;vlc.desktop;
+audio/opus=qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/prs.sid=org.xfce.Parole.desktop;
+audio/rn-mpeg=mpv.desktop;
+audio/scpls=mpv.desktop;vlc.desktop;
+audio/vnd.dolby.heaac.1=mpv.desktop;vlc.desktop;
+audio/vnd.dolby.heaac.2=mpv.desktop;vlc.desktop;
+audio/vnd.dolby.mlp=vlc.desktop;
+audio/vnd.dts=mpv.desktop;vlc.desktop;
+audio/vnd.dts.hd=mpv.desktop;vlc.desktop;
+audio/vnd.rn-realaudio=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+audio/vorbis=io.github.quodlibet.QuodLibet.desktop;mpv.desktop;vlc.desktop;
+audio/wav=io.github.quodlibet.QuodLibet.desktop;mpv.desktop;vlc.desktop;
+audio/wave=io.github.quodlibet.QuodLibet.desktop;
+audio/webm=mpv.desktop;vlc.desktop;
+audio/x-aac=io.github.quodlibet.QuodLibet.desktop;mpv.desktop;qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/x-adpcm=mpv.desktop;vlc.desktop;
+audio/x-aiff=vlc.desktop;
+audio/x-ape=mpv.desktop;org.xfce.Parole.desktop;qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/x-ffmpeg-shorten=qmmp-1.desktop;qmmp-enqueue-1.desktop;
+audio/x-flac=qmmp-1.desktop;vlc.desktop;
+audio/x-gsm=org.xfce.Parole.desktop;vlc.desktop;
+audio/x-it=org.xfce.Parole.desktop;qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/x-m4a=io.github.quodlibet.QuodLibet.desktop;mpv.desktop;org.xfce.Parole.desktop;qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/x-matroska=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+audio/x-midi=io.github.quodlibet.QuodLibet.desktop;
+audio/x-mod=qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/x-mp1=mpv.desktop;vlc.desktop;
+audio/x-mp2=mpv.desktop;vlc.desktop;
+audio/x-mp3=io.github.quodlibet.QuodLibet.desktop;mpv.desktop;org.xfce.Parole.desktop;qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/x-mpc=io.github.quodlibet.QuodLibet.desktop;
+audio/x-mpeg=io.github.quodlibet.QuodLibet.desktop;org.xfce.Parole.desktop;qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/x-mpegurl=mpv.desktop;org.xfce.Parole.desktop;qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/x-mpg=mpv.desktop;vlc.desktop;
+audio/x-ms-asf=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+audio/x-ms-asx=org.xfce.Parole.desktop;vlc.desktop;
+audio/x-ms-wax=org.xfce.Parole.desktop;vlc.desktop;
+audio/x-ms-wma=qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/x-ms-wmv=io.github.quodlibet.QuodLibet.desktop;
+audio/x-musepack=qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/x-oggflac=io.github.quodlibet.QuodLibet.desktop;
+audio/x-pls=mpv.desktop;
+audio/x-pn-aiff=org.xfce.Parole.desktop;vlc.desktop;
+audio/x-pn-au=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+audio/x-pn-realaudio=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+audio/x-pn-realaudio-plugin=org.xfce.Parole.desktop;vlc.desktop;
+audio/x-pn-wav=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+audio/x-pn-windows-acm=org.xfce.Parole.desktop;vlc.desktop;
+audio/x-pn-windows-pcm=mpv.desktop;
+audio/x-real-audio=org.xfce.Parole.desktop;vlc.desktop;
+audio/x-realaudio=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+audio/x-s3m=qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/x-sbc=org.xfce.Parole.desktop;
+audio/x-scpls=mpv.desktop;org.xfce.Parole.desktop;qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/x-shorten=mpv.desktop;vlc.desktop;
+audio/x-speex=io.github.quodlibet.QuodLibet.desktop;org.xfce.Parole.desktop;vlc.desktop;
+audio/x-stm=org.xfce.Parole.desktop;qmmp-1.desktop;qmmp-enqueue-1.desktop;
+audio/x-tta=io.github.quodlibet.QuodLibet.desktop;mpv.desktop;org.xfce.Parole.desktop;qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/x-vorbis=mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+audio/x-vorbis+ogg=qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/x-wav=io.github.quodlibet.QuodLibet.desktop;mpv.desktop;org.xfce.Parole.desktop;vlc.desktop;
+audio/x-wavpack=io.github.quodlibet.QuodLibet.desktop;mpv.desktop;org.xfce.Parole.desktop;qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+audio/x-wma=io.github.quodlibet.QuodLibet.desktop;
+audio/x-xm=qmmp-1.desktop;qmmp-enqueue-1.desktop;vlc.desktop;
+image/*=atril.desktop;
+image/avif=org.xfce.ristretto.desktop;
+image/bmp=org.xfce.ristretto.desktop;
+image/g3fax=gimp.desktop;
+image/gif=org.xfce.ristretto.desktop;
+image/heic=gimp.desktop;
+image/heif=org.xfce.ristretto.desktop;
+image/jp2=gimp.desktop;
+image/jpeg=org.xfce.ristretto.desktop;
+image/jxl=gimp.desktop;
+image/png=org.xfce.ristretto.desktop;
+image/svg+xml=org.xfce.ristretto.desktop;
+image/tiff=org.xfce.ristretto.desktop;
+image/vnd.djvu=atril.desktop;
+image/vnd.djvu+multipage=atril.desktop;
+image/vnd.rn-realpix=org.xfce.Parole.desktop;vlc.desktop;
+image/webp=firefox-esr.desktop;
+image/x-bzeps=atril.desktop;
+image/x-compressed-xcf=gimp.desktop;
+image/x-emf=libreoffice-draw.desktop;
+image/x-eps=atril.desktop;
+image/x-exr=gimp.desktop;
+image/x-fits=gimp.desktop;
+image/x-freehand=libreoffice-draw.desktop;
+image/x-gimp-gbr=gimp.desktop;
+image/x-gimp-gih=gimp.desktop;
+image/x-gimp-pat=gimp.desktop;
+image/x-gzeps=atril.desktop;
+image/x-icon=gimp.desktop;
+image/x-pcx=gimp.desktop;
+image/x-pict=org.xfce.Parole.desktop;
+image/x-pixmap=org.xfce.ristretto.desktop;
+image/x-portable-anymap=gimp.desktop;
+image/x-portable-bitmap=gimp.desktop;
+image/x-portable-graymap=gimp.desktop;
+image/x-portable-pixmap=gimp.desktop;
+image/x-psd=gimp.desktop;
+image/x-psp=gimp.desktop;
+image/x-sgi=gimp.desktop;
+image/x-sun-raster=gimp.desktop;
+image/x-tga=gimp.desktop;
+image/x-webp=gimp.desktop;
+image/x-wmf=gimp.desktop;libreoffice-draw.desktop;
+image/x-xbitmap=gimp.desktop;
+image/x-xcf=gimp.desktop;
+image/x-xcursor=gimp.desktop;
+image/x-xpixmap=gimp.desktop;org.xfce.ristretto.desktop;
+image/x-xwindowdump=gimp.desktop;
+inode/directory=thunar.desktop;
+misc/ultravox=org.xfce.Parole.desktop;vlc.desktop;
+text/comma-separated-values=libreoffice-calc.desktop;
+text/csv=libreoffice-calc.desktop;
+text/english=gvim.desktop;vim.desktop;
+text/google-video-pointer=org.xfce.Parole.desktop;vlc.desktop;
+text/html=firefox-esr.desktop;
+text/mathml=libreoffice-math.desktop;
+text/plain=gvim.desktop;libreoffice-writer.desktop;org.xfce.mousepad.desktop;vim.desktop;
+text/rtf=libreoffice-writer.desktop;
+text/spreadsheet=libreoffice-calc.desktop;
+text/tab-separated-values=libreoffice-calc.desktop;
+text/x-c=gvim.desktop;vim.desktop;
+text/x-c++=gvim.desktop;vim.desktop;
+text/x-c++hdr=gvim.desktop;vim.desktop;
+text/x-c++src=gvim.desktop;vim.desktop;
+text/x-chdr=gvim.desktop;vim.desktop;
+text/x-comma-separated-values=libreoffice-calc.desktop;
+text/x-csrc=gvim.desktop;vim.desktop;
+text/x-csv=libreoffice-calc.desktop;
+text/x-google-video-pointer=org.xfce.Parole.desktop;vlc.desktop;
+text/x-java=gvim.desktop;vim.desktop;
+text/x-makefile=gvim.desktop;vim.desktop;
+text/x-moc=gvim.desktop;vim.desktop;
+text/x-pascal=gvim.desktop;vim.desktop;
+text/x-tcl=gvim.desktop;vim.desktop;
+text/x-tex=gvim.desktop;vim.desktop;
+text/xml=firefox-esr.desktop;
+video/3gp=vlc.desktop;
+video/3gpp=vlc.desktop;
+video/3gpp2=vlc.desktop;
+video/avi=vlc.desktop;
+video/divx=vlc.desktop;
+video/dv=vlc.desktop;
+video/fli=vlc.desktop;
+video/flv=vlc.desktop;
+video/mkv=vlc.desktop;
+video/mp2t=vlc.desktop;
+video/mp4=vlc.desktop;
+video/mp4v-es=vlc.desktop;
+video/mpeg=vlc.desktop;
+video/mpeg-system=vlc.desktop;
+video/msvideo=vlc.desktop;
+video/ogg=vlc.desktop;
+video/quicktime=vlc.desktop;
+video/vivo=org.xfce.Parole.desktop;
+video/vnd.divx=vlc.desktop;
+video/vnd.mpegurl=vlc.desktop;
+video/vnd.rn-realvideo=vlc.desktop;
+video/vnd.vivo=org.xfce.Parole.desktop;
+video/webm=vlc.desktop;
+video/x-anim=vlc.desktop;
+video/x-avi=vlc.desktop;
+video/x-flc=vlc.desktop;
+video/x-fli=vlc.desktop;
+video/x-flic=mpv.desktop;org.xfce.Parole.desktop;
+video/x-flv=vlc.desktop;
+video/x-m4v=vlc.desktop;
+video/x-matroska=vlc.desktop;
+video/x-mpeg=vlc.desktop;
+video/x-mpeg-system=vlc.desktop;
+video/x-mpeg2=vlc.desktop;
+video/x-mpeg3=mpv.desktop;
+video/x-ms-afs=mpv.desktop;
+video/x-ms-asf=vlc.desktop;
+video/x-ms-asf-plugin=vlc.desktop;
+video/x-ms-asx=vlc.desktop;
+video/x-ms-wm=vlc.desktop;
+video/x-ms-wmv=vlc.desktop;
+video/x-ms-wmx=vlc.desktop;
+video/x-ms-wvx=vlc.desktop;
+video/x-ms-wvxvideo=mpv.desktop;
+video/x-msvideo=vlc.desktop;
+video/x-nsv=vlc.desktop;
+video/x-ogm=vlc.desktop;
+video/x-ogm+ogg=vlc.desktop;
+video/x-theora=vlc.desktop;
+video/x-theora+ogg=vlc.desktop;
+video/x-totem-stream=org.xfce.Parole.desktop;
+video/x-wmv=io.github.quodlibet.QuodLibet.desktop;
+x-content/audio-cdda=vlc.desktop;
+x-content/audio-player=vlc.desktop;
+x-content/blank-cd=xfburn.desktop;
+x-content/video-dvd=org.xfce.Parole.desktop;vlc.desktop;
+x-content/video-svcd=org.xfce.Parole.desktop;vlc.desktop;
+x-content/video-vcd=org.xfce.Parole.desktop;vlc.desktop;
+x-scheme-handler/http=firefox-esr.desktop;
+x-scheme-handler/https=firefox-esr.desktop;
+x-scheme-handler/icy=vlc.desktop;
+x-scheme-handler/icyx=vlc.desktop;
+x-scheme-handler/mailto=mutt.desktop;
+x-scheme-handler/mms=org.xfce.Parole.desktop;vlc.desktop;
+x-scheme-handler/mmsh=org.xfce.Parole.desktop;vlc.desktop;
+x-scheme-handler/ms-access=libreoffice-startcenter.desktop;
+x-scheme-handler/ms-excel=libreoffice-startcenter.desktop;
+x-scheme-handler/ms-powerpoint=libreoffice-startcenter.desktop;
+x-scheme-handler/ms-visio=libreoffice-startcenter.desktop;
+x-scheme-handler/ms-word=libreoffice-startcenter.desktop;
+x-scheme-handler/quodlibet=io.github.quodlibet.QuodLibet.desktop;
+x-scheme-handler/rdp=org.remmina.Remmina-file.desktop;org.remmina.Remmina.desktop;
+x-scheme-handler/remmina=org.remmina.Remmina-file.desktop;org.remmina.Remmina.desktop;
+x-scheme-handler/rtmp=vlc.desktop;
+x-scheme-handler/rtp=vlc.desktop;
+x-scheme-handler/rtsp=vlc.desktop;
+x-scheme-handler/spice=org.remmina.Remmina-file.desktop;org.remmina.Remmina.desktop;remote-viewer.desktop;
+x-scheme-handler/spice+tls=remote-viewer.desktop;
+x-scheme-handler/spice+unix=remote-viewer.desktop;
+x-scheme-handler/ssh=org.remmina.Remmina.desktop;
+x-scheme-handler/vnc=org.remmina.Remmina-file.desktop;org.remmina.Remmina.desktop;
+x-scheme-handler/vnd.libreoffice.cmis=libreoffice-startcenter.desktop;
+x-scheme-handler/vnd.libreoffice.command=libreoffice-startcenter.desktop;
+x-scheme-handler/vnd.sun.star.webdav=libreoffice-startcenter.desktop;
+x-scheme-handler/vnd.sun.star.webdavs=libreoffice-startcenter.desktop;
+x-scheme-handler/xpra=xpra.desktop;
+x-scheme-handler/xpra+ssh=xpra.desktop;
+x-scheme-handler/xpra+ssl=xpra.desktop;
+x-scheme-handler/xpra+tcp=xpra.desktop;
+x-scheme-handler/xpra+tls=xpra.desktop;
+x-scheme-handler/xpra+ws=xpra.desktop;
+x-scheme-handler/xpra+wss=xpra.desktop;
+x-scheme-handler/xpras=xpra.desktop;
--- /dev/null
+#!/bin/bash
+
+if grep -q 'trixie' /etc/os-release; then
+ echo -n '-testing';
+else
+ echo -n '-stable';
+fi
--- /dev/null
+#!/bin/bash
+
+vendor=$(hostnamectl | grep 'Vendor' | awk '{printf $3}')
+modelLine=$(hostnamectl | grep 'Model' | awk '{printf $3}')
+model=$(hostnamectl | grep 'Model' | awk '{printf $4}')
+
+case $vendor in
+ "Lenovo") vendorShort="l";;
+ "Dell") vendorShort="d";;
+ "Acer") vendorShort="a";;
+ "ASUSTeK") vendorShort="as";;
+ "GOOGLE") vendorShort="go";;
+ "QEMU") vendorShort="kvm";;
+ *) hName="immudex";;
+esac
+
+case $modelLine in
+ "ThinkPad") mLShort="TP";;
+ "Latitude") mLShort="Lat";;
+ "AOD260") mLShort="ao";
+ model="D260";;
+ "Candy") vendorShort="d";
+ mLShort="chrbook";
+ model="3120";;
+ "Inspiron") mLShort="Ins";;
+ "Standard") if [ $vendorShort = "kvm" ]; then
+ mLShort=$(hostnamectl | grep 'Machine ID' | awk '{print $3}' | cut -c 26-33);
+ model="";
+ else
+ mlShort="Std";
+ fi;;
+ *) hName="immudex";;
+esac
+
+if [ ! "$hName" ]; then
+ hName="${vendorShort}-${mLShort}-$model"
+ sudo hostnamectl set-hostname $hName;
+ sudo sed -i "s/immudex/${hName}/" /etc/hosts;
+ echo $hName | sudo tee /etc/hostname > /dev/null;
+fi
+
--- /dev/null
+#!/bin/bash
+
+if [ -f ~/public.gpg ] && [ -f ~/private.gpg ] && [ -f ~/otrust.txt ]; then
+ gpg --import ~/public.gpg
+ gpg --import ~/private.gpg
+ gpg --import-ownertrust ~/otrust.txt
+fi
--- /dev/null
+#!/bin/bash
+
+function get_debian_branch() {
+ if grep -q 'trixie' /etc/os-release; then
+ echo "testing";
+ else
+ echo "stable";
+ fi
+}
+
+function get_machine_arch() {
+ arch=$(uname -m);
+ if [ "$arch" = "i686" ]; then
+ echo "32";
+ else
+ echo "64";
+ fi
+}
+
+function check_distro_version() {
+ set -e
+ root="/run/live/medium";
+ if [ -d ${root}/live ]; then
+ if [ -f ${root}/live/version ]; then
+ version=$(cat ${root}/live/version | sed 's/\.//g');
+ else version="000";
+ fi
+ BRANCH=$(get_debian_branch);
+ ARCH=$(get_machine_arch);
+ if [ ! -f /tmp/ltver ]; then
+ wget -q https://ftp.morketsmerke.org/immudex/${BRANCH}/upgrades/latest/${ARCH}/version -O /tmp/ltver;
+ fi
+ if [ ! -s /tmp/ltver ]; then sudo rm /tmp/ltver; return 255; fi;
+ newVersionTxt=$(cat /tmp/ltver);
+ newVersionInt=$(echo $newVersionTxt | sed 's/\.//g');
+ if [ $version -lt $newVersionInt ]; then
+ exitcode=0;
+ else
+ exitcode=1;
+ fi
+ else
+ exitcode=255;
+ fi
+ if [ "$1" ] && [ "$1" = "--print" ]; then
+ echo $newVersionTxt;
+ return 0;
+ fi
+ return $exitcode;
+}
--- /dev/null
+#!/bin/bash
+
+function help() {
+ echo "newsfeed - fetch and browse news feed from rss and atom channels";
+ echo "morketsmerke.net; COPYLEFT @ 2022";
+ echo;
+ echo "Options:";
+ echo " --list - shows numbered list of names, saved in ~/.newsfeed names and";
+ echo " URL of rss channels";
+ echo " --check - fetching new rss channel file from source";
+ echo " --show <number_of_channel> - shows numbered list of news titles.";
+ echo " Number of channel you can get from --list option.";
+ echo " --open <number_of_title> - open web browser on link, which are under";
+ echo " titles of news on rss channel. Number of title you can get";
+ echo " from --show option. This option based on the last showed rss";
+ echo " channel feed.";
+ echo;
+ echo "The ~/.newsfeed file:";
+ echo " This file is simple csv (semicolon separated values) file which";
+ echo " store rss channels in one line. One by one. The one line";
+ echo " contains: name and URL of rss feed. For example:";
+ echo;
+ echo " News Feed;https://newsfeed.example.org/rss";
+}
+if [ ! -s ~/.newsfeed ]; then
+ help;
+ exit 1;
+else
+ if [ ! "$1" ] || ([ "$1" != "--list" ] && \
+ [ "$1" != "--check" ] && \
+ [ "$1" != "--show" ] && \
+ [ "$1" != "--open" ]); then
+ help;
+ exit 1;
+ fi
+ amountOfSubscriptions=$(cat ~/.newsfeed | wc -l);
+ i=1;
+ while [ $i -le $amountOfSubscriptions ]; do
+ newsfeedLine=$(sed -n "${i}p" ~/.newsfeed);
+ nameOfSubscription=$(echo $newsfeedLine | cut -d ";" -f 1);
+ rssLink=$(echo $newsfeedLine | cut -d ";" -f 2);
+ if [ "$1" ] && [ "$1" = "--list" ]; then
+ echo -e "${i}. ${nameOfSubscription}";
+ elif [ "$1" ] && [ "$1" = "--check" ]; then
+ echo -e "${i}. ${nameOfSubscription}";
+ echo -n "Getting news feed...";
+ wget $rssLink -O /tmp/new_newsfeed_${i}.xml 2>/dev/null;
+ if [ $? -eq 0 ]; then echo "[ OK ]";
+ else echo -e "\nThere is no Internet connection"; exit 1; fi
+ if [ -s /tmp/newsfeed_${i}.xml ]; then
+ amountOfNewNewses=$(diff /tmp/new_newsfeed_${i}.xml /tmp/newsfeed_${i}.xml | grep '<title>' | wc -l);
+ if [ $amountOfNewNewses -gt 0 ]; then
+ notify-send "$nameOfSubscription" "New $amountOfNewNewses newses" --icon=/usr/share/icons/rss.png;
+ j=1;
+ sleep 1;
+ while [ $j -le $amountOfNewNewses ]; do
+ news=$(diff /tmp/new_newsfeed_${i}.xml /tmp/newsfeed_${i}.xml | \
+ grep '<title>' | sed -n "${j}p" | sed 's/<title>//' | \
+ sed 's/<\/title>//' | sed 's/[<>]//' | \
+ sed 's/^[[:space:]]*//g');
+ notify-send "newsfeed" "${nameOfSubscription}: ${news}" -t 10000 --icon=/usr/share/icons/rss.png;
+ sleep 1;
+ j=$((j + 1));
+ done
+ fi
+ mv /tmp/new_newsfeed_${i}.xml /tmp/newsfeed_${i}.xml;
+ else
+ mv /tmp/new_newsfeed_${i}.xml /tmp/newsfeed_${i}.xml;
+ amountOfNews=$(grep '<title>' /tmp/newsfeed_${i}.xml | sed -n '2,$p' | wc -l);
+ if [ $amountOfNews -eq 0 ]; then
+ compressed=1;
+ amountOfNews=$(sed 's/<\/title>/\n/g' /tmp/newsfeed_${i}.xml | sed 's/<item>/\n/g' | grep '<title>' | wc -l)
+ fi
+ notify-send "$nameOfSubscription" "New $amountOfNews newses" --icon=/usr/share/icons/rss.png;
+ fi
+ fi
+ i=$((i + 1));
+ done
+ if [ "$1" ] && [ "$1" = "--show" ] && [ "$2" ] && [ $2 -gt 0 ]; then
+
+ #Parsing
+ #Thanks to the linuxhint.com for command:
+ #sed 's/^[[:space]]*//g'
+ #https://linuxhint.com/trim_string_bash
+
+ if grep -q 'CDATA' /tmp/newsfeed_${2}.xml; then
+ #sed 's/<\/title>/\n/g' /tmp/newsfeed_${2}.xml | \
+ #sed 's/<item>/\n/g' | grep '<title>' | sed -n '2,$p' | \
+ #sed 's/<title>//' | sed 's/"/"/g' | \
+ #sed 's/<!\[CDATA\[//g' | sed 's/\]\]>//g' | \
+ #sed 's/^[[:space:]]*//g' | nl | less;
+ grep -e '<title>' -e '<description>' /tmp/newsfeed_${2}.xml |\
+ sed -n '3,$p' | sed -e 's/<title>//g' -e 's/<description>/>>>/g' |\
+ sed 's/&#[0-9]*;//g' | \
+ sed 's/"//g' | sed -e 's/<!\[CDATA\[//g' -e 's/\]\]>//g' |\
+ sed -e 's/<img.*br\/>/<obrazek>/g' -e 's/^[[:space:]]*//g' \
+ -e 's/<\/description>/\n/g' -e 's/<\/title>//g' | nl -b p^[[:alnum:]] | less
+ else
+ sed 's/<\/title>/\n/g' /tmp/newsfeed_${2}.xml | \
+ sed 's/<item>/\n/g' | grep '<title>' | sed -n '2,$p' | \
+ sed 's/<title>//' | sed 's/"/"/g' | \
+ sed 's/^[[:space:]]*//g' | nl | less;
+ fi
+ echo $2 > /tmp/lastShowedNewsFeed;
+ elif [ "$1" ] && [ "$1" = "--open" ] && [ "$2" ] && [ $2 -gt 0 ]; then
+ subscriptionNumber=$(cat /tmp/lastShowedNewsFeed);
+ if ! grep -q 'CDATA' /tmp/newsfeed_${subscriptionNumber}.xml; then
+ link=$(sed 's/<\/link>/\n/g' /tmp/newsfeed_${subscriptionNumber}.xml | sed 's/<\/title>/\n/g' | grep '<link>' | sed -n '2,$p' | sed 's/<link>//g' | sed -n "${2}p")
+ else
+ link=$(sed 's/<\/link>/\n/g' /tmp/newsfeed_${subscriptionNumber}.xml | sed 's/<\/description>/\n/g' | grep '<link>' | sed -n '2,$p' | sed 's/<link>//g' | sed -n "${2}p")
+ fi
+ exo-open --launch WebBrowser "$link";
+ fi
+fi
--- /dev/null
+#!/bin/bash
+
+if [ "$1" ] && [ $1 = "--video" ]; then
+ video=1;
+ shift;
+ if [ $# -gt 1 ]; then format="--ytdl-format=$1"; shift; file=$1;
+ else format="--ytdl-forma=best"; file=$1; fi
+else
+ file=$1;
+fi
+
+function help() {
+ echo "pl - Play Links. Skrypt to odtwarzania multimediów z listy linków";
+ echo "morketsmerke.org; COPYLEFT; 2023";
+ echo;
+ echo "Opcje:";
+ echo;
+ echo -e "\t--video [format] - możliwość odtwarzania linków jako filmów. Format";
+ echo -e "\tjest opcjonalny, w przypadku jego braku, domyślnym formatem jest";
+ echo -e "\t'best'.";
+ echo;
+ echo "Użycie:";
+ echo -e "\t$ pl sciezka/do/listy/linkow";
+ echo;
+ echo "Format listy:";
+ echo -e "\tnazwa linku: https://youtube.com/...";
+}
+if [ "$1" ]; then
+ PS3="Link: ";
+ linkNames=$(cut -d ":" -f 1 $1 | sed 's/\ /_/g' | awk '{printf $1" "}')
+ select name in $linkNames; do
+ if [ "$MPVPID" ]; then kill $MPVPID; fi
+ if [ ! "$name" ]; then break; fi
+ link=$(grep "$name" $file | cut -d ":" -f 2-);
+ if [ ! "$link" ]; then
+ linkName=$(echo $name | sed 's/_/\ /g');
+ link=$(grep "$linkName" $file | cut -d ":" -f 2-);
+ fi
+ if echo $link | grep -q "youtube"; then
+ if [ "$video" ]; then
+ #ytplay -v $link -f $format
+ mpv $format ytdl://$link > /dev/null 2>&1 & MPVPID=$!
+ else
+ #ytplay -a $link -f best[height=360]
+ format="--no-video --ytdl-format=best[height=360]";
+ mpv $format ytdl://$link > /dev/null 2>&1 & MPVPID=$!
+ fi
+ else
+ mpv --no-video $link > /tmp/pl.log 2>&1 & MPVPID=$!;
+ tail -f /tmp/pl.log | grep "icy-title" &
+ fi
+ #echo "MPV: $MPVPID";
+ done
+else
+ help;
+ exit 1;
+fi
--- /dev/null
+#!/bin/bash
+
+GREEN="\e[32m";
+YELLOW="\e[33m";
+ENDCOLOR="\e[0m";
+
+function help() {
+ echo "create_media - script used for write iso image to usb drive(mainly)";
+ echo "morketsmerke.net COPYLEFT @ 2022";
+ echo "Options:";
+ echo " --i386-efi - creating 32-bit EFI usb drive with iso image";
+ echo " (comapatible with immudex only iso images)";
+ echo " --nuke - write 0 to 1st megabyte of disk";
+ echo "Usage:";
+ echo " $ create_media [--i386-efi] [--nuke] <usb_disk> [iso_image]";
+}
+
+if [ "$1" ] && [ "$1" = "--i386-efi" ]; then target="i386-efi"; shift; fi
+if [ "$1" ] && [ "$1" = "--nuke" ]; then target="nuke"; shift; fi
+if [ "$1" ] && echo $1 | grep -Eq '/dev/(sd[a-z]|vd[a-z]|mmcblk[0-9])'; then
+ disk=$1; shift;
+else
+ help;
+ exit 1;
+fi
+if [ ! "$target" ] || [ "$target" != "nuke" ]; then
+ if [ "$1" ] && file $1 | grep -q 'ISO 9660'; then
+ iso=$1;
+ else
+ help;
+ exit 1;
+ fi
+fi
+
+if [ "$target" = "i386-efi" ]; then
+ echo -n "Writing zeros to 1st megabyte on disk...";
+ sudo dd if=/dev/zero bs=1M of=$disk count=1 > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]"; fi
+
+ echo -n "Creating MS-DOS partitionig scheme on disk...";
+ sudo parted $disk mklabel msdos > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]"; fi
+
+ echo -n "Creating FAT-32 partition...";
+ sudo parted $disk mkpart primary fat32 1 100%Free > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]"; fi
+
+ echo -n "Creating VFAT filesystem on partition...";
+ sudo mkfs.vfat ${disk}1 > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]"; fi
+
+ echo -n "Creating /mnt/usb directory...";
+ sudo mkdir /mnt/usb > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]";
+ else echo -e "[${YELLOW}Directory exist!${ENDCOLOR}]"; fi
+
+ echo -n "Mounting VFAT partition on /mnt/usb...";
+ sudo mount ${disk}1 /mnt/usb > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]"; fi
+
+ echo -n "Instalation GRUB on disk...";
+ sudo grub-install --target=i386-efi --efi-directory=/mnt/usb --boot-directory=/mnt/usb/boot --bootloader-id=boot --removable > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]"; fi
+
+ echo -n "Creating /mnt/iso directory...";
+ sudo mkdir /mnt/iso > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]";
+ else echo -e "[${YELLOW}Directory exist!${ENDCOLOR}]"; fi
+
+ echo -n "Mounting iso file on /mnt/iso...";
+ sudo mount $iso /mnt/iso > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]"; fi
+
+ echo -n "Copying grub config files to the disk...";
+ sudo cp /mnt/iso/boot/grub/font.pf2 /mnt/usb/boot/grub > /dev/null 2>&1;
+ sudo cp /mnt/iso/boot/grub/grub.cfg /mnt/usb/boot/grub > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]"; fi
+
+ echo -n "Copying immudex files to the disk...";
+ sudo cp -r /mnt/iso/live /mnt/usb > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]"; fi
+
+ echo -n "Creating empty DEBIAN file...";
+ sudo touch /mnt/usb/DEBIAN > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]"; fi
+
+ echo -n "Umounting all mounted filesystems...";
+ sudo umount /mnt/* > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]"; fi
+
+elif [ "$target" = "nuke" ]; then
+ echo -n "Writing zeros to 1st megabyte on disk...";
+ sudo dd if=/dev/zero bs=1M of=$disk count=1 > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]"; fi
+
+else
+ echo -n "Writing zeros to 1st megabyte on disk...";
+ sudo dd if=/dev/zero bs=1M of=$disk count=1 > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]"; fi
+
+ echo -n "Writing iso image to the disk..."
+ sudo dd if=$iso bs=1M of=$disk > /dev/null 2>&1;
+ if [ $? -eq 0 ]; then echo -e "[${GREEN}OK${ENDCOLOR}]"; fi
+fi
--- /dev/null
+#!/bin/bash
+
+bootID=$(sed 's/-//g' /proc/sys/kernel/random/boot_id | cut -c 26-33);
+if hostnamectl > /dev/null 2>&1; then
+ hName="$(hostnamectl | grep 'Chassis' | cut -d ":" -f 2 | awk '{printf $1}')-${bootID}";
+else
+ hName="$(sudo dmidecode -s chassis-type | head -1 | tr [A-Z] [a-z])-${bootID}";
+fi
+
+sudo hostnamectl set-hostname $hName;
+sudo sed -i "s/immudex/${hName}/g" /etc/hosts;
+echo $hName | sudo tee /etc/hostname > /dev/null;
--- /dev/null
+#!/bin/bash
+
+if [ "$1" ] && [ $1 = "--video" ]; then
+ video=1;
+ shift;
+ if [ $# -gt 1 ]; then format="--ytdl-format=$1"; shift; file=$1;
+ else format="--ytdl-forma=best"; file=$1; fi
+else
+ file=$1;
+fi
+
+function help() {
+ echo "pl - Play Links. Skrypt to odtwarzania multimediów z listy linków";
+ echo "morketsmerke.org; COPYLEFT; 2023";
+ echo;
+ echo "Opcje:";
+ echo;
+ echo -e "\t--video [format] - możliwość odtwarzania linków jako filmów. Format";
+ echo -e "\tjest opcjonalny, w przypadku jego braku, domyślnym formatem jest";
+ echo -e "\t'best'.";
+ echo;
+ echo "Użycie:";
+ echo -e "\t$ pl sciezka/do/listy/linkow";
+ echo;
+ echo "Format listy:";
+ echo -e "\tnazwa linku: https://youtube.com/...";
+}
+if [ "$1" ]; then
+ PS3="Link: ";
+ linkNames=$(cut -d ":" -f 1 $1 | sed 's/\ /_/g' | awk '{printf $1" "}')
+ select name in $linkNames; do
+ if [ "$MPVPID" ]; then kill $MPVPID; fi
+ if [ ! "$name" ]; then break; fi
+ link=$(grep "$name" $file | cut -d ":" -f 2-);
+ if [ ! "$link" ]; then
+ linkName=$(echo $name | sed 's/_/\ /g');
+ link=$(grep "$linkName" $file | cut -d ":" -f 2-);
+ fi
+ if echo $link | grep -q "youtube"; then
+ link=$(echo $link | sed 's/\ //g');
+ if [ "$video" ]; then
+ #ytplay -v $link -f $format
+ mpv $format ytdl://$link > /dev/null 2>&1 & MPVPID=$!
+ else
+ #ytplay -a $link -f best[height=360]
+ format="--no-video --ytdl-format=best[height=360]";
+ mpv $format ytdl://$link > /dev/null 2>&1 & MPVPID=$!
+ fi
+ else
+ mpv --no-video $link > /tmp/pl.log 2>&1 & MPVPID=$!;
+ tail -f /tmp/pl.log | grep "icy-title" &
+ fi
+ #echo "MPV: $MPVPID";
+ done
+else
+ help;
+ exit 1;
+fi
--- /dev/null
+#!/bin/bash
+
+function help() {
+ echo 'idle-cli - Inter-Distribution Linux Environment CLI';
+ echo '@ 2023 morketsmerke.org';
+ echo;
+ echo "Options:";
+ echo " list-distros - listing available containers with Linux distros on this server";
+ echo " shell <distro_name> - bring up the shell of given distro";
+ echo " check-commmand <distro_name> <command> - verify is given command exists in given distro";
+ echo " apropos <distro_name> <keywords> - finds commmands match to given keywords";
+ echo " pkgsearch <distro_name> <package> - check is given package is ready to install in given distro";
+ echo;
+ echo "<distro_name> - pointing only one distro, but you can use also:"
+ echo " <group>:";
+ echo " --deb - .deb packages using distros (debian,kali,ubuntu)";
+ echo " --rpm - .rpm packages using distros (fedora,rocky,opensuse)";
+ echo " --other - other distros don't match to above (alpine,archlinux,gentoo,void)";
+ echo " or <--all> - all 10 available distros (warning, output could be large, use some of pager)";
+ echo;
+ echo 'Usage:';
+ echo ' $ idle-clic list-distros';
+ echo ' $ idle-clic shell rocky';
+ echo ' $ idle-clic check-command netstat';
+ echo ' $ idle-clic apropos zip';
+ echo ' $ idle-clic pkgsearch "intel sound"';
+ echo;
+ echo 'IDLE Configuration:';
+ echo 'In ~/.idle/.idle.conf file (example of this file: /usr/share/idle/idle.conf)';
+ echo ' RUSER="user";';
+ echo ' IDLESERVER="idle.example.org";';
+ echo ' SSH_OPTS="-p 10022 -i ~/id_rsa"; #OPTIONAL';
+}
+
+if [ -f ~/.idle/idle.conf ]; then
+ source ~/.idle/idle.conf;
+ echo "IDLE Server response:";
+ if echo $@ | grep -q 'shell'; then
+ ssh -t ${SSH_OPTS} ${RUSER}@${IDLESERVER} "idle-clis $@";
+ else
+ ssh ${SSH_OPTS} ${RUSER}@${IDLESERVER} "idle-clis $@";
+ fi
+ if [ $? -eq 1 ]; then help; exit 1; fi
+else
+ echo "There is no IDLE config file. Exiting...";
+ help;
+ exit 1;
+fi
--- /dev/null
+#!/bin/bash
+
+GREEN="\e[32m";
+RED="\e[31m";
+ENDCOLOR="\e[0m";
+
+if [ "$1" ] && [ $1 = "--video" ]; then
+ video=1;
+ shift;
+ if [ $# -gt 1 ]; then format="--ytdl-format=$1"; shift; file=$1;
+ else format="--ytdl-forma=best"; file=$1; fi
+else
+ file=$1;
+fi
+
+function help() {
+ echo "pl - Play Links. Skrypt to odtwarzania multimediów z listy linków";
+ echo "morketsmerke.org; COPYLEFT; 2023";
+ echo;
+ echo "Opcje:";
+ echo;
+ echo -e "\t--video [format] - możliwość odtwarzania linków jako filmów. Format";
+ echo -e "\tjest opcjonalny, w przypadku jego braku, domyślnym formatem jest";
+ echo -e "\t'best'.";
+ echo;
+ echo "Użycie:";
+ echo -e "\t$ pl sciezka/do/listy/linkow";
+ echo;
+ echo "Format listy:";
+ echo -e "\tnazwa linku: https://youtube.com/...";
+}
+
+if echo $file | grep -q 'http'; then
+ echo -n "Getting link list...";
+ wget -q $file -O /tmp/playlist.txt;
+ if [ $? -eq 0 ]; then
+ echo -e "[ ${GREEN}OK${ENDCOLOR} ]";
+ file="/tmp/playlist.txt";
+ else
+ echo -e "[ ${RED}FAIL${ENDCOLOR} ]";
+ help;
+ exit 1;
+ fi
+fi
+
+if [ "$file" ]; then
+ PS3="Link: ";
+ linkNames=$(cut -d ":" -f 1 $file | sed 's/\ /_/g' | awk '{printf $1" "}')
+ select name in $linkNames; do
+ if [ "$MPVPID" ]; then kill $MPVPID; fi
+ if [ ! "$name" ]; then break; fi
+ link=$(grep "$name" $file | cut -d ":" -f 2-);
+ if [ ! "$link" ]; then
+ linkName=$(echo $name | sed 's/_/\ /g');
+ link=$(grep "$linkName" $file | cut -d ":" -f 2-);
+ fi
+ if echo $link | grep -q "youtube"; then
+ link=$(echo $link | sed 's/\ //g');
+ if [ "$video" ]; then
+ #ytplay -v $link -f $format
+ mpv $format ytdl://$link > /dev/null 2>&1 & MPVPID=$!
+ else
+ #ytplay -a $link -f best[height=360]
+ format="--no-video --ytdl-format=best[height=360]";
+ mpv $format ytdl://$link > /dev/null 2>&1 & MPVPID=$!
+ fi
+ else
+ mpv --no-video $link > /tmp/pl.log 2>&1 & MPVPID=$!;
+ tail -f /tmp/pl.log | grep "icy-title" &
+ fi
+ #echo "MPV: $MPVPID";
+ done
+else
+ help;
+ exit 1;
+fi
+
+if [ -f /tmp/playlist.txt ]; then
+ rm /tmp/playlist.txt;
+fi
sudo cat > base_chroot.sh <<EOF
dhclient;
cd;
-if [ -x /usr/bin/git ]; then GIT_SSH_COMMAND="ssh -p 2022" git clone ssh://git@searx.morketsmerke.org/~/immudex.git
-else apt install git -y && GIT_SSH_COMMAND="ssh -p 2022" git clone ssh://git@searx.morketsmerke.org/~/immudex.git;
+if [ -x /usr/bin/git ]; then git clone https://github.com/xf0r3m/immudex
+else apt install git -y && git clone https://github.com/xf0r3m/immudex
fi
export VERSION=$VERSION;
--- /dev/null
+#!/bin/bash
+
+dhclient;
+cd
+if [ -x /usr/bin/git ]; then git clone https://github.com/xf0r3m/immudex.git;
+else apt install git && git clone https://github.com/xf0r3m/immudex.git;
+fi
+source ~/immudex/versions/template.sh;
+
+update_packages;
+install_packages mutt;
+
+cp -vv ~/immudex/tools/${VERSION}/immudex_branch /usr/local/bin;
+cp -vv ~/immudex/tools/${VERSION}/import_gpgkeys /usr/local/bin;
+cp -vv ~/immudex/tools/${VERSION}/library.sh /usr/local/bin;
+cp -vv ~/immudex/tools/${VERSION}/immudex_hostname /usr/local/bin;
+cp -vv ~/immudex/tools/${VERSION}/newsfeed /usr/local/bin;
+cp -vv ~/immudex/tools/${VERSION}/pl /usr/local/bin;
+
+apt remove -y thunderbird;
+rm -vf /etc/skel/Pulpit/Klient\ poczty\ Thunderbird.desktop;
+rm -vf /usr/local/bin/run-thunderbird;
+recreate_users;
+
+set_mime;
+
+tidy;
+
--- /dev/null
+#!/bin/bash
+
+dhclient;
+cd
+if [ -x /usr/bin/git ]; then git clone https://github.com/xf0r3m/immudex.git;
+else apt install git && git clone https://github.com/xf0r3m/immudex.git;
+fi
+source ~/immudex/versions/template.sh;
+
+update_packages;
+
+cp -vv ~/immudex/tools/${VERSION}/create_media /usr/local/bin;
+cp -vv ~/immudex/tools/${VERSION}/pl /usr/local/bin;
+cp -vv ~/immudex/tools/${VERSION}/immudex_hostname /usr/local/bin;
+
+cp -vv ~/immudex/files/${VERSION}/xfce4-keyboard-shortcuts.xml /etc/skel/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml;
+cp -vv ~/immudex/files/${VERSION}/whiskermenu-1.rc /etc/skel/.config/xfce4/panel;
+recreate_users;
+
+set_default_wallpaper altai_1920x1080.png;
+
+set_mime;
+
+tidy;
+
--- /dev/null
+#!/bin/bash
+
+dhclient;
+cd
+if [ -x /usr/bin/git ]; then git clone https://github.com/xf0r3m/immudex.git;
+else apt install git && git clone https://github.com/xf0r3m/immudex.git;
+fi
+source ~/immudex/versions/template.sh;
+
+update_packages;
+apt purge -y xpra;
+
+cp -vv ~/immudex/tools/${VERSION}/pl /usr/local/bin;
+cp -vv ~/immudex/tools/${VERSION}/idle-clic /usr/local/bin;
+
+wget https://github.com/yt-dlp/yt-dlp/releases/download/2023.07.06/yt-dlp -O /usr/bin/yt-dlp;
+
+cp -vv ~/immudex/files/${VERSION}/xfce4-keyboard-shortcuts.xml /etc/skel/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml;
+cp -vv ~/immudex/files/${VERSION}/xfwm4.xml /etc/skel/.config/xfce4/xfconf/xfce-perchannel-xml;
+
+recreate_users;
+
+set_mime;
+
+tidy;
+
--- /dev/null
+#!/bin/bash
+
+ARCH=$(dpkg --print-architecture);
+dhclient;
+cd
+if [ -x /usr/bin/git ]; then git clone https://github.com/xf0r3m/immudex.git;
+else apt install git && git clone https://github.com/xf0r3m/immudex.git;
+fi
+source ~/immudex/versions/template.sh;
+
+update_packages;
+
+if [ $ARCH = "amd64" ]; then
+ wget https://ftp.morketsmerke.org/immudex/stable/software/librewolf/librewolf-117.0-1.en-US.linux-x86_64.tar.bz2;
+ tar -xf librewolf-117.0-1.en-US.linux-x86_64.tar.bz2 -C /usr/lib;
+ rm librewolf-117.0-1.en-US.linux-x86_64.tar.bz2;
+else
+ wget https://ftp.morketsmerke.org/immudex/stable/software/librewolf/librewolf-117.0-1.en-US.linux-i686.tar.bz2;
+ tar -xf librewolf-117.0-1.en-US.linux-i686.tar.bz2 -C /usr/lib;
+ rm librewolf-117.0-1.en-US.linux-i686.tar.bz2;
+fi
+ln -s /usr/lib/librewolf/librewolf /usr/bin/librewolf;
+
+cp -vv ~/immudex/files/${VERSION}/LibreWolf\ \(Firejailed\).desktop /etc/skel/Pulpit;
+rm -v /etc/skel/Pulpit/Frefox.desktop;
+
+recreate_users;
+
+set_mime;
+
+tidy;
+
apt install $@ -y;
}
+function set_notifier_packages() {
+ cp -vv ~/immudex/files/Notifier\ -\ packages.desktop /home/xf0r3m/.config/autostart;
+ chown xf0r3m:xf0r3m /home/xf0r3m/.config/autostart/Notifier\ -\ packages.desktop;
+}
+
+function set_xfce4_notes_autostart() {
+ cp -vv ~/immudex/files/autostart-x4notes.desktop /home/xf0r3m/.config/autostart;
+ chown xf0r3m:xf0r3m /home/xf0r3m/.config/autostart/autostart-x4notes.desktop;
+}
+
function recreate_users() {
userdel -r user;
userdel -r xf0r3m;
cp -rvv /etc/skel/.??* /home/user;
cp -rvv /etc/skel/?* /home/user;
mkdir /home/user/.local;
- tar -xvf ~/immudex/files/${VERSION}/local_user.tar -C /home/user/.local;
+ tar -xvf ~/immudex/files/local_user.tar -C /home/user/.local;
rm /home/user/.face;
cp /usr/share/images/desktop-base/immudex_xfce_greeter_logo.png /home/user/.face;
chown -R user:user /home/user;
cp -rvv /etc/skel/.??* /home/xf0r3m;
cp -rvv /etc/skel/?* /home/xf0r3m;
mkdir /home/xf0r3m/.local;
- tar -xvf ~/immudex/files/${VERSION}/local_xf0r3m.tar -C /home/xf0r3m/.local;
+ tar -xvf ~/immudex/files/local_xf0r3m.tar -C /home/xf0r3m/.local;
rm /home/xf0r3m/.face;
cp /usr/share/images/desktop-base/immudex_xfce_greeter_logo.png /home/xf0r3m/.face;
chown -R xf0r3m:xf0r3m /home/xf0r3m;
echo "xf0r3m:xf0r3m1" | chpasswd;
+ set_notifier_packages;
+ set_xfce4_notes_autostart;
+
usermod -aG libvirt,libvirt-qemu xf0r3m;
usermod -aG libvirt,libvirt-qemu user;
ln -s /usr/share/images/desktop-base/$1 /usr/share/images/desktop-base/default;
}
-function set_notifier_packages() {
- cp -vv ~/immudex/files/${VERSION}/Notifier\ -\ packages.desktop /home/xf0r3m/.config/autostart;
- chown xf0r3m:xf0r3m /home/xf0r3m/.config/autostart/Notifier\ -\ packages.desktop;
-}
-function set_xfce4_notes_autostart() {
- cp -vv ~/immudex/files/${VERSION}/autostart-x4notes.desktop /home/xf0r3m/.config/autostart;
- chown xf0r3m:xf0r3m /home/xf0r3m/.config/autostart/autostart-x4notes.desktop;
+function set_mime() {
+ cp -vv ~/immudex/files/mimeinfo.cache /usr/share/applications;
}
+export VERSION=$(echo $0 | cut -d "." -f 1);