Compare commits
No files matched your search
@@ -1,11 +0,0 @@
|
|||||||
[Desktop Entry]
|
|
||||||
Version=1.0
|
|
||||||
Name=Basecamp
|
|
||||||
Comment=Basecamp Project Management
|
|
||||||
Exec=chromium --new-window --ozone-platform=wayland --app="https://launchpad.37signals.com" --name=Basecamp --class=Basecamp
|
|
||||||
Terminal=false
|
|
||||||
Type=Application
|
|
||||||
Icon=Basecamp
|
|
||||||
Categories=GTK;
|
|
||||||
MimeType=text/html;text/xml;application/xhtml_xml;
|
|
||||||
StartupNotify=true
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
[Desktop Entry]
|
|
||||||
Version=1.0
|
|
||||||
Name=HEY
|
|
||||||
Comment=HEY Email + Calendar
|
|
||||||
Exec=chromium --new-window --ozone-platform=wayland --app="https://app.hey.com" --name=HEY --class=HEY
|
|
||||||
Terminal=false
|
|
||||||
Type=Application
|
|
||||||
Icon=HEY
|
|
||||||
Categories=GTK;
|
|
||||||
MimeType=text/html;text/xml;application/xhtml_xml;
|
|
||||||
StartupNotify=true
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
[Desktop Entry]
|
|
||||||
Name=Bluetooth
|
|
||||||
Comment=Configure Bluetooth settings
|
|
||||||
Icon=bluetooth
|
|
||||||
Exec=env GTK_THEME=Adwaita-dark blueberry
|
|
||||||
Terminal=false
|
|
||||||
Type=Application
|
|
||||||
Categories=GTK;GNOME;Settings;HardwareSettings;X-XFCE-SettingsDialog;X-XFCE-HardwareSettings;
|
|
||||||
StartupNotify=true
|
|
||||||
NotShowIn=GNOME;KDE;Unity;
|
|
||||||
@@ -0,0 +1,221 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Version=1.0
|
||||||
|
Name=Chromium
|
||||||
|
# Only KDE 4 seems to use GenericName, so we reuse the KDE strings.
|
||||||
|
# From Ubuntu's language-pack-kde-XX-base packages, version 9.04-20090413.
|
||||||
|
GenericName=Web Browser
|
||||||
|
GenericName[ar]=متصفح الشبكة
|
||||||
|
GenericName[bg]=Уеб браузър
|
||||||
|
GenericName[ca]=Navegador web
|
||||||
|
GenericName[cs]=WWW prohlížeč
|
||||||
|
GenericName[da]=Browser
|
||||||
|
GenericName[de]=Web-Browser
|
||||||
|
GenericName[el]=Περιηγητής ιστού
|
||||||
|
GenericName[en_GB]=Web Browser
|
||||||
|
GenericName[es]=Navegador web
|
||||||
|
GenericName[et]=Veebibrauser
|
||||||
|
GenericName[fi]=WWW-selain
|
||||||
|
GenericName[fr]=Navigateur Web
|
||||||
|
GenericName[gu]=વેબ બ્રાઉઝર
|
||||||
|
GenericName[he]=דפדפן אינטרנט
|
||||||
|
GenericName[hi]=वेब ब्राउज़र
|
||||||
|
GenericName[hu]=Webböngésző
|
||||||
|
GenericName[it]=Browser Web
|
||||||
|
GenericName[ja]=ウェブブラウザ
|
||||||
|
GenericName[kn]=ಜಾಲ ವೀಕ್ಷಕ
|
||||||
|
GenericName[ko]=웹 브라우저
|
||||||
|
GenericName[lt]=Žiniatinklio naršyklė
|
||||||
|
GenericName[lv]=Tīmekļa pārlūks
|
||||||
|
GenericName[ml]=വെബ് ബ്രൌസര്
|
||||||
|
GenericName[mr]=वेब ब्राऊजर
|
||||||
|
GenericName[nb]=Nettleser
|
||||||
|
GenericName[nl]=Webbrowser
|
||||||
|
GenericName[pl]=Przeglądarka WWW
|
||||||
|
GenericName[pt]=Navegador Web
|
||||||
|
GenericName[pt_BR]=Navegador da Internet
|
||||||
|
GenericName[ro]=Navigator de Internet
|
||||||
|
GenericName[ru]=Веб-браузер
|
||||||
|
GenericName[sl]=Spletni brskalnik
|
||||||
|
GenericName[sv]=Webbläsare
|
||||||
|
GenericName[ta]=இணைய உலாவி
|
||||||
|
GenericName[th]=เว็บเบราว์เซอร์
|
||||||
|
GenericName[tr]=Web Tarayıcı
|
||||||
|
GenericName[uk]=Навігатор Тенет
|
||||||
|
GenericName[zh_CN]=网页浏览器
|
||||||
|
GenericName[zh_HK]=網頁瀏覽器
|
||||||
|
GenericName[zh_TW]=網頁瀏覽器
|
||||||
|
# Not translated in KDE, from Epiphany 2.26.1-0ubuntu1.
|
||||||
|
GenericName[bn]=ওয়েব ব্রাউজার
|
||||||
|
GenericName[fil]=Web Browser
|
||||||
|
GenericName[hr]=Web preglednik
|
||||||
|
GenericName[id]=Browser Web
|
||||||
|
GenericName[or]=ଓ୍ବେବ ବ୍ରାଉଜର
|
||||||
|
GenericName[sk]=WWW prehliadač
|
||||||
|
GenericName[sr]=Интернет прегледник
|
||||||
|
GenericName[te]=మహాతల అన్వేషి
|
||||||
|
GenericName[vi]=Bộ duyệt Web
|
||||||
|
# Gnome and KDE 3 uses Comment.
|
||||||
|
Comment=Access the Internet
|
||||||
|
Comment[ar]=الدخول إلى الإنترنت
|
||||||
|
Comment[bg]=Достъп до интернет
|
||||||
|
Comment[bn]=ইন্টারনেটটি অ্যাক্সেস করুন
|
||||||
|
Comment[ca]=Accedeix a Internet
|
||||||
|
Comment[cs]=Přístup k internetu
|
||||||
|
Comment[da]=Få adgang til internettet
|
||||||
|
Comment[de]=Internetzugriff
|
||||||
|
Comment[el]=Πρόσβαση στο Διαδίκτυο
|
||||||
|
Comment[en_GB]=Access the Internet
|
||||||
|
Comment[es]=Accede a Internet.
|
||||||
|
Comment[et]=Pääs Internetti
|
||||||
|
Comment[fi]=Käytä internetiä
|
||||||
|
Comment[fil]=I-access ang Internet
|
||||||
|
Comment[fr]=Accéder à Internet
|
||||||
|
Comment[gu]=ઇંટરનેટ ઍક્સેસ કરો
|
||||||
|
Comment[he]=גישה אל האינטרנט
|
||||||
|
Comment[hi]=इंटरनेट तक पहुंच स्थापित करें
|
||||||
|
Comment[hr]=Pristup Internetu
|
||||||
|
Comment[hu]=Internetelérés
|
||||||
|
Comment[id]=Akses Internet
|
||||||
|
Comment[it]=Accesso a Internet
|
||||||
|
Comment[ja]=インターネットにアクセス
|
||||||
|
Comment[kn]=ಇಂಟರ್ನೆಟ್ ಅನ್ನು ಪ್ರವೇಶಿಸಿ
|
||||||
|
Comment[ko]=인터넷 연결
|
||||||
|
Comment[lt]=Interneto prieiga
|
||||||
|
Comment[lv]=Piekļūt internetam
|
||||||
|
Comment[ml]=ഇന്റര്നെറ്റ് ആക്സസ് ചെയ്യുക
|
||||||
|
Comment[mr]=इंटरनेटमध्ये प्रवेश करा
|
||||||
|
Comment[nb]=Gå til Internett
|
||||||
|
Comment[nl]=Verbinding maken met internet
|
||||||
|
Comment[or]=ଇଣ୍ଟର୍ନେଟ୍ ପ୍ରବେଶ କରନ୍ତୁ
|
||||||
|
Comment[pl]=Skorzystaj z internetu
|
||||||
|
Comment[pt]=Aceder à Internet
|
||||||
|
Comment[pt_BR]=Acessar a internet
|
||||||
|
Comment[ro]=Accesaţi Internetul
|
||||||
|
Comment[ru]=Доступ в Интернет
|
||||||
|
Comment[sk]=Prístup do siete Internet
|
||||||
|
Comment[sl]=Dostop do interneta
|
||||||
|
Comment[sr]=Приступите Интернету
|
||||||
|
Comment[sv]=Gå ut på Internet
|
||||||
|
Comment[ta]=இணையத்தை அணுகுதல்
|
||||||
|
Comment[te]=ఇంటర్నెట్ను ఆక్సెస్ చెయ్యండి
|
||||||
|
Comment[th]=เข้าถึงอินเทอร์เน็ต
|
||||||
|
Comment[tr]=İnternet'e erişin
|
||||||
|
Comment[uk]=Доступ до Інтернету
|
||||||
|
Comment[vi]=Truy cập Internet
|
||||||
|
Comment[zh_CN]=访问互联网
|
||||||
|
Comment[zh_HK]=連線到網際網路
|
||||||
|
Comment[zh_TW]=連線到網際網路
|
||||||
|
Exec=/usr/bin/chromium --ozone-platform=wayland %U
|
||||||
|
StartupNotify=true
|
||||||
|
Terminal=false
|
||||||
|
Icon=chromium
|
||||||
|
Type=Application
|
||||||
|
Categories=Network;WebBrowser;
|
||||||
|
MimeType=application/pdf;application/rdf+xml;application/rss+xml;application/xhtml+xml;application/xhtml_xml;application/xml;image/gif;image/jpeg;image/png;image/webp;text/html;text/xml;x-scheme-handler/http;x-scheme-handler/https;
|
||||||
|
Actions=new-window;new-private-window;
|
||||||
|
|
||||||
|
[Desktop Action new-window]
|
||||||
|
Name=New Window
|
||||||
|
Name[am]=አዲስ መስኮት
|
||||||
|
Name[ar]=نافذة جديدة
|
||||||
|
Name[bg]=Нов прозорец
|
||||||
|
Name[bn]=নতুন উইন্ডো
|
||||||
|
Name[ca]=Finestra nova
|
||||||
|
Name[cs]=Nové okno
|
||||||
|
Name[da]=Nyt vindue
|
||||||
|
Name[de]=Neues Fenster
|
||||||
|
Name[el]=Νέο Παράθυρο
|
||||||
|
Name[en_GB]=New Window
|
||||||
|
Name[es]=Nueva ventana
|
||||||
|
Name[et]=Uus aken
|
||||||
|
Name[fa]=پنجره جدید
|
||||||
|
Name[fi]=Uusi ikkuna
|
||||||
|
Name[fil]=New Window
|
||||||
|
Name[fr]=Nouvelle fenêtre
|
||||||
|
Name[gu]=નવી વિંડો
|
||||||
|
Name[hi]=नई विंडो
|
||||||
|
Name[hr]=Novi prozor
|
||||||
|
Name[hu]=Új ablak
|
||||||
|
Name[id]=Jendela Baru
|
||||||
|
Name[it]=Nuova finestra
|
||||||
|
Name[iw]=חלון חדש
|
||||||
|
Name[ja]=新規ウインドウ
|
||||||
|
Name[kn]=ಹೊಸ ವಿಂಡೊ
|
||||||
|
Name[ko]=새 창
|
||||||
|
Name[lt]=Naujas langas
|
||||||
|
Name[lv]=Jauns logs
|
||||||
|
Name[ml]=പുതിയ വിന്ഡോ
|
||||||
|
Name[mr]=नवीन विंडो
|
||||||
|
Name[nl]=Nieuw venster
|
||||||
|
Name[no]=Nytt vindu
|
||||||
|
Name[pl]=Nowe okno
|
||||||
|
Name[pt]=Nova janela
|
||||||
|
Name[pt_BR]=Nova janela
|
||||||
|
Name[ro]=Fereastră nouă
|
||||||
|
Name[ru]=Новое окно
|
||||||
|
Name[sk]=Nové okno
|
||||||
|
Name[sl]=Novo okno
|
||||||
|
Name[sr]=Нови прозор
|
||||||
|
Name[sv]=Nytt fönster
|
||||||
|
Name[sw]=Dirisha Jipya
|
||||||
|
Name[ta]=புதிய சாளரம்
|
||||||
|
Name[te]=క్రొత్త విండో
|
||||||
|
Name[th]=หน้าต่างใหม่
|
||||||
|
Name[tr]=Yeni Pencere
|
||||||
|
Name[uk]=Нове вікно
|
||||||
|
Name[vi]=Cửa sổ Mới
|
||||||
|
Name[zh_CN]=新建窗口
|
||||||
|
Name[zh_TW]=開新視窗
|
||||||
|
Exec=/usr/bin/chromium --ozone-platform=wayland --new-window
|
||||||
|
|
||||||
|
[Desktop Action new-private-window]
|
||||||
|
Name=New Incognito Window
|
||||||
|
Name[ar]=نافذة جديدة للتصفح المتخفي
|
||||||
|
Name[bg]=Нов прозорец „инкогнито“
|
||||||
|
Name[bn]=নতুন ছদ্মবেশী উইন্ডো
|
||||||
|
Name[ca]=Finestra d'incògnit nova
|
||||||
|
Name[cs]=Nové anonymní okno
|
||||||
|
Name[da]=Nyt inkognitovindue
|
||||||
|
Name[de]=Neues Inkognito-Fenster
|
||||||
|
Name[el]=Νέο παράθυρο για ανώνυμη περιήγηση
|
||||||
|
Name[en_GB]=New Incognito window
|
||||||
|
Name[es]=Nueva ventana de incógnito
|
||||||
|
Name[et]=Uus inkognito aken
|
||||||
|
Name[fa]=پنجره جدید حالت ناشناس
|
||||||
|
Name[fi]=Uusi incognito-ikkuna
|
||||||
|
Name[fil]=Bagong Incognito window
|
||||||
|
Name[fr]=Nouvelle fenêtre de navigation privée
|
||||||
|
Name[gu]=નવી છુપી વિંડો
|
||||||
|
Name[hi]=नई गुप्त विंडो
|
||||||
|
Name[hr]=Novi anoniman prozor
|
||||||
|
Name[hu]=Új Inkognitóablak
|
||||||
|
Name[id]=Jendela Penyamaran baru
|
||||||
|
Name[it]=Nuova finestra di navigazione in incognito
|
||||||
|
Name[iw]=חלון חדש לגלישה בסתר
|
||||||
|
Name[ja]=新しいシークレット ウィンドウ
|
||||||
|
Name[kn]=ಹೊಸ ಅಜ್ಞಾತ ವಿಂಡೋ
|
||||||
|
Name[ko]=새 시크릿 창
|
||||||
|
Name[lt]=Naujas inkognito langas
|
||||||
|
Name[lv]=Jauns inkognito režīma logs
|
||||||
|
Name[ml]=പുതിയ വേഷ പ്രച്ഛന്ന വിന്ഡോ
|
||||||
|
Name[mr]=नवीन गुप्त विंडो
|
||||||
|
Name[nl]=Nieuw incognitovenster
|
||||||
|
Name[no]=Nytt inkognitovindu
|
||||||
|
Name[pl]=Nowe okno incognito
|
||||||
|
Name[pt]=Nova janela de navegação anónima
|
||||||
|
Name[pt_BR]=Nova janela anônima
|
||||||
|
Name[ro]=Fereastră nouă incognito
|
||||||
|
Name[ru]=Новое окно в режиме инкогнито
|
||||||
|
Name[sk]=Nové okno inkognito
|
||||||
|
Name[sl]=Novo okno brez beleženja zgodovine
|
||||||
|
Name[sr]=Нови прозор за прегледање без архивирања
|
||||||
|
Name[sv]=Nytt inkognitofönster
|
||||||
|
Name[ta]=புதிய மறைநிலைச் சாளரம்
|
||||||
|
Name[te]=క్రొత్త అజ్ఞాత విండో
|
||||||
|
Name[th]=หน้าต่างใหม่ที่ไม่ระบุตัวตน
|
||||||
|
Name[tr]=Yeni Gizli pencere
|
||||||
|
Name[uk]=Нове вікно в режимі анонімного перегляду
|
||||||
|
Name[vi]=Cửa sổ ẩn danh mới
|
||||||
|
Name[zh_CN]=新建隐身窗口
|
||||||
|
Name[zh_TW]=新增無痕式視窗
|
||||||
|
Exec=/usr/bin/chromium --ozone-platform=wayland --new-window --incognito
|
||||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -0,0 +1,2 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Hidden=true
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 64 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 196 KiB |
@@ -0,0 +1,51 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Type=Application
|
||||||
|
Name=Media Player
|
||||||
|
Name[ar]=مشغل وسائط mpv
|
||||||
|
Name[ca]=Reproductor multimèdia mpv
|
||||||
|
Name[cs]=mpv přehrávač
|
||||||
|
Name[da]=mpv-medieafspiller
|
||||||
|
Name[fr]=Lecteur multimédia mpv
|
||||||
|
Name[it]=Lettore multimediale mpv
|
||||||
|
Name[ja]=mpv メディアプレイヤー
|
||||||
|
Name[pl]=Odtwarzacz mpv
|
||||||
|
Name[ru]=Проигрыватель mpv
|
||||||
|
Name[tr]=mpv Ortam Oynatıcı
|
||||||
|
Name[zh_CN]=mpv 媒体播放器
|
||||||
|
Name[zh_TW]=mpv 媒體播放器
|
||||||
|
GenericName=Multimedia player
|
||||||
|
GenericName[ar]=مُشَغِّل وسائط متعددة
|
||||||
|
GenericName[cs]=Multimediální přehrávač
|
||||||
|
GenericName[da]=Multimedieafspiller
|
||||||
|
GenericName[fr]=Lecteur multimédia
|
||||||
|
GenericName[it]=Lettore multimediale
|
||||||
|
GenericName[ja]=マルチメディアプレイヤー
|
||||||
|
GenericName[ru]=Мультимедийный проигрыватель
|
||||||
|
GenericName[tr]=Çoklu ortam oynatıcı
|
||||||
|
GenericName[zh_CN]=多媒体播放器
|
||||||
|
GenericName[zh_TW]=多媒體播放器
|
||||||
|
Comment=Play movies and songs
|
||||||
|
Comment[ar]=شَغِّل الأفلام والأغاني
|
||||||
|
Comment[ca]=Reproduïu vídeos i cançons
|
||||||
|
Comment[cs]=Přehrává filmy a hudbu
|
||||||
|
Comment[da]=Afspil film og sange
|
||||||
|
Comment[de]=Filme und Musik abspielen
|
||||||
|
Comment[es]=Reproduzca vídeos y canciones
|
||||||
|
Comment[fr]=Lire des vidéos et des musiques
|
||||||
|
Comment[ja]=映画や音楽を再生する
|
||||||
|
Comment[it]=Riproduci video e canzoni
|
||||||
|
Comment[pl]=Odtwarzaj filmy i muzykę
|
||||||
|
Comment[ru]=Воспроизведение фильмов и музыки
|
||||||
|
Comment[tr]=Filmleri ve şarkıları oynatın
|
||||||
|
Comment[zh_CN]=播放电影和歌曲
|
||||||
|
Comment[zh_TW]=播放電影和歌曲
|
||||||
|
Icon=mpv
|
||||||
|
TryExec=mpv
|
||||||
|
Exec=mpv --player-operation-mode=pseudo-gui -- %U
|
||||||
|
Terminal=false
|
||||||
|
Categories=AudioVideo;Audio;Video;Player;TV;
|
||||||
|
MimeType=application/ogg;application/x-ogg;application/mxf;application/sdp;application/smil;application/x-smil;application/streamingmedia;application/x-streamingmedia;application/vnd.rn-realmedia;application/vnd.rn-realmedia-vbr;audio/aac;audio/x-aac;audio/vnd.dolby.heaac.1;audio/vnd.dolby.heaac.2;audio/aiff;audio/x-aiff;audio/m4a;audio/x-m4a;application/x-extension-m4a;audio/mp1;audio/x-mp1;audio/mp2;audio/x-mp2;audio/mp3;audio/x-mp3;audio/mpeg;audio/mpeg2;audio/mpeg3;audio/mpegurl;audio/x-mpegurl;audio/mpg;audio/x-mpg;audio/rn-mpeg;audio/musepack;audio/x-musepack;audio/ogg;audio/scpls;audio/x-scpls;audio/vnd.rn-realaudio;audio/wav;audio/x-pn-wav;audio/x-pn-windows-pcm;audio/x-realaudio;audio/x-pn-realaudio;audio/x-ms-wma;audio/x-pls;audio/x-wav;video/mpeg;video/x-mpeg2;video/x-mpeg3;video/mp4v-es;video/x-m4v;video/mp4;application/x-extension-mp4;video/divx;video/vnd.divx;video/msvideo;video/x-msvideo;video/ogg;video/quicktime;video/vnd.rn-realvideo;video/x-ms-afs;video/x-ms-asf;audio/x-ms-asf;application/vnd.ms-asf;video/x-ms-wmv;video/x-ms-wmx;video/x-ms-wvxvideo;video/x-avi;video/avi;video/x-flic;video/fli;video/x-flc;video/flv;video/x-flv;video/x-theora;video/x-theora+ogg;video/x-matroska;video/mkv;audio/x-matroska;application/x-matroska;video/webm;audio/webm;audio/vorbis;audio/x-vorbis;audio/x-vorbis+ogg;video/x-ogm;video/x-ogm+ogg;application/x-ogm;application/x-ogm-audio;application/x-ogm-video;application/x-shorten;audio/x-shorten;audio/x-ape;audio/x-wavpack;audio/x-tta;audio/AMR;audio/ac3;audio/eac3;audio/amr-wb;video/mp2t;audio/flac;audio/mp4;application/x-mpegurl;video/vnd.mpegurl;application/vnd.apple.mpegurl;audio/x-pn-au;video/3gp;video/3gpp;video/3gpp2;audio/3gpp;audio/3gpp2;video/dv;audio/dv;audio/opus;audio/vnd.dts;audio/vnd.dts.hd;audio/x-adpcm;application/x-cue;audio/m3u;audio/vnd.wave;video/vnd.avi;
|
||||||
|
X-KDE-Protocols=appending,file,ftp,hls,http,https,mms,mpv,rtmp,rtmps,rtmpt,rtmpts,rtp,rtsp,rtsps,sftp,srt,srtp,webdav,webdavs
|
||||||
|
StartupWMClass=mpv
|
||||||
|
Keywords=mpv;media;player;video;audio;tv;
|
||||||
|
Keywords[ar]=mpv;إم بي في;ام بي في;وسائط;مشغل;فيديو;مرئية;صوتي;تلفاز;
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
Name=Neovim
|
Name=Neovim
|
||||||
GenericName=Text Editor
|
GenericName=Text Editor
|
||||||
Comment=Edit text files
|
Comment=Edit text files
|
||||||
Exec=alacritty -e nvim -- %F
|
Exec=alacritty --class=nvim --title=nvim -e nvim -- %F
|
||||||
Terminal=false
|
Terminal=false
|
||||||
Type=Application
|
Type=Application
|
||||||
Keywords=Text;editor;
|
Keywords=Text;editor;
|
||||||
|
|||||||
@@ -1,10 +0,0 @@
|
|||||||
[Desktop Entry]
|
|
||||||
Version=1.0
|
|
||||||
Name=Volume Control
|
|
||||||
Comment=Adjust the volume level
|
|
||||||
Exec=env GTK_THEME=Adwaita-dark pavucontrol
|
|
||||||
Icon=multimedia-volume-control
|
|
||||||
StartupNotify=true
|
|
||||||
Type=Application
|
|
||||||
Categories=AudioVideo;Audio;Mixer;GTK;Settings;X-XFCE-SettingsDialog;X-XFCE-HardwareSettings;
|
|
||||||
Keywords=pavucontrol;PulseAudio;Microphone;Volume;Fade;Balance;Headset;Speakers;Headphones;Audio;Mixer;Output;Input;Devices;Playback;Recording;System Sounds;Sound Card;Settings;Preferences;
|
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Name=Audio Settings
|
||||||
|
Comment=Using Wiremix
|
||||||
|
Exec=alacritty --class=Wiremix --title=Wiremix -e wiremix
|
||||||
|
Icon=audio-card
|
||||||
|
Type=Application
|
||||||
|
Terminal=false
|
||||||
File renamed without changes.
@@ -0,0 +1,2 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Hidden=true
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Name=Typora
|
||||||
|
GenericName=Markdown Editor
|
||||||
|
Exec=typora --enable-wayland-ime %U
|
||||||
|
Icon=typora
|
||||||
|
Type=Application
|
||||||
|
StartupNotify=true
|
||||||
|
Categories=Office;WordProcessor;
|
||||||
|
MimeType=text/markdown;text/x-markdown;
|
||||||
|
|
||||||
Executable
+30
@@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Designed to be run by systemd timer every 30 seconds and alerts if battery is low
|
||||||
|
|
||||||
|
BATTERY_THRESHOLD=10
|
||||||
|
NOTIFICATION_FLAG="/run/user/$UID/omarchy_battery_notified"
|
||||||
|
|
||||||
|
get_battery_percentage() {
|
||||||
|
upower -i $(upower -e | grep 'BAT') | grep -E "percentage" | grep -o '[0-9]\+%' | sed 's/%//'
|
||||||
|
}
|
||||||
|
|
||||||
|
get_battery_state() {
|
||||||
|
upower -i $(upower -e | grep 'BAT') | grep -E "state" | awk '{print $2}'
|
||||||
|
}
|
||||||
|
|
||||||
|
send_notification() {
|
||||||
|
notify-send -u critical " Time to recharge!" "Battery is down to ${1}%" -i battery-caution -t 30000
|
||||||
|
}
|
||||||
|
|
||||||
|
BATTERY_LEVEL=$(get_battery_percentage)
|
||||||
|
BATTERY_STATE=$(get_battery_state)
|
||||||
|
|
||||||
|
if [[ "$BATTERY_STATE" == "discharging" && "$BATTERY_LEVEL" -le "$BATTERY_THRESHOLD" ]]; then
|
||||||
|
if [[ ! -f "$NOTIFICATION_FLAG" ]]; then
|
||||||
|
send_notification "$BATTERY_LEVEL"
|
||||||
|
touch "$NOTIFICATION_FLAG"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
rm -f "$NOTIFICATION_FLAG"
|
||||||
|
fi
|
||||||
File renamed without changes.
Executable
+32
@@ -0,0 +1,32 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
[[ -f ~/.config/user-dirs.dirs ]] && source ~/.config/user-dirs.dirs
|
||||||
|
OUTPUT_DIR="${OMARCHY_SCREENRECORD_DIR:-${XDG_VIDEOS_DIR:-$HOME/Videos}}"
|
||||||
|
|
||||||
|
if [[ ! -d "$OUTPUT_DIR" ]]; then
|
||||||
|
notify-send "Screen recording directory does not exist: $OUTPUT_DIR" -u critical -t 3000
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
screenrecording() {
|
||||||
|
filename="$OUTPUT_DIR/screenrecording-$(date +'%Y-%m-%d_%H-%M-%S').mp4"
|
||||||
|
notify-send "Screen recording starting..." -t 1000
|
||||||
|
sleep 1
|
||||||
|
|
||||||
|
if lspci | grep -qi 'nvidia'; then
|
||||||
|
wf-recorder -f "$filename" -c libx264 -p crf=23 -p preset=medium -p movflags=+faststart "$@"
|
||||||
|
else
|
||||||
|
wl-screenrec -f "$filename" --ffmpeg-encoder-options="-c:v libx264 -crf 23 -preset medium -movflags +faststart" "$@"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
if pgrep -x wl-screenrec >/dev/null || pgrep -x wf-recorder >/dev/null; then
|
||||||
|
pkill -x wl-screenrec
|
||||||
|
pkill -x wf-recorder
|
||||||
|
notify-send "Screen recording saved to $OUTPUT_DIR" -t 2000
|
||||||
|
elif [[ "$1" == "output" ]]; then
|
||||||
|
screenrecording
|
||||||
|
else
|
||||||
|
region=$(slurp) || exit 1
|
||||||
|
screenrecording -g "$region"
|
||||||
|
fi
|
||||||
Executable
+20
@@ -0,0 +1,20 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if command -v tte &>/dev/null; then
|
||||||
|
while true; do
|
||||||
|
effect=$(tte 2>&1 | grep -oP '{\K[^}]+' | tr ',' ' ' | tr ' ' '\n' | sed -n '/^beams$/,$p' | sort -u | shuf -n1)
|
||||||
|
tte -i ~/.local/share/omarchy/logo.txt \
|
||||||
|
--frame-rate 240 --canvas-width 0 --canvas-height $(($(tput lines) - 2)) --anchor-canvas c --anchor-text c \
|
||||||
|
"$effect" &
|
||||||
|
|
||||||
|
while pgrep tte >/dev/null; do
|
||||||
|
if read -n 1 -t 0.01; then
|
||||||
|
pkill tte 2>/dev/null
|
||||||
|
pkill -f "alacritty --class Screensaver" 2>/dev/null
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
else
|
||||||
|
gum spin --title "Can't find tte. Try: pip install terminaltexteffects" -- sleep 2
|
||||||
|
fi
|
||||||
Executable
+17
@@ -0,0 +1,17 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
[[ -f ~/.config/user-dirs.dirs ]] && source ~/.config/user-dirs.dirs
|
||||||
|
OUTPUT_DIR="${OMARCHY_SCREENSHOT_DIR:-${XDG_PICTURES_DIR:-$HOME/Pictures}}"
|
||||||
|
|
||||||
|
if [[ ! -d "$OUTPUT_DIR" ]]; then
|
||||||
|
notify-send "Screenshot directory does not exist: $OUTPUT_DIR" -u critical -t 3000
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
pkill slurp || hyprshot -m ${1:-region} --raw |
|
||||||
|
satty --filename - \
|
||||||
|
--output-filename "$OUTPUT_DIR/screenshot-$(date +'%Y-%m-%d_%H-%M-%S').png" \
|
||||||
|
--early-exit \
|
||||||
|
--actions-on-enter save-to-clipboard \
|
||||||
|
--save-after-copy \
|
||||||
|
--copy-command 'wl-copy'
|
||||||
Executable
+5
@@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
sudo tzupdate
|
||||||
|
new_timezone=$(timedatectl show -p Timezone --value)
|
||||||
|
notify-send "Timezone has been set to $new_timezone"
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Link all the key config files to omarchy's internal versions for quicker testing
|
|
||||||
ln -nsf ~/.local/share/omarchy/config/hypr/hyprland.conf ~/.config/hypr/
|
|
||||||
ln -nsf ~/.local/share/omarchy/config/hypr/hypridle.conf ~/.config/hypr/
|
|
||||||
ln -nsf ~/.local/share/omarchy/config/waybar/config ~/.config/waybar/
|
|
||||||
ln -nsf ~/.local/share/omarchy/config/wofi/config ~/.config/wofi/
|
|
||||||
Executable
+6
@@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
cd ~/.local/share/omarchy
|
||||||
|
migration_file="$HOME/.local/share/omarchy/migrations/$(git log -1 --format=%cd --date=unix).sh"
|
||||||
|
touch $migration_file
|
||||||
|
nvim $migration_file
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
yay -S --noconfirm --needed fprint
|
|
||||||
|
|
||||||
echo -e "\e[32m\nLet's setup your right index finger as the first fingerprint.\nKeep moving the finger around on sensor until the process completes.\n\e[0m"
|
|
||||||
sudo fprintd-enroll `whoami`
|
|
||||||
|
|
||||||
echo -e "\e[32m\nNow let's verify that it's working correctly.\e[0m\n"
|
|
||||||
|
|
||||||
if fprintd-verify; then
|
|
||||||
echo -e "\e[32m\nPerfect! Now you can use your fingerprint on the lock screen (Super + Escape).\e[0m"
|
|
||||||
else
|
|
||||||
echo -e "\e[31m\nSomething went wrong. Maybe try again?\e[0m"
|
|
||||||
fi
|
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
fc-list :spacing=100 -f "%{family[0]}\n" | grep -v -i -E 'emoji|signwriting' | sort -u
|
||||||
Executable
+23
@@ -0,0 +1,23 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
font_name="$1"
|
||||||
|
|
||||||
|
if [[ -n "$font_name" && "$font_name" != "CNCLD" ]]; then
|
||||||
|
if fc-list | grep -iq "$font_name"; then
|
||||||
|
sed -i "s/family = \".*\"/family = \"$font_name\"/g" ~/.config/alacritty/alacritty.toml
|
||||||
|
sed -i "s/font-family: .*/font-family: $font_name;/g" ~/.config/waybar/style.css
|
||||||
|
sed -i "s/font-family: .*/font-family: $font_name;/g" ~/.config/swayosd/style.css
|
||||||
|
xmlstarlet ed -L \
|
||||||
|
-u '//match[@target="pattern"][test/string="monospace"]/edit[@name="family"]/string' \
|
||||||
|
-v "$font_name" \
|
||||||
|
~/.config/fontconfig/fonts.conf
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-restart-waybar
|
||||||
|
~/.local/share/omarchy/bin/omarchy-restart-swayosd
|
||||||
|
else
|
||||||
|
echo "Font '$font_name' not found."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "Usage: omarchy-font-set <font-name>"
|
||||||
|
fi
|
||||||
Executable
+16
@@ -0,0 +1,16 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Exit early if screensave is already running
|
||||||
|
pgrep -f "alacritty --class Screensaver" && exit 0
|
||||||
|
|
||||||
|
focused=$(hyprctl monitors -j | jq -r '.[] | select(.focused == true).name')
|
||||||
|
|
||||||
|
for m in $(hyprctl monitors -j | jq -r '.[] | .name'); do
|
||||||
|
hyprctl dispatch focusmonitor $m
|
||||||
|
hyprctl dispatch exec -- \
|
||||||
|
alacritty --class Screensaver \
|
||||||
|
--config-file ~/.local/share/omarchy/default/alacritty/screensaver.toml \
|
||||||
|
-e ~/.local/share/omarchy/bin/omarchy-cmd-screensaver
|
||||||
|
done
|
||||||
|
|
||||||
|
hyprctl dispatch focusmonitor $focused
|
||||||
Executable
+258
@@ -0,0 +1,258 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
OMARCHY_BIN_PATH=~/.local/share/omarchy/bin
|
||||||
|
|
||||||
|
menu() {
|
||||||
|
echo -e "$2" | walker --dmenu --theme dmenu_250 -p "$1…" $3
|
||||||
|
}
|
||||||
|
|
||||||
|
terminal() {
|
||||||
|
alacritty --class Omarchy -e $1
|
||||||
|
}
|
||||||
|
|
||||||
|
present_terminal() {
|
||||||
|
alacritty --class Omarchy -e bash -c "~/.local/share/omarchy/bin/omarchy-show-logo; eval \"$1\"; ~/.local/share/omarchy/bin/omarchy-show-done;"
|
||||||
|
}
|
||||||
|
|
||||||
|
edit_in_nvim() {
|
||||||
|
notify-send "Editing config file" "$1"
|
||||||
|
alacritty -e nvim "$1"
|
||||||
|
}
|
||||||
|
|
||||||
|
install_and_launch() {
|
||||||
|
present_terminal "echo 'Installing $1...'; yay -Sy --noconfirm $2 && gtk-launch $3"
|
||||||
|
}
|
||||||
|
|
||||||
|
install_font() {
|
||||||
|
present_terminal "echo 'Installing $1...'; yay -Sy --noconfirm --needed $2 && sleep 2 && ~/.local/share/omarchy/bin/omarchy-font-set '$3'"
|
||||||
|
}
|
||||||
|
|
||||||
|
show_learn_menu() {
|
||||||
|
case $(menu "Learn" " Keybindings\n Omarchy\n Hyprland\n Arch\n Neovim\n Bash") in
|
||||||
|
*Keybindings*) $OMARCHY_BIN_PATH/omarchy-menu-keybindings ;;
|
||||||
|
*Omarchy*) setsid chromium --new-window --app="https://manuals.omamix.org/2/the-omarchy-manual" & ;;
|
||||||
|
*Hyprland*) setsid chromium --new-window --app="https://wiki.hypr.land/" & ;;
|
||||||
|
*Arch*) setsid chromium --new-window --app="https://wiki.archlinux.org/title/Main_page" & ;;
|
||||||
|
*Bash*) setsid chromium --new-window --app="https://devhints.io/bash" & ;;
|
||||||
|
*Neovim*) setsid chromium --new-window --app="https://www.lazyvim.org/keymaps" & ;;
|
||||||
|
*) show_main_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show_style_menu() {
|
||||||
|
case $(menu "Style" " Theme\n Font\n Background") in
|
||||||
|
*Theme*) show_theme_menu ;;
|
||||||
|
*Font*) show_font_menu ;;
|
||||||
|
*Background*) $OMARCHY_BIN_PATH/omarchy-theme-bg-next ;;
|
||||||
|
*) show_main_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show_theme_menu() {
|
||||||
|
theme=$(menu "Theme" "$($OMARCHY_BIN_PATH/omarchy-theme-list)")
|
||||||
|
if [[ "$theme" == "CNCLD" || -z "$theme" ]]; then
|
||||||
|
show_main_menu
|
||||||
|
else
|
||||||
|
$OMARCHY_BIN_PATH/omarchy-theme-set "$theme"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
show_font_menu() {
|
||||||
|
theme=$(menu "Font" "$($OMARCHY_BIN_PATH/omarchy-font-list)" "-w 350")
|
||||||
|
if [[ "$theme" == "CNCLD" || -z "$theme" ]]; then
|
||||||
|
show_main_menu
|
||||||
|
else
|
||||||
|
$OMARCHY_BIN_PATH/omarchy-font-set "$theme"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
show_capture_menu() {
|
||||||
|
case $(menu "Capture" " Screenshot\n Screenrecord\n Color") in
|
||||||
|
*Screenshot*) show_screenshot_menu ;;
|
||||||
|
*Screenrecord*) show_screenrecord_menu ;;
|
||||||
|
*Color*) pkill hyprpicker || hyprpicker -a ;;
|
||||||
|
*) show_main_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show_screenshot_menu() {
|
||||||
|
case $(menu "Screenshot" " Region\n Window\n Display") in
|
||||||
|
*Region*) $OMARCHY_BIN_PATH/omarchy-cmd-screenshot ;;
|
||||||
|
*Window*) $OMARCHY_BIN_PATH/omarchy-cmd-screenshot window ;;
|
||||||
|
*Display*) $OMARCHY_BIN_PATH/omarchy-cmd-screenshot output ;;
|
||||||
|
*) show_capture_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show_screenrecord_menu() {
|
||||||
|
case $(menu "Screenrecord" " Region\n Display") in
|
||||||
|
*Region*) $OMARCHY_BIN_PATH/omarchy-cmd-screenrecord ;;
|
||||||
|
*Display*) $OMARCHY_BIN_PATH/omarchy-cmd-screenrecord output ;;
|
||||||
|
*) show_capture_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show_toggle_menu() {
|
||||||
|
case $(menu "Toggle" " Screensaver\n Nightlight\n Idle Lock\n Top Bar") in
|
||||||
|
*Screensaver*) $OMARCHY_BIN_PATH/omarchy-launch-screensaver ;;
|
||||||
|
*Nightlight*) $OMARCHY_BIN_PATH/omarchy-toggle-nightlight ;;
|
||||||
|
*Idle*) $OMARCHY_BIN_PATH/omarchy-toggle-idle ;;
|
||||||
|
*Bar*) pkill -SIGUSR1 waybar ;;
|
||||||
|
*) show_main_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show_setup_menu() {
|
||||||
|
local options=" Audio\n Wifi\n Bluetooth\n Power Profile\n Monitors"
|
||||||
|
[ -f ~/.config/hypr/bindings.conf ] && options="$options\n Keybindings"
|
||||||
|
[ -f ~/.config/hypr/input.conf ] && options="$options\n Input"
|
||||||
|
options="$options\n Configs\n Fingerprint\n Fido2"
|
||||||
|
|
||||||
|
case $(menu "Setup" "$options") in
|
||||||
|
*Audio*) alacritty --class=Wiremix -e wiremix ;;
|
||||||
|
*Wifi*) alacritty --class=Impala -e impala ;;
|
||||||
|
*Bluetooth*) blueberry ;;
|
||||||
|
*Power*) show_setup_power_menu ;;
|
||||||
|
*Monitors*) edit_in_nvim ~/.config/hypr/monitors.conf ;;
|
||||||
|
*Keybindings*) edit_in_nvim ~/.config/hypr/bindings.conf ;;
|
||||||
|
*Input*) edit_in_nvim ~/.config/hypr/input.conf ;;
|
||||||
|
*Configs*) show_setup_configs_menu ;;
|
||||||
|
*Fingerprint*) terminal $OMARCHY_BIN_PATH/omarchy-setup-fingerprint ;;
|
||||||
|
*Fido2*) terminal $OMARCHY_BIN_PATH/omarchy-setup-fido2 ;;
|
||||||
|
*) show_main_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show_setup_power_menu() {
|
||||||
|
current_profile=$(powerprofilesctl get)
|
||||||
|
new_profile=$(menu "Power Profile" "$($OMARCHY_BIN_PATH/omarchy-powerprofiles-list)" "-a '${current_profile}'")
|
||||||
|
|
||||||
|
if [[ "$new_profile" == "CNCLD" || -z "$new_profile" ]]; then
|
||||||
|
show_main_menu
|
||||||
|
else
|
||||||
|
powerprofilesctl set "$new_profile"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
show_setup_configs_menu() {
|
||||||
|
case $(menu "Setup" " Hyprland\n Hypridle\n Hyprlock\n Hyprsunset\n Swayosd\n Walker\n Waybar\n XCompose") in
|
||||||
|
*Hyprland*) edit_in_nvim ~/.config/hypr/hyprland.conf ;;
|
||||||
|
*Hypridle*) edit_in_nvim ~/.config/hypr/hypridle.conf && ~/.local/share/omarchy/bin/omarchy-restart-hypridle ;;
|
||||||
|
*Hyprlock*) edit_in_nvim ~/.config/hypr/hyprlock.conf ;;
|
||||||
|
*Hyprsunset*) edit_in_nvim ~/.config/hypr/hyprsunset.conf && ~/.local/share/omarchy/bin/omarchy-restart-hyprsunset ;;
|
||||||
|
*Swayosd*) edit_in_nvim ~/.config/swayosd/config.toml && ~/.local/share/omarchy/bin/omarchy-restart-swayosd ;;
|
||||||
|
*Walker*) edit_in_nvim ~/.config/walker/config.toml && ~/.local/share/omarchy/bin/omarchy-restart-walker ;;
|
||||||
|
*Waybar*) edit_in_nvim ~/.config/waybar/config.jsonc && ~/.local/share/omarchy/bin/omarchy-restart-waybar ;;
|
||||||
|
*XCompose*) edit_in_nvim ~/.XCompose && ~/.local/share/omarchy/bin/omarchy-restart-xcompose ;;
|
||||||
|
*) show_main_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show_install_menu() {
|
||||||
|
case $(menu "Install" " Package\n Web App\n Editor\n Theme\n Background\n Font\n Dropbox\n Steam\n Docker DBs") in
|
||||||
|
*Package*) terminal $OMARCHY_BIN_PATH/omarchy-pkg-install ;;
|
||||||
|
*Web*) terminal $OMARCHY_BIN_PATH/omarchy-webapp-install ;;
|
||||||
|
*Editor*) show_install_editor_menu ;;
|
||||||
|
*Theme*) terminal $OMARCHY_BIN_PATH/omarchy-theme-install ;;
|
||||||
|
*Background*) nautilus ~/.config/omarchy/current/theme/backgrounds ;;
|
||||||
|
*Font*) show_install_font_menu ;;
|
||||||
|
*Dropbox*) terminal $OMARCHY_BIN_PATH/omarchy-setup-dropbox ;;
|
||||||
|
*Steam*) terminal $OMARCHY_BIN_PATH/omarchy-setup-steam ;;
|
||||||
|
*Docker*) terminal $OMARCHY_BIN_PATH/omarchy-setup-docker-dbs ;;
|
||||||
|
*) show_main_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show_install_editor_menu() {
|
||||||
|
case $(menu "Install" " VSCode\n Cursor\n Zed") in
|
||||||
|
*VSCode*) install_and_launch "VSCode" "visual-studio-code-bin" "code" ;;
|
||||||
|
*Cursor*) install_and_launch "Cursor" "cursor-bin" "cursor-cursor" ;;
|
||||||
|
*Zed*) install_and_launch "Zed" "zed" "dev.zed.Zed" ;;
|
||||||
|
*) show_install_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show_install_font_menu() {
|
||||||
|
case $(menu "Install" " Meslo LG Mono\n Fira Code\n Victor Code\n Bistream Vera Mono" "-w 350") in
|
||||||
|
*Meslo*) install_font "Meslo LG Mono" "ttf-meslo-nerd" "MesloLGL Nerd Font" ;;
|
||||||
|
*Fira*) install_font "Fira Code" "ttf-firacode-nerd" "FiraCode Nerd Font" ;;
|
||||||
|
*Victor*) install_font "Victor Code" "ttf-victor-mono-nerd" "VictorMono Nerd Font" ;;
|
||||||
|
*Bistream*) install_font "Bistream Vera Code" "ttf-bitstream-vera-mono-nerd" "BitstromWera Nerd Font" ;;
|
||||||
|
*) show_install_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show_remove_menu() {
|
||||||
|
case $(menu "Remove" " Package\n Web App\n Theme\n Fingerprint\n Fido2") in
|
||||||
|
*Package*) terminal $OMARCHY_BIN_PATH/omarchy-pkg-remove ;;
|
||||||
|
*Web*) terminal $OMARCHY_BIN_PATH/omarchy-webapp-remove ;;
|
||||||
|
*Theme*) present_terminal $OMARCHY_BIN_PATH/omarchy-theme-remove ;;
|
||||||
|
*Fingerprint*) terminal "$OMARCHY_BIN_PATH/omarchy-setup-fingerprint --remove" ;;
|
||||||
|
*Fido2*) terminal "$OMARCHY_BIN_PATH/omarchy-setup-fido2 --remove" ;;
|
||||||
|
*) show_main_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show_update_menu() {
|
||||||
|
case $(menu "Update" " Omarchy\n Configs\n Themes\n Timezone") in
|
||||||
|
*Omarchy*) terminal $OMARCHY_BIN_PATH/omarchy-update ;;
|
||||||
|
*Configs*) show_update_configs_menu ;;
|
||||||
|
*Themes*) terminal $OMARCHY_BIN_PATH/omarchy-theme-update ;;
|
||||||
|
*Timezone*) $OMARCHY_BIN_PATH/omarchy-cmd-tzupdate ;;
|
||||||
|
*) show_main_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show_update_configs_menu() {
|
||||||
|
case $(menu "Use default config" " Hyprland\n Hypridle\n Hyprlock\n Hyprsunset\n Plymouth\n Swayosd\n Walker\n Waybar") in
|
||||||
|
*Hyprland*) present_terminal $OMARCHY_BIN_PATH/omarchy-refresh-hyprland ;;
|
||||||
|
*Hypridle*) present_terminal $OMARCHY_BIN_PATH/omarchy-refresh-hypridle ;;
|
||||||
|
*Hyprlock*) present_terminal $OMARCHY_BIN_PATH/omarchy-refresh-hyprlock ;;
|
||||||
|
*Hyprsunset*) present_terminal $OMARCHY_BIN_PATH/omarchy-refresh-hyprsunset ;;
|
||||||
|
*Plymouth*) present_terminal $OMARCHY_BIN_PATH/omarchy-refresh-plymouth ;;
|
||||||
|
*Swayosd*) present_terminal $OMARCHY_BIN_PATH/omarchy-refresh-swayosd ;;
|
||||||
|
*Walker*) present_terminal $OMARCHY_BIN_PATH/omarchy-refresh-walker ;;
|
||||||
|
*Waybar*) present_terminal $OMARCHY_BIN_PATH/omarchy-refresh-waybar ;;
|
||||||
|
*) show_main_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show_system_menu() {
|
||||||
|
case $(menu "System" " Lock\n Suspend\n Relaunch\n Restart\n Shutdown") in
|
||||||
|
*Lock*) hyprlock ;;
|
||||||
|
*Suspend*) systemctl suspend ;;
|
||||||
|
*Relaunch*) uwsm stop ;;
|
||||||
|
*Restart*) systemctl reboot ;;
|
||||||
|
*Shutdown*) systemctl poweroff ;;
|
||||||
|
*) show_main_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show_main_menu() {
|
||||||
|
go_to_menu "$(menu "Go" " Apps\n Learn\n Capture\n Toggle\n Style\n Setup\n Install\n Remove\n Update\n About\n System")"
|
||||||
|
}
|
||||||
|
|
||||||
|
go_to_menu() {
|
||||||
|
case "${1,,}" in
|
||||||
|
*apps*) walker -p "Launch…" ;;
|
||||||
|
*learn*) show_learn_menu ;;
|
||||||
|
*style*) show_style_menu ;;
|
||||||
|
*theme*) show_theme_menu ;;
|
||||||
|
*capture*) show_capture_menu ;;
|
||||||
|
*screenshot*) show_screenshot_menu ;;
|
||||||
|
*screenrecord*) show_screenrecord_menu ;;
|
||||||
|
*toggle*) show_toggle_menu ;;
|
||||||
|
*setup*) show_setup_menu ;;
|
||||||
|
*install*) show_install_menu ;;
|
||||||
|
*remove*) show_remove_menu ;;
|
||||||
|
*update*) show_update_menu ;;
|
||||||
|
*system*) show_system_menu ;;
|
||||||
|
*about*) gtk-launch About.desktop ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
if [[ -n "$1" ]]; then
|
||||||
|
go_to_menu "$1"
|
||||||
|
else
|
||||||
|
show_main_menu
|
||||||
|
fi
|
||||||
Executable
+86
@@ -0,0 +1,86 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# A script to display Hyprland keybindings defined in your configuration
|
||||||
|
# using walker for an interactive search menu.
|
||||||
|
|
||||||
|
# Fetch dynamic keybindings from Hyprland
|
||||||
|
#
|
||||||
|
# Also do some pre-processing:
|
||||||
|
# - Remove standard Omarchy bin path prefix
|
||||||
|
# - Remove uwsm prefix
|
||||||
|
# - Map numeric modifier key mask to a textual rendition
|
||||||
|
# - Output comma-separated values that the parser can understand
|
||||||
|
dynamic_bindings() {
|
||||||
|
hyprctl -j binds | \
|
||||||
|
jq -r '.[] | {modmask, key, keycode, description, dispatcher, arg} | "\(.modmask),\(.key)@\(.keycode),\(.description),\(.dispatcher),\(.arg)"' | \
|
||||||
|
sed -r \
|
||||||
|
-e 's/null//' \
|
||||||
|
-e 's,~/.local/share/omarchy/bin/,,' \
|
||||||
|
-e 's,uwsm app -- ,,' \
|
||||||
|
-e 's/@0//' \
|
||||||
|
-e 's/,@/,code:/' \
|
||||||
|
-e 's/^0,/,/' \
|
||||||
|
-e 's/^1,/SHIFT,/' \
|
||||||
|
-e 's/^4,/CTRL,/' \
|
||||||
|
-e 's/^5,/SHIFT CTRL,/' \
|
||||||
|
-e 's/^8,/ALT,/' \
|
||||||
|
-e 's/^9,/SHIFT ALT,/' \
|
||||||
|
-e 's/^12,/CTRL ALT,/' \
|
||||||
|
-e 's/^13,/SHIFT CTRL ALT,/' \
|
||||||
|
-e 's/^64,/SUPER,/' \
|
||||||
|
-e 's/^65,/SUPER SHIFT,/' \
|
||||||
|
-e 's/^68,/SUPER CTRL,/' \
|
||||||
|
-e 's/^69,/SUPER SHIFT CTRL,/' \
|
||||||
|
-e 's/^72,/SUPER ALT,/'
|
||||||
|
}
|
||||||
|
|
||||||
|
# Parse and format keybindings
|
||||||
|
#
|
||||||
|
# `awk` does the heavy lifting:
|
||||||
|
# - Set the field separator to a comma ','.
|
||||||
|
# - Joins the key combination (e.g., "SUPER + Q").
|
||||||
|
# - Joins the command that the key executes.
|
||||||
|
# - Prints everything in a nicely aligned format.
|
||||||
|
parse_bindings() {
|
||||||
|
awk -F, '
|
||||||
|
{
|
||||||
|
# Combine the modifier and key (first two fields)
|
||||||
|
key_combo = $1 " + " $2;
|
||||||
|
|
||||||
|
# Clean up: strip leading "+" if present, trim spaces
|
||||||
|
gsub(/^[ \t]*\+?[ \t]*/, "", key_combo);
|
||||||
|
gsub(/[ \t]+$/, "", key_combo);
|
||||||
|
|
||||||
|
# Use description, if set
|
||||||
|
action = $3;
|
||||||
|
|
||||||
|
if (action == "") {
|
||||||
|
# Reconstruct the command from the remaining fields
|
||||||
|
for (i = 4; i <= NF; i++) {
|
||||||
|
action = action $i (i < NF ? "," : "");
|
||||||
|
}
|
||||||
|
|
||||||
|
# Clean up trailing commas, remove leading "exec, ", and trim
|
||||||
|
sub(/,$/, "", action);
|
||||||
|
gsub(/(^|,)[[:space:]]*exec[[:space:]]*,?/, "", action);
|
||||||
|
gsub(/^[ \t]+|[ \t]+$/, "", action);
|
||||||
|
gsub(/[ \t]+/, " ", key_combo); # Collapse multiple spaces to one
|
||||||
|
|
||||||
|
# Escape XML entities
|
||||||
|
gsub(/&/, "\\&", action);
|
||||||
|
gsub(/</, "\\<", action);
|
||||||
|
gsub(/>/, "\\>", action);
|
||||||
|
gsub(/"/, "\\"", action);
|
||||||
|
gsub(/'"'"'/, "\\'", action);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (action != "") {
|
||||||
|
printf "%-35s → %s\n", key_combo, action;
|
||||||
|
}
|
||||||
|
}'
|
||||||
|
}
|
||||||
|
|
||||||
|
dynamic_bindings | \
|
||||||
|
sort -u | \
|
||||||
|
parse_bindings | \
|
||||||
|
walker --dmenu --theme keybindings -p 'Keybindings'
|
||||||
Executable
+18
@@ -0,0 +1,18 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Where we store an empty file for each migration that has already been performed.
|
||||||
|
STATE_DIR="$HOME/.local/state/omarchy/migrations"
|
||||||
|
mkdir -p "$STATE_DIR"
|
||||||
|
|
||||||
|
# Run any pending migrations
|
||||||
|
for file in ~/.local/share/omarchy/migrations/*.sh; do
|
||||||
|
filename=$(basename "$file")
|
||||||
|
|
||||||
|
if [[ ! -f "$STATE_DIR/$filename" ]]; then
|
||||||
|
echo -e "\e[32m\nRunning migration (${filename%.sh})\e[0m"
|
||||||
|
source $file
|
||||||
|
touch "$STATE_DIR/$filename"
|
||||||
|
fi
|
||||||
|
done
|
||||||
Executable
+9
@@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
pkg_name=$(yay -Slq | fzf --multi --preview 'yay -Sii {1}' --preview-window=down:75%)
|
||||||
|
|
||||||
|
if [[ -n "$pkg_name" ]]; then
|
||||||
|
yay -Sy --noconfirm "$pkg_name"
|
||||||
|
sudo updatedb
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-done
|
||||||
|
fi
|
||||||
Executable
+9
@@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
pkg_name=$(yay -Qqe | fzf --multi --preview 'yay -Qi {1}' --preview-window=down:75%)
|
||||||
|
|
||||||
|
if [[ -n "$pkg_name" ]]; then
|
||||||
|
yay -Rns --noconfirm "$pkg_name"
|
||||||
|
sudo updatedb
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-done
|
||||||
|
fi
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Power menu for Omarchy
|
|
||||||
# Provides power off, restart, and sleep options
|
|
||||||
|
|
||||||
# Function to show power menu
|
|
||||||
show_power_menu() {
|
|
||||||
local menu_options="\u200B Lock
|
|
||||||
\u200C Sleep
|
|
||||||
\u200D Relaunch
|
|
||||||
\u2060 Restart
|
|
||||||
\u2063 Shutdown" # These first characters are invisible sort keys
|
|
||||||
|
|
||||||
local selection=$(echo -e "$menu_options" | wofi --show dmenu --prompt "Power Options" --width 200 --height 250 -O alphabetical)
|
|
||||||
|
|
||||||
case "$selection" in
|
|
||||||
*Lock*) hyprlock ;;
|
|
||||||
*Sleep*) systemctl suspend ;;
|
|
||||||
*Relaunch*) hyprctl dispatch exit ;;
|
|
||||||
*Restart*) systemctl reboot ;;
|
|
||||||
*Shutdown*) systemctl poweroff ;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
# Main execution
|
|
||||||
show_power_menu
|
|
||||||
Executable
+5
@@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
powerprofilesctl list |
|
||||||
|
awk '/^\s*[* ]\s*[a-zA-Z0-9\-]+:$/ { gsub(/^[*[:space:]]+|:$/,""); print }' |
|
||||||
|
tac
|
||||||
@@ -8,4 +8,11 @@ gtk-update-icon-cache ~/.local/share/icons/hicolor &>/dev/null
|
|||||||
# Copy .desktop declarations
|
# Copy .desktop declarations
|
||||||
mkdir -p ~/.local/share/applications
|
mkdir -p ~/.local/share/applications
|
||||||
cp ~/.local/share/omarchy/applications/*.desktop ~/.local/share/applications/
|
cp ~/.local/share/omarchy/applications/*.desktop ~/.local/share/applications/
|
||||||
|
cp ~/.local/share/omarchy/applications/hidden/*.desktop ~/.local/share/applications/
|
||||||
|
|
||||||
|
# Only copy xtras if user is not in bare mode
|
||||||
|
if [[ ! -f ~/.local/state/omarchy/bare.mode ]] && [ -z "$OMARCHY_BARE" ]; then
|
||||||
|
cp ~/.local/share/omarchy/applications/xtras/*.desktop ~/.local/share/applications/
|
||||||
|
fi
|
||||||
|
|
||||||
update-desktop-database ~/.local/share/applications
|
update-desktop-database ~/.local/share/applications
|
||||||
Executable
+40
@@ -0,0 +1,40 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# This script deploys ~/.local/share/omarchy/config/X/Y/Z -> ~/.config/X/Y/Z
|
||||||
|
config_file=$1
|
||||||
|
|
||||||
|
if [[ -z "$config_file" ]]; then
|
||||||
|
cat <<USAGE
|
||||||
|
Usage: $0 [config_file]
|
||||||
|
|
||||||
|
Must provide a file path from the .config directory to be refreshed.
|
||||||
|
To copy ~/.local/share/omarchy/config/hypr/hyprlock.conf to ~/.config/hypr/hyprlock.conf
|
||||||
|
|
||||||
|
$0 hypr/hyprlock.conf
|
||||||
|
USAGE
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Backup the destination file (with timestamp) to avoid clobbering (Ex: hyprlock.conf.bak.1753817951)
|
||||||
|
user_config_file="${HOME}/.config/$config_file"
|
||||||
|
default_config_file="${HOME}/.local/share/omarchy/config/$config_file"
|
||||||
|
backup_config_file="$user_config_file.bak.$(date +%s)"
|
||||||
|
|
||||||
|
if [[ -f "$user_config_file" ]]; then
|
||||||
|
# Create preliminary backup
|
||||||
|
cp -f "$user_config_file" "$backup_config_file" 2>/dev/null
|
||||||
|
|
||||||
|
# Replace config with new default
|
||||||
|
cp -f "$default_config_file" "$user_config_file" 2>/dev/null
|
||||||
|
|
||||||
|
# Compare and delete/inform accordingly
|
||||||
|
if cmp -s "$user_config_file" "$backup_config_file"; then
|
||||||
|
rm "$backup_config_file"
|
||||||
|
else
|
||||||
|
echo -e "\e[31mReplaced $user_config_file with new Omarchy default.\nSaved backup as ${backup_config_file}.\n\n\e[32mChanges:\e[0m"
|
||||||
|
diff "$user_config_file" "$backup_config_file"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
# Config file did not exist already
|
||||||
|
cp -f "$default_config_file" "$user_config_file" 2>/dev/null
|
||||||
|
fi
|
||||||
Executable
+4
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-refresh-config hypr/hypridle.conf
|
||||||
|
~/.local/share/omarchy/bin/omarchy-restart-hypridle
|
||||||
Executable
+7
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-refresh-config hypr/autostart.conf
|
||||||
|
~/.local/share/omarchy/bin/omarchy-refresh-config hypr/bindings.conf
|
||||||
|
~/.local/share/omarchy/bin/omarchy-refresh-config hypr/envs.conf
|
||||||
|
~/.local/share/omarchy/bin/omarchy-refresh-config hypr/input.conf
|
||||||
|
~/.local/share/omarchy/bin/omarchy-refresh-config hypr/hyprland.conf
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-refresh-config hypr/hyprlock.conf
|
||||||
Executable
+4
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-refresh-config hypr/hyprsunset.conf
|
||||||
|
~/.local/share/omarchy/bin/omarchy-restart-hyprsunset
|
||||||
Executable
+6
@@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [[ "$1" == "-y" ]] || gum confirm "Refresh Plymouth theme? This will replace your current startup screen with Omarchy defaults."; then
|
||||||
|
sudo cp ~/.local/share/omarchy/default/plymouth/* /usr/share/plymouth/themes/omarchy/
|
||||||
|
sudo plymouth-set-default-theme -R omarchy
|
||||||
|
fi
|
||||||
Executable
+5
@@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-refresh-config swayosd/config.toml
|
||||||
|
~/.local/share/omarchy/bin/omarchy-refresh-config swayosd/style.css
|
||||||
|
~/.local/share/omarchy/bin/omarchy-restart-swayosd
|
||||||
Executable
+4
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-refresh-config walker/config.toml
|
||||||
|
~/.local/share/omarchy/bin/omarchy-restart-walker
|
||||||
@@ -1,9 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# Overwrite local waybar settings with the latest in Omarchy
|
~/.local/share/omarchy/bin/omarchy-refresh-config waybar/config.jsonc
|
||||||
cp -f ~/.local/share/omarchy/config/waybar/config ~/.config/waybar/ 2>/dev/null
|
~/.local/share/omarchy/bin/omarchy-refresh-config waybar/style.css
|
||||||
cp -f ~/.local/share/omarchy/config/waybar/style.css ~/.config/waybar/ 2>/dev/null
|
~/.local/share/omarchy/bin/omarchy-restart-waybar
|
||||||
|
|
||||||
# Restart waybar
|
|
||||||
pkill waybar &>/dev/null
|
|
||||||
setsid waybar &>/dev/null &
|
|
||||||
Executable
+4
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
pkill -x $1
|
||||||
|
setsid uwsm app -- $1 >/dev/null 2>&1 &
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-restart-app hypridle
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-restart-app hyprsunset
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-restart-app swayosd-server
|
||||||
Executable
+4
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
pkill walker
|
||||||
|
setsid uwsm app -- walker --gapplication-service &
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-restart-app waybar
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-restart-app fcitx5
|
||||||
Executable
+19
@@ -0,0 +1,19 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-logo
|
||||||
|
|
||||||
|
options=("MariaDB" "MySQL" "Redis" "PostgreSQL")
|
||||||
|
choices=$(printf "%s\n" "${options[@]}" | gum choose --no-limit --header "Select databases (space to select, return to install, esc to cancel)") || main_menu
|
||||||
|
|
||||||
|
if [[ -n "$choices" ]]; then
|
||||||
|
for db in $choices; do
|
||||||
|
case $db in
|
||||||
|
MySQL) sudo docker run -d --restart unless-stopped -p "127.0.0.1:3306:3306" --name=mysql8 -e MYSQL_ROOT_PASSWORD= -e MYSQL_ALLOW_EMPTY_PASSWORD=true mysql:8.4 ;;
|
||||||
|
PostgreSQL) sudo docker run -d --restart unless-stopped -p "127.0.0.1:5432:5432" --name=postgres16 -e POSTGRES_HOST_AUTH_METHOD=trust postgres:16 ;;
|
||||||
|
MariaDB) sudo docker run -d --restart unless-stopped -p "127.0.0.1:3306:3306" --name=mariadb11 -e MARIADB_ROOT_PASSWORD= -e MARIADB_ALLOW_EMPTY_ROOT_PASSWORD=true mariadb:11.8 ;;
|
||||||
|
Redis) sudo docker run -d --restart unless-stopped -p "127.0.0.1:6379:6379" --name=redis redis:7 ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-done
|
||||||
Executable
+13
@@ -0,0 +1,13 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-logo
|
||||||
|
|
||||||
|
echo "Installing all dependencies..."
|
||||||
|
yay -S --noconfirm --needed \
|
||||||
|
dropbox dropbox-cli libappindicator-gtk3 python-gpgme nautilus-dropbox
|
||||||
|
|
||||||
|
echo "Starting Dropbox..."
|
||||||
|
uwsm app -- dropbox-cli start &>/dev/null &
|
||||||
|
echo "See Dropbox icon behind hover tray in top right and right-click for setup."
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-done
|
||||||
Executable
+43
@@ -0,0 +1,43 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-logo
|
||||||
|
|
||||||
|
if [[ "--remove" == "$1" ]]; then
|
||||||
|
echo -e "\e[32mLet's remove your Fido2 device from sudo authentication.\n\e[0m"
|
||||||
|
yay -Rns --noconfirm libfido2 pam-u2f
|
||||||
|
sudo rm -rf /etc/fido2
|
||||||
|
sudo sed -i '\|^auth[[:space:]]\+sufficient[[:space:]]\+pam_u2f\.so[[:space:]]\+cue[[:space:]]\+authfile=/etc/fido2/fido2$|d' /etc/pam.d/sudo
|
||||||
|
echo -e "\e[32m\nYou've successfully removed the fido2 device setup.\e[0m"
|
||||||
|
else
|
||||||
|
echo -e "\e[32mLet's setup your Fido2 device for sudo authentication.\n\e[0m"
|
||||||
|
yay -S --noconfirm --needed libfido2 pam-u2f
|
||||||
|
|
||||||
|
tokens=$(fido2-token -L)
|
||||||
|
|
||||||
|
if [ -z "$tokens" ]; then
|
||||||
|
echo -e "\e[31m\nNo fido2 device detected. Plug it in, you may have to unlock it as well\e[0m"
|
||||||
|
else
|
||||||
|
# Create the pamu2fcfg file
|
||||||
|
if [ ! -f /etc/fido2/fido2 ]; then
|
||||||
|
sudo mkdir -p /etc/fido2
|
||||||
|
echo -e "\e[32m\nLet's setup your device by confirming on the device now.\e[0m"
|
||||||
|
pamu2fcfg >/tmp/fido2 # This needs to run as the user
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
echo -e "\e[31m\nSomething went wrong. Maybe try again?\e[0m"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
sudo mv /tmp/fido2 /etc/fido2/fido2
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Add fido2 auth as an option for sudo
|
||||||
|
if ! grep -q pam_u2f.so /etc/pam.d/sudo; then
|
||||||
|
sudo sed -i '1i auth sufficient pam_u2f.so cue authfile=/etc/fido2/fido2' /etc/pam.d/sudo
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! sudo echo -e "\e[32m\nPerfect! Now you can use your fido2 device for sudo.\e[0m"; then
|
||||||
|
echo -e "\e[31m\nSomething went wrong. Maybe try again?\e[0m"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-done
|
||||||
Executable
+49
@@ -0,0 +1,49 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-logo
|
||||||
|
|
||||||
|
if [[ "--remove" == "$1" ]]; then
|
||||||
|
echo -e "\e[32mLet's remove your fingerprint scanner from authentication.\n\e[0m"
|
||||||
|
yay -Rns --noconfirm fprintd
|
||||||
|
sudo rm -rf /etc/pam.d/polkit-1
|
||||||
|
sudo sed -i '/pam_fprintd\.so/d' /etc/pam.d/sudo
|
||||||
|
echo -e "\e[32mYou've successfully removed the fingerprint setup.\e[0m"
|
||||||
|
else
|
||||||
|
echo -e "\e[32mLet's setup your fingerprint scanner for authentication.\n\e[0m"
|
||||||
|
yay -S --noconfirm --needed fprintd usbutils
|
||||||
|
|
||||||
|
if ! lsusb | grep -Eiq 'fingerprint|synaptics|goodix'; then
|
||||||
|
echo -e "\e[31m\nNo fingerprint sensor detected.\e[0m"
|
||||||
|
else
|
||||||
|
# Add fingerprint authentication as an option for sudo
|
||||||
|
if ! grep -q pam_fprintd.so /etc/pam.d/sudo; then
|
||||||
|
sudo sed -i '1i auth sufficient pam_fprintd.so' /etc/pam.d/sudo
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Add fingerprint authentication as an option for hyprpolkitagent
|
||||||
|
if [ ! -f /etc/pam.d/polkit-1 ] || ! grep -q pam_fprintd.so /etc/pam.d/polkit-1; then
|
||||||
|
sudo tee /etc/pam.d/polkit-1 >/dev/null <<'EOF'
|
||||||
|
auth required pam_unix.so
|
||||||
|
auth optional pam_fprintd.so
|
||||||
|
|
||||||
|
account required pam_unix.so
|
||||||
|
password required pam_unix.so
|
||||||
|
session required pam_unix.so
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Enroll the first finger
|
||||||
|
echo -e "\e[32m\nLet's setup your right index finger as the first fingerprint.\nKeep moving the finger around on sensor until the process completes.\n\e[0m"
|
||||||
|
sudo fprintd-enroll $USER
|
||||||
|
|
||||||
|
echo -e "\e[32m\nNow let's verify that it's working correctly.\e[0m\n"
|
||||||
|
|
||||||
|
if fprintd-verify; then
|
||||||
|
echo -e "\e[32m\nPerfect! Now you can use your fingerprint on the lock screen (Super + Escape).\e[0m"
|
||||||
|
else
|
||||||
|
echo -e "\e[31m\nSomething went wrong. Maybe try again?\e[0m"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-done
|
||||||
Executable
+13
@@ -0,0 +1,13 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-logo
|
||||||
|
|
||||||
|
echo "Adding multilib repository for 32-bit compatibility"
|
||||||
|
sudo sed -i '/^\s*#\[multilib\]/,/^$/{s/^\s*#//}' /etc/pacman.conf
|
||||||
|
sudo pacman -Sy
|
||||||
|
|
||||||
|
echo "Now pick dependencies matching your graphics card"
|
||||||
|
yay -S steam
|
||||||
|
gtk-launch steam >/dev/null 2>&1 &
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-done
|
||||||
Executable
+5
@@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
echo
|
||||||
|
gum spin --spinner "globe" --title "Done!" -- sleep 2
|
||||||
|
clear
|
||||||
@@ -1,51 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# A script to display Hyprland keybindings defined in your configuration
|
|
||||||
# using wofi for an interactive search menu.
|
|
||||||
|
|
||||||
USER_HYPRLAND_CONF="$HOME/.config/hypr/hyprland.conf"
|
|
||||||
OMARCHY_BINDINGS_CONF="$HOME/.local/share/omarchy/default/hypr/bindings.conf"
|
|
||||||
|
|
||||||
# Process the configuration file to extract and format keybindings
|
|
||||||
# 1. `grep` finds all lines starting with 'bind' (allowing for leading spaces).
|
|
||||||
# 2. The first `sed` removes comments (anything after a '#').
|
|
||||||
# 3. `awk` does the heavy lifting of formatting the output.
|
|
||||||
# - It sets the field separator to a comma ','.
|
|
||||||
# - It removes the 'bind... =' part from the beginning of the line.
|
|
||||||
# - It joins the key combination (e.g., "SUPER + Q").
|
|
||||||
# - It joins the command that the key executes.
|
|
||||||
# - It prints everything in a nicely aligned format.
|
|
||||||
# 4. The final `sed` cleans up any leftover commas from the end of lines.
|
|
||||||
grep -h '^[[:space:]]*bind' "$HYPRLAND_CONF" "$OMARCHY_BINDINGS_CONF" |
|
|
||||||
awk -F, '
|
|
||||||
{
|
|
||||||
# Strip trailing comments
|
|
||||||
sub(/#.*/, "");
|
|
||||||
|
|
||||||
# Remove the "bind... =" part and surrounding whitespace
|
|
||||||
sub(/^[[:space:]]*bind[^=]*=(\+[[:space:]])?(exec, )?[[:space:]]*/, "", $1);
|
|
||||||
|
|
||||||
# Combine the modifier and key (first two fields)
|
|
||||||
key_combo = $1 " + " $2;
|
|
||||||
|
|
||||||
# Clean up: strip leading "+" if present, trim spaces
|
|
||||||
gsub(/^[ \t]*\+?[ \t]*/, "", key_combo);
|
|
||||||
gsub(/[ \t]+$/, "", key_combo);
|
|
||||||
|
|
||||||
# Reconstruct the command from the remaining fields
|
|
||||||
action = "";
|
|
||||||
for (i = 3; i <= NF; i++) {
|
|
||||||
action = action $i (i < NF ? "," : "");
|
|
||||||
}
|
|
||||||
|
|
||||||
# Clean up trailing commas, remove leading "exec, ", and trim
|
|
||||||
sub(/,$/, "", action);
|
|
||||||
gsub(/(^|,)[[:space:]]*exec[[:space:]]*,?/, "", action);
|
|
||||||
gsub(/^[ \t]+|[ \t]+$/, "", action);
|
|
||||||
gsub(/[ \t]+/, " ", key_combo); # Collapse multiple spaces to one
|
|
||||||
|
|
||||||
if (action != "") {
|
|
||||||
printf "%-35s → %s\n", key_combo, action;
|
|
||||||
}
|
|
||||||
}' |
|
|
||||||
flock --nonblock /tmp/.wofi.lock -c "wofi -dmenu -i --width 60% --height 70% -p 'Hyprland Keybindings' -O alphabetical"
|
|
||||||
Executable
+7
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
clear
|
||||||
|
echo -e "\033[32m"
|
||||||
|
cat <~/.local/share/omarchy/logo.txt
|
||||||
|
echo -e "\033[0m"
|
||||||
|
echo
|
||||||
Executable
+48
@@ -0,0 +1,48 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Cycles through the background images available
|
||||||
|
|
||||||
|
BACKGROUNDS_DIR="$HOME/.config/omarchy/current/theme/backgrounds/"
|
||||||
|
CURRENT_BACKGROUND_LINK="$HOME/.config/omarchy/current/background"
|
||||||
|
|
||||||
|
mapfile -d '' -t BACKGROUNDS < <(find "$BACKGROUNDS_DIR" -type f -print0 | sort -z)
|
||||||
|
TOTAL=${#BACKGROUNDS[@]}
|
||||||
|
|
||||||
|
if [[ $TOTAL -eq 0 ]]; then
|
||||||
|
notify-send "No background was found for theme" -t 2000
|
||||||
|
pkill -x swaybg
|
||||||
|
setsid uwsm app -- swaybg --color '#000000' >/dev/null 2>&1 &
|
||||||
|
else
|
||||||
|
# Get current background from symlink
|
||||||
|
if [[ -L "$CURRENT_BACKGROUND_LINK" ]]; then
|
||||||
|
CURRENT_BACKGROUND=$(readlink "$CURRENT_BACKGROUND_LINK")
|
||||||
|
else
|
||||||
|
# Default to first background if no symlink exists
|
||||||
|
CURRENT_BACKGROUND=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Find current background index
|
||||||
|
INDEX=-1
|
||||||
|
for i in "${!BACKGROUNDS[@]}"; do
|
||||||
|
if [[ "${BACKGROUNDS[$i]}" == "$CURRENT_BACKGROUND" ]]; then
|
||||||
|
INDEX=$i
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# Get next background (wrap around)
|
||||||
|
if [[ $INDEX -eq -1 ]]; then
|
||||||
|
# Use the first background when no match was found
|
||||||
|
NEW_BACKGROUND="${BACKGROUNDS[0]}"
|
||||||
|
else
|
||||||
|
NEXT_INDEX=$(((INDEX + 1) % TOTAL))
|
||||||
|
NEW_BACKGROUND="${BACKGROUNDS[$NEXT_INDEX]}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Set new background symlink
|
||||||
|
ln -nsf "$NEW_BACKGROUND" "$CURRENT_BACKGROUND_LINK"
|
||||||
|
|
||||||
|
# Relaunch swaybg
|
||||||
|
pkill -x swaybg
|
||||||
|
setsid uwsm app -- swaybg -i "$CURRENT_BACKGROUND_LINK" -m fill >/dev/null 2>&1 &
|
||||||
|
fi
|
||||||
Executable
+34
@@ -0,0 +1,34 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# omarchy-theme-install: Install a new theme from a git repo for Omarchy
|
||||||
|
# Usage: omarchy-theme-install <git-repo-url>
|
||||||
|
|
||||||
|
if [ -z "$1" ]; then
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-logo
|
||||||
|
echo -e "\e[32mSee https://manuals.omamix.org/2/the-omarchy-manual/90/extra-themes\n\e[0m"
|
||||||
|
REPO_URL=$(gum input --placeholder="Git repo URL for theme" --header="")
|
||||||
|
else
|
||||||
|
REPO_URL="$1"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$REPO_URL" ]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
THEMES_DIR="$HOME/.config/omarchy/themes"
|
||||||
|
THEME_NAME=$(basename "$REPO_URL" .git | sed -E 's/^omarchy-//; s/-theme$//')
|
||||||
|
THEME_PATH="$THEMES_DIR/$THEME_NAME"
|
||||||
|
|
||||||
|
# Remove existing theme if present
|
||||||
|
if [ -d "$THEME_PATH" ]; then
|
||||||
|
rm -rf "$THEME_PATH"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Clone the repo directly to ~/.config/omarchy/themes
|
||||||
|
if ! git clone "$REPO_URL" "$THEME_PATH"; then
|
||||||
|
echo "Error: Failed to clone theme repo."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Apply the new theme with omarchy-theme-set
|
||||||
|
~/.local/share/omarchy/bin/omarchy-theme-set $THEME_NAME
|
||||||
Executable
+21
@@ -0,0 +1,21 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
THEMES_DIR="$HOME/.config/omarchy/themes/"
|
||||||
|
CURRENT_THEME_DIR="$HOME/.config/omarchy/current/theme"
|
||||||
|
CURRENT_THEME_NAME=$(basename "$(realpath "$CURRENT_THEME_DIR")")
|
||||||
|
|
||||||
|
# Build themes list with pretty display names
|
||||||
|
mapfile -t themes < <(
|
||||||
|
find "$THEMES_DIR" -mindepth 1 -maxdepth 1 \( -type d -o -type l \) | sort | while read -r path; do
|
||||||
|
filename=$(basename "$path")
|
||||||
|
display_name=$(echo "$filename" | sed -E 's/(^|-)([a-z])/\1\u\2/g; s/-/ /g')
|
||||||
|
|
||||||
|
if [[ "$filename" == "$CURRENT_THEME_NAME" ]]; then
|
||||||
|
echo "<i>$display_name</i>"
|
||||||
|
else
|
||||||
|
echo "$display_name"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
)
|
||||||
|
|
||||||
|
printf '%s\n' "${themes[@]}"
|
||||||
+6
-21
@@ -3,20 +3,22 @@
|
|||||||
THEMES_DIR="$HOME/.config/omarchy/themes/"
|
THEMES_DIR="$HOME/.config/omarchy/themes/"
|
||||||
CURRENT_THEME_LINK="$HOME/.config/omarchy/current/theme"
|
CURRENT_THEME_LINK="$HOME/.config/omarchy/current/theme"
|
||||||
|
|
||||||
THEMES=($(find "$THEMES_DIR" -mindepth 1 | sort))
|
THEMES=($(find "$THEMES_DIR" -mindepth 1 -maxdepth 1 | sort))
|
||||||
TOTAL=${#THEMES[@]}
|
TOTAL=${#THEMES[@]}
|
||||||
|
|
||||||
# Get current theme from symlink
|
# Get current theme from symlink
|
||||||
if [[ -L "$CURRENT_THEME_LINK" ]]; then
|
if [[ -L "$CURRENT_THEME_LINK" ]]; then
|
||||||
CURRENT_THEME=$(readlink "$CURRENT_THEME_LINK")
|
CURRENT_THEME=$(realpath "$CURRENT_THEME_LINK")
|
||||||
else
|
else
|
||||||
# Default to first theme if no symlink exists
|
# Default to first theme if no symlink exists
|
||||||
CURRENT_THEME=${THEMES[0]}
|
CURRENT_THEME=$(realpath "${THEMES[0]}")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Find current theme index
|
# Find current theme index
|
||||||
INDEX=0
|
INDEX=0
|
||||||
for i in "${!THEMES[@]}"; do
|
for i in "${!THEMES[@]}"; do
|
||||||
|
THEMES[$i]=$(realpath "${THEMES[$i]}")
|
||||||
|
|
||||||
if [[ "${THEMES[$i]}" == "$CURRENT_THEME" ]]; then
|
if [[ "${THEMES[$i]}" == "$CURRENT_THEME" ]]; then
|
||||||
INDEX=$i
|
INDEX=$i
|
||||||
break
|
break
|
||||||
@@ -28,22 +30,5 @@ NEXT_INDEX=$(((INDEX + 1) % TOTAL))
|
|||||||
NEW_THEME=${THEMES[$NEXT_INDEX]}
|
NEW_THEME=${THEMES[$NEXT_INDEX]}
|
||||||
NEW_THEME_NAME=$(basename "$NEW_THEME")
|
NEW_THEME_NAME=$(basename "$NEW_THEME")
|
||||||
|
|
||||||
# Set current theme
|
~/.local/share/omarchy/bin/omarchy-theme-set $NEW_THEME_NAME
|
||||||
ln -nsf "$HOME/.config/omarchy/backgrounds/$NEW_THEME_NAME" "$HOME/.config/omarchy/current/backgrounds"
|
|
||||||
ln -nsf "$NEW_THEME" "$HOME/.config/omarchy/current/theme"
|
|
||||||
|
|
||||||
# Touch alacritty config to pickup the changed theme
|
|
||||||
touch "$HOME/.config/alacritty/alacritty.toml"
|
|
||||||
|
|
||||||
# Restart for new theme
|
|
||||||
pkill -SIGUSR2 waybar
|
|
||||||
makoctl reload
|
|
||||||
hyprctl reload
|
|
||||||
|
|
||||||
# Set new background
|
|
||||||
ln -nsf $(find "$HOME/.config/omarchy/current/backgrounds/" -type f | head -n 1) "$HOME/.config/omarchy/current/background"
|
|
||||||
pkill -x swaybg
|
|
||||||
setsid swaybg -i "$HOME/.config/omarchy/current/background" -m fill &
|
|
||||||
|
|
||||||
# Notify of the new theme
|
|
||||||
notify-send "Theme changed to $NEW_THEME_NAME" -t 2000
|
notify-send "Theme changed to $NEW_THEME_NAME" -t 2000
|
||||||
Executable
+40
@@ -0,0 +1,40 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# omarchy-theme-remove: Remove a theme from Omarchy by name
|
||||||
|
# Usage: omarchy-theme-remove <theme-name>
|
||||||
|
|
||||||
|
if [ -z "$1" ]; then
|
||||||
|
mapfile -t extra_themes < <(find ~/.config/omarchy/themes -mindepth 1 -maxdepth 1 -type d ! -xtype l -printf '%f\n')
|
||||||
|
|
||||||
|
if [[ ${#extra_themes[@]} -gt 0 ]]; then
|
||||||
|
THEME_NAME=$(gum choose --header="Remove extra theme" "${extra_themes[@]}")
|
||||||
|
else
|
||||||
|
echo "No extra themes installed."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
THEME_NAME="$1"
|
||||||
|
fi
|
||||||
|
|
||||||
|
THEMES_DIR="$HOME/.config/omarchy/themes"
|
||||||
|
CURRENT_DIR="$HOME/.config/omarchy/current"
|
||||||
|
THEME_PATH="$THEMES_DIR/$THEME_NAME"
|
||||||
|
|
||||||
|
# Ensure a theme was set
|
||||||
|
if [ -z "$THEME_NAME" ]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check if theme exists before attempting removal
|
||||||
|
if [ ! -d "$THEME_PATH" ]; then
|
||||||
|
echo "Error: Theme '$THEME_NAME' not found."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Move to the next theme if the current theme is the one being removed
|
||||||
|
if [ "$(readlink -f "$CURRENT_DIR/theme")" = "$(readlink -f "$THEME_PATH")" ]; then
|
||||||
|
~/.local/share/omarchy/bin/omarchy-theme-next
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Now remove the theme directory for THEME_NAME
|
||||||
|
rm -rf "$THEME_PATH"
|
||||||
Executable
+54
@@ -0,0 +1,54 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# omarchy-theme-set: Set a theme, specified by its name.
|
||||||
|
# Usage: omarchy-theme-set <theme-name>
|
||||||
|
|
||||||
|
if [[ -z "$1" && "$1" != "CNCLD" ]]; then
|
||||||
|
echo "Usage: omarchy-theme-set <theme-name>" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
THEMES_DIR="$HOME/.config/omarchy/themes/"
|
||||||
|
CURRENT_THEME_DIR="$HOME/.config/omarchy/current/theme"
|
||||||
|
|
||||||
|
THEME_NAME=$(echo "$1" | sed -E 's/<[^>]+>//g' | tr '[:upper:]' '[:lower:]' | tr ' ' '-')
|
||||||
|
THEME_PATH="$THEMES_DIR/$THEME_NAME"
|
||||||
|
|
||||||
|
# Check if the theme entered exists
|
||||||
|
if [[ ! -d "$THEME_PATH" ]]; then
|
||||||
|
echo "Theme '$THEME_NAME' does not exist in $THEMES_DIR" >&2
|
||||||
|
exit 2
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Update theme symlinks
|
||||||
|
ln -nsf "$THEME_PATH" "$CURRENT_THEME_DIR"
|
||||||
|
|
||||||
|
# Change gnome modes
|
||||||
|
if [[ -f ~/.config/omarchy/current/theme/light.mode ]]; then
|
||||||
|
gsettings set org.gnome.desktop.interface color-scheme "prefer-light"
|
||||||
|
gsettings set org.gnome.desktop.interface gtk-theme "Adwaita"
|
||||||
|
else
|
||||||
|
gsettings set org.gnome.desktop.interface color-scheme "prefer-dark"
|
||||||
|
gsettings set org.gnome.desktop.interface gtk-theme "Adwaita-dark"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Change gnome icon theme color
|
||||||
|
if [[ -f ~/.config/omarchy/current/theme/icons.theme ]]; then
|
||||||
|
gsettings set org.gnome.desktop.interface icon-theme "$(<~/.config/omarchy/current/theme/icons.theme)"
|
||||||
|
else
|
||||||
|
gsettings set org.gnome.desktop.interface icon-theme "Yaru-blue"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Trigger alacritty config reload
|
||||||
|
touch "$HOME/.config/alacritty/alacritty.toml"
|
||||||
|
|
||||||
|
# Restart components to apply new theme
|
||||||
|
pkill -SIGUSR2 btop
|
||||||
|
~/.local/share/omarchy/bin/omarchy-restart-waybar
|
||||||
|
pkill swayosd-server
|
||||||
|
setsid uwsm app -- swayosd-server &>/dev/null &
|
||||||
|
makoctl reload
|
||||||
|
hyprctl reload
|
||||||
|
|
||||||
|
# Set new background
|
||||||
|
~/.local/share/omarchy/bin/omarchy-theme-bg-next
|
||||||
Executable
+9
@@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-logo
|
||||||
|
|
||||||
|
for dir in ~/.config/omarchy/themes/*/; do
|
||||||
|
[ -d "$dir" ] && [ ! -L "${dir%/}" ] && echo "Updating: $(basename "$dir")" && git -C "$dir" pull
|
||||||
|
done
|
||||||
|
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-done
|
||||||
Executable
+9
@@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if pgrep -x hypridle >/dev/null; then
|
||||||
|
pkill -x hypridle
|
||||||
|
notify-send "Stop locking computer when idle"
|
||||||
|
else
|
||||||
|
uwsm app -- hypridle >/dev/null 2>&1 &
|
||||||
|
notify-send "Now locking computer when idle"
|
||||||
|
fi
|
||||||
Executable
+30
@@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Default temperature values
|
||||||
|
ON_TEMP=4000
|
||||||
|
OFF_TEMP=6000
|
||||||
|
|
||||||
|
# Ensure hyprsunset is running
|
||||||
|
if ! pgrep -x hyprsunset; then
|
||||||
|
setsid uwsm app -- hyprsunset &
|
||||||
|
sleep 1 # Give it time to register
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Query the current temperature
|
||||||
|
CURRENT_TEMP=$(hyprctl hyprsunset temperature 2>/dev/null | grep -oE '[0-9]+')
|
||||||
|
|
||||||
|
restart_nightlighted_waybar() {
|
||||||
|
if grep -q "custom/nightlight" ~/.config/waybar/config.jsonc; then
|
||||||
|
omarchy-restart-waybar # restart waybar in case user has waybar module for hyprsunset
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
if [[ "$CURRENT_TEMP" == "$OFF_TEMP" ]]; then
|
||||||
|
hyprctl hyprsunset temperature $ON_TEMP
|
||||||
|
notify-send " Nightlight screen temperature"
|
||||||
|
restart_nightlighted_waybar
|
||||||
|
else
|
||||||
|
hyprctl hyprsunset temperature $OFF_TEMP
|
||||||
|
notify-send " Daylight screen temperature"
|
||||||
|
restart_nightlighted_waybar
|
||||||
|
fi
|
||||||
+22
-23
@@ -1,28 +1,27 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
cd ~/.local/share/omarchy
|
# Exit immediately if a command exits with a non-zero status
|
||||||
|
set -e
|
||||||
|
|
||||||
if [[ $1 == "all" ]]; then
|
# Show logo
|
||||||
# Run all migrations
|
clear
|
||||||
last_updated_at=1
|
cat <~/.local/share/omarchy/logo.txt
|
||||||
else
|
|
||||||
# Remember the version we're at before upgrading
|
# Get the latest while trying to preserve any modifications
|
||||||
last_updated_at=$(git log -1 --format=%cd --date=unix)
|
omarchy_path=~/.local/share/omarchy
|
||||||
|
git -C $omarchy_path pull --autostash
|
||||||
|
git -C $omarchy_path diff --check || git -C $omarchy_path reset --merge
|
||||||
|
|
||||||
|
# Run migrations
|
||||||
|
~/.local/share/omarchy/bin/omarchy-migrate
|
||||||
|
|
||||||
|
# Update system packages
|
||||||
|
echo -e "\e[32m\nUpdate system packages\e[0m"
|
||||||
|
yay -Syu --noconfirm
|
||||||
|
|
||||||
|
# Offer to reboot if the kernel has been changed
|
||||||
|
if [ "$(uname -r | sed 's/-arch/\.arch/')" != "$(pacman -Q linux | awk '{print $2}')" ]; then
|
||||||
|
gum confirm "Linux kernel has been updated. Reboot?" && sudo reboot now
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Get the latest
|
~/.local/share/omarchy/bin/omarchy-show-done
|
||||||
git pull
|
|
||||||
|
|
||||||
# Run any pending migrations
|
|
||||||
for file in migrations/*.sh; do
|
|
||||||
filename=$(basename "$file")
|
|
||||||
migrate_at="${filename%.sh}"
|
|
||||||
|
|
||||||
if [ $migrate_at -gt $last_updated_at ]; then
|
|
||||||
echo "Running migration ($migrate_at)"
|
|
||||||
source $file
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
# Back to where we came from
|
|
||||||
cd - >/dev/null
|
|
||||||
Executable
+20
@@ -0,0 +1,20 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
omarchy_path="$HOME/.local/share/omarchy"
|
||||||
|
|
||||||
|
# Ensure remote is reachable
|
||||||
|
if ! git -C "$omarchy_path" ls-remote &>/dev/null; then
|
||||||
|
echo "Error: Unable to reach remote repository."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
latest_tag=$(git -C "$omarchy_path" ls-remote --tags origin | grep -v "{}" | awk '{print $2}' | sed 's#refs/tags/##' | sort -V | tail -n 1)
|
||||||
|
current_tag=$(git -C "$omarchy_path" describe --tags $(git -C "$omarchy_path" rev-list --tags --max-count=1))
|
||||||
|
|
||||||
|
if [[ "$current_tag" != "$latest_tag" ]]; then
|
||||||
|
echo "Omarchy update available ($latest_tag)"
|
||||||
|
exit 0
|
||||||
|
else
|
||||||
|
echo "Omarchy is up to date ($current_tag)"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
Executable
+48
@@ -0,0 +1,48 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ "$#" -ne 3 ]; then
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-logo
|
||||||
|
echo -e "\e[32mLet's create a new web app you can start with the app launcher.\n\e[0m"
|
||||||
|
APP_NAME=$(gum input --prompt "Name> " --placeholder "My favorite web app")
|
||||||
|
APP_URL=$(gum input --prompt "URL> " --placeholder "https://example.com")
|
||||||
|
ICON_URL=$(gum input --prompt "Icon URL> " --placeholder "See https://dashboardicons.com (must use PNG!)")
|
||||||
|
else
|
||||||
|
APP_NAME="$1"
|
||||||
|
APP_URL="$2"
|
||||||
|
ICON_URL="$3"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z "$APP_NAME" || -z "$APP_URL" || -z "$ICON_URL" ]]; then
|
||||||
|
echo "You must set app name, app URL, and icon URL!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
ICON_DIR="$HOME/.local/share/applications/icons"
|
||||||
|
DESKTOP_FILE="$HOME/.local/share/applications/$APP_NAME.desktop"
|
||||||
|
ICON_PATH="$ICON_DIR/$APP_NAME.png"
|
||||||
|
|
||||||
|
mkdir -p "$ICON_DIR"
|
||||||
|
|
||||||
|
if ! curl -sL -o "$ICON_PATH" "$ICON_URL"; then
|
||||||
|
echo "Error: Failed to download icon."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cat >"$DESKTOP_FILE" <<EOF
|
||||||
|
[Desktop Entry]
|
||||||
|
Version=1.0
|
||||||
|
Name=$APP_NAME
|
||||||
|
Comment=$APP_NAME
|
||||||
|
Exec=chromium --new-window --ozone-platform=wayland --app="$APP_URL" --name="$APP_NAME" --class="$APP_NAME"
|
||||||
|
Terminal=false
|
||||||
|
Type=Application
|
||||||
|
Icon=$ICON_PATH
|
||||||
|
StartupNotify=true
|
||||||
|
EOF
|
||||||
|
|
||||||
|
chmod +x "$DESKTOP_FILE"
|
||||||
|
|
||||||
|
if [ "$#" -ne 3 ]; then
|
||||||
|
echo -e "You can now find $APP_NAME using the app launcher (SUPER + SPACE)\n"
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-done
|
||||||
|
fi
|
||||||
Executable
+39
@@ -0,0 +1,39 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
ICON_DIR="$HOME/.local/share/applications/icons"
|
||||||
|
DESKTOP_DIR="$HOME/.local/share/applications/"
|
||||||
|
|
||||||
|
if [ "$#" -ne 1 ]; then
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-logo
|
||||||
|
|
||||||
|
# Find all web apps
|
||||||
|
while IFS= read -r -d '' file; do
|
||||||
|
if grep -q '^Exec=.*chromium.*--app' "$file"; then
|
||||||
|
WEB_APPS+=("$(basename "${file%.desktop}")")
|
||||||
|
fi
|
||||||
|
done < <(find "$DESKTOP_DIR" -name '*.desktop' -print0)
|
||||||
|
|
||||||
|
if ((${#WEB_APPS[@]})); then
|
||||||
|
IFS=$'\n' SORTED_WEB_APPS=($(sort <<<"${WEB_APPS[*]}"))
|
||||||
|
unset IFS
|
||||||
|
APP_NAME=$(gum choose --header "Select web app to remove..." "${SORTED_WEB_APPS[@]}")
|
||||||
|
else
|
||||||
|
echo "No web apps to remove."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
APP_NAME="$1"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z "$APP_NAME" ]]; then
|
||||||
|
echo "You must provide web app name."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm "$DESKTOP_DIR/$APP_NAME.desktop"
|
||||||
|
rm "$ICON_DIR/$APP_NAME.png"
|
||||||
|
|
||||||
|
if [ "$#" -ne 1 ]; then
|
||||||
|
echo -e "Removed $APP_NAME\n"
|
||||||
|
~/.local/share/omarchy/bin/omarchy-show-done
|
||||||
|
fi
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Cycles through the background images available
|
|
||||||
|
|
||||||
BACKGROUNDS_DIR="$HOME/.config/omarchy/current/backgrounds/"
|
|
||||||
CURRENT_BACKGROUND_LINK="$HOME/.config/omarchy/current/background"
|
|
||||||
|
|
||||||
BACKGROUNDS=($(find "$BACKGROUNDS_DIR" -type f | sort))
|
|
||||||
TOTAL=${#BACKGROUNDS[@]}
|
|
||||||
|
|
||||||
# Get current background from symlink
|
|
||||||
if [[ -L "$CURRENT_BACKGROUND_LINK" ]]; then
|
|
||||||
CURRENT_BACKGROUND=$(readlink "$CURRENT_BACKGROUND_LINK")
|
|
||||||
else
|
|
||||||
# Default to first background if no symlink exists
|
|
||||||
CURRENT_BACKGROUND=${BACKGROUNDS[0]}
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Find current background index
|
|
||||||
INDEX=0
|
|
||||||
for i in "${!BACKGROUNDS[@]}"; do
|
|
||||||
if [[ "${BACKGROUNDS[$i]}" == "$CURRENT_BACKGROUND" ]]; then
|
|
||||||
INDEX=$i
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
# Get next background (wrap around)
|
|
||||||
NEXT_INDEX=$(((INDEX + 1) % TOTAL))
|
|
||||||
NEW_BACKGROUND=${BACKGROUNDS[$NEXT_INDEX]}
|
|
||||||
|
|
||||||
# Set new background symlink
|
|
||||||
ln -nsf "$NEW_BACKGROUND" "$CURRENT_BACKGROUND_LINK"
|
|
||||||
|
|
||||||
# Relaunch swaybg
|
|
||||||
pkill -x swaybg
|
|
||||||
setsid swaybg -i "$NEW_BACKGROUND" -m fill >/dev/null 2>&2 &
|
|
||||||
@@ -1,20 +1,27 @@
|
|||||||
ascii_art=' ▄██████▄ ▄▄▄▄███▄▄▄▄ ▄████████ ▄████████ ▄████████ ▄█ █▄ ▄██ ▄
|
#!/bin/bash
|
||||||
███ ███ ▄██▀▀▀███▀▀▀██▄ ███ ███ ███ ███ ███ ███ ███ ███ ███ ██▄
|
|
||||||
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ █▀ ███ ███ ███▄▄▄███
|
|
||||||
███ ███ ███ ███ ███ ███ ███ ▄███▄▄▄▄██▀ ███ ▄███▄▄▄▄███▄▄ ▀▀▀▀▀▀███
|
|
||||||
███ ███ ███ ███ ███ ▀███████████ ▀▀███▀▀▀▀▀ ███ ▀▀███▀▀▀▀███▀ ▄██ ███
|
|
||||||
███ ███ ███ ███ ███ ███ ███ ▀███████████ ███ █▄ ███ ███ ███ ███
|
|
||||||
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
|
|
||||||
▀██████▀ ▀█ ███ █▀ ███ █▀ ███ ███ ████████▀ ███ █▀ ▀█████▀
|
|
||||||
███ ███ '
|
|
||||||
|
|
||||||
echo -e "\n$ascii_art\n"
|
ansi_art=' ▄▄▄
|
||||||
|
▄█████▄ ▄███████████▄ ▄███████ ▄███████ ▄███████ ▄█ █▄ ▄█ █▄
|
||||||
|
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
|
||||||
|
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ █▀ ███ ███ ███ ███
|
||||||
|
███ ███ ███ ███ ███ ▄███▄▄▄███ ▄███▄▄▄██▀ ███ ▄███▄▄▄███▄ ███▄▄▄███
|
||||||
|
███ ███ ███ ███ ███ ▀███▀▀▀███ ▀███▀▀▀▀ ███ ▀▀███▀▀▀███ ▀▀▀▀▀▀███
|
||||||
|
███ ███ ███ ███ ███ ███ ███ ██████████ ███ █▄ ███ ███ ▄██ ███
|
||||||
|
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
|
||||||
|
▀█████▀ ▀█ ███ █▀ ███ █▀ ███ ███ ███████▀ ███ █▀ ▀█████▀
|
||||||
|
███ █▀ '
|
||||||
|
|
||||||
pacman -Q git &>/dev/null || sudo pacman -Sy --noconfirm --needed git
|
clear
|
||||||
|
echo -e "\n$ansi_art\n"
|
||||||
|
|
||||||
echo -e "\nCloning Omarchy..."
|
sudo pacman -Sy --noconfirm --needed git
|
||||||
|
|
||||||
|
# Use custom repo if specified, otherwise default to basecamp/omarchy
|
||||||
|
OMARCHY_REPO="${OMARCHY_REPO:-basecamp/omarchy}"
|
||||||
|
|
||||||
|
echo -e "\nCloning Omarchy from: https://github.com/${OMARCHY_REPO}.git"
|
||||||
rm -rf ~/.local/share/omarchy/
|
rm -rf ~/.local/share/omarchy/
|
||||||
git clone https://github.com/basecamp/omarchy.git ~/.local/share/omarchy >/dev/null
|
git clone "https://github.com/${OMARCHY_REPO}.git" ~/.local/share/omarchy >/dev/null
|
||||||
|
|
||||||
# Use custom branch if instructed
|
# Use custom branch if instructed
|
||||||
if [[ -n "$OMARCHY_REF" ]]; then
|
if [[ -n "$OMARCHY_REF" ]]; then
|
||||||
|
|||||||
@@ -0,0 +1,3 @@
|
|||||||
|
--ozone-platform=wayland
|
||||||
|
--ozone-platform-hint=wayland
|
||||||
|
--enable-features=TouchpadOverscrollHistoryNavigation
|
||||||
@@ -1,5 +1,4 @@
|
|||||||
INPUT_METHOD=fcitx
|
INPUT_METHOD=fcitx
|
||||||
GTK_IM_MODULE=fcitx
|
|
||||||
QT_IM_MODULE=fcitx
|
QT_IM_MODULE=fcitx
|
||||||
XMODIFIERS=@im=fcitx
|
XMODIFIERS=@im=fcitx
|
||||||
SDL_IM_MODULE=fcitx
|
SDL_IM_MODULE=fcitx
|
||||||
+146
-141
@@ -1,144 +1,149 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
|
"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
|
||||||
"logo": {
|
"logo": {
|
||||||
"padding": {
|
"padding": {
|
||||||
"top": 5,
|
"top": 5,
|
||||||
"right": 6
|
"right": 6
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"modules": [
|
||||||
|
"break",
|
||||||
|
{
|
||||||
|
"type": "custom",
|
||||||
|
"format": "\u001b[90m┌──────────────────────Hardware──────────────────────┐"
|
||||||
},
|
},
|
||||||
"modules": [
|
{
|
||||||
"break",
|
"type": "host",
|
||||||
{
|
"key": " PC",
|
||||||
"type": "custom",
|
"keyColor": "green"
|
||||||
"format": "\u001b[90m┌──────────────────────Hardware──────────────────────┐"
|
},
|
||||||
},
|
{
|
||||||
{
|
"type": "cpu",
|
||||||
"type": "host",
|
"key": "│ ├",
|
||||||
"key": " PC",
|
"showPeCoreCount": true,
|
||||||
"keyColor": "green"
|
"keyColor": "green"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "cpu",
|
"type": "gpu",
|
||||||
"key": "│ ├",
|
"key": "│ ├",
|
||||||
"showPeCoreCount": true,
|
"detectionMethod": "pci",
|
||||||
"keyColor": "green"
|
"keyColor": "green"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "gpu",
|
"type": "display",
|
||||||
"key": "│ ├",
|
"key": "│ ├",
|
||||||
"detectionMethod": "pci",
|
"keyColor": "green"
|
||||||
"keyColor": "green"
|
},
|
||||||
},
|
{
|
||||||
{
|
"type": "disk",
|
||||||
"type": "display",
|
"key": "│ ├",
|
||||||
"key": "│ ├",
|
"keyColor": "green"
|
||||||
"keyColor": "green"
|
},
|
||||||
},
|
{
|
||||||
{
|
"type": "memory",
|
||||||
"type": "disk",
|
"key": "│ ├",
|
||||||
"key": "│ ├",
|
"keyColor": "green"
|
||||||
"keyColor": "green"
|
},
|
||||||
},
|
{
|
||||||
{
|
"type": "swap",
|
||||||
"type": "memory",
|
"key": "└ └ ",
|
||||||
"key": "│ ├",
|
"keyColor": "green"
|
||||||
"keyColor": "green"
|
},
|
||||||
},
|
{
|
||||||
{
|
"type": "custom",
|
||||||
"type": "swap",
|
"format": "\u001b[90m└────────────────────────────────────────────────────┘"
|
||||||
"key": "└ └ ",
|
},
|
||||||
"keyColor": "green",
|
"break",
|
||||||
},
|
{
|
||||||
{
|
"type": "custom",
|
||||||
"type": "custom",
|
"format": "\u001b[90m┌──────────────────────Software──────────────────────┐"
|
||||||
"format": "\u001b[90m└────────────────────────────────────────────────────┘"
|
},
|
||||||
},
|
{
|
||||||
"break",
|
"type": "os",
|
||||||
{
|
"key": " OS",
|
||||||
"type": "custom",
|
"keyColor": "yellow"
|
||||||
"format": "\u001b[90m┌──────────────────────Software──────────────────────┐"
|
},
|
||||||
},
|
{
|
||||||
{
|
"type": "kernel",
|
||||||
"type": "os",
|
"key": "│ ├",
|
||||||
"key": " OS",
|
"keyColor": "yellow"
|
||||||
"keyColor": "yellow"
|
},
|
||||||
},
|
{
|
||||||
{
|
"type": "packages",
|
||||||
"type": "kernel",
|
"key": "│ ├",
|
||||||
"key": "│ ├",
|
"keyColor": "yellow"
|
||||||
"keyColor": "yellow"
|
},
|
||||||
},
|
{
|
||||||
{
|
"type": "shell",
|
||||||
"type": "packages",
|
"key": "└ └",
|
||||||
"key": "│ ├",
|
"keyColor": "yellow"
|
||||||
"keyColor": "yellow"
|
},
|
||||||
},
|
"break",
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "command",
|
||||||
"key": "└ └",
|
"key": "│ ├Ø",
|
||||||
"keyColor": "yellow"
|
"keyColor": "blue",
|
||||||
},
|
"text": "version=$(git -C ~/.local/share/omarchy describe --tags --abbrev=0 2>/dev/null); echo \"Omarchy $version\""
|
||||||
"break",
|
},
|
||||||
{
|
{
|
||||||
"type": "de",
|
"type": "de",
|
||||||
"key": " DE",
|
"key": " DE",
|
||||||
"keyColor": "blue"
|
"keyColor": "blue"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "wm",
|
"type": "wm",
|
||||||
"key": "│ ├",
|
"key": "│ ├",
|
||||||
"keyColor": "blue"
|
"keyColor": "blue"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "wmtheme",
|
"type": "wmtheme",
|
||||||
"key": "│ ├",
|
"key": "│ ├",
|
||||||
"keyColor": "blue"
|
"keyColor": "blue"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "icons",
|
"type": "icons",
|
||||||
"key": "│ ├",
|
"key": "│ ├",
|
||||||
"keyColor": "blue",
|
"keyColor": "blue"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "cursor",
|
"type": "cursor",
|
||||||
"key": "│ ├",
|
"key": "│ ├",
|
||||||
"keyColor": "blue",
|
"keyColor": "blue"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "terminalfont",
|
"type": "terminalfont",
|
||||||
"key": "│ ├",
|
"key": "│ ├",
|
||||||
"keyColor": "blue",
|
"keyColor": "blue"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "terminal",
|
"type": "terminal",
|
||||||
"key": "└ └",
|
"key": "└ └",
|
||||||
"keyColor": "blue"
|
"keyColor": "blue"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "custom",
|
"type": "custom",
|
||||||
"format": "\u001b[90m└────────────────────────────────────────────────────┘"
|
"format": "\u001b[90m└────────────────────────────────────────────────────┘"
|
||||||
},
|
},
|
||||||
"break",
|
"break",
|
||||||
{
|
{
|
||||||
"type": "custom",
|
"type": "custom",
|
||||||
"format": "\u001b[90m┌────────────────────Uptime / Age────────────────────┐"
|
"format": "\u001b[90m┌────────────────────Uptime / Age────────────────────┐"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "command",
|
"type": "command",
|
||||||
"key": " OS Age ",
|
"key": " OS Age ",
|
||||||
"keyColor": "magenta",
|
"keyColor": "magenta",
|
||||||
"text": "birth_install=$(stat -c %W /); current=$(date +%s); time_progression=$((current - birth_install)); days_difference=$((time_progression / 86400)); echo $days_difference days"
|
"text": "birth_install=$(stat -c %W /); current=$(date +%s); time_progression=$((current - birth_install)); days_difference=$((time_progression / 86400)); echo $days_difference days"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "uptime",
|
"type": "uptime",
|
||||||
"key": " Uptime ",
|
"key": " Uptime ",
|
||||||
"keyColor": "magenta"
|
"keyColor": "magenta"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "custom",
|
"type": "custom",
|
||||||
"format": "\u001b[90m└────────────────────────────────────────────────────┘"
|
"format": "\u001b[90m└────────────────────────────────────────────────────┘"
|
||||||
},
|
},
|
||||||
"break",
|
"break"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -0,0 +1,58 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
||||||
|
<fontconfig>
|
||||||
|
<match target="pattern">
|
||||||
|
<test name="family" qual="any">
|
||||||
|
<string>sans-serif</string>
|
||||||
|
</test>
|
||||||
|
<edit name="family" mode="assign" binding="strong">
|
||||||
|
<string>Liberation Sans</string>
|
||||||
|
</edit>
|
||||||
|
</match>
|
||||||
|
|
||||||
|
<match target="pattern">
|
||||||
|
<test name="family" qual="any">
|
||||||
|
<string>serif</string>
|
||||||
|
</test>
|
||||||
|
<edit name="family" mode="assign" binding="strong">
|
||||||
|
<string>Liberation Serif</string>
|
||||||
|
</edit>
|
||||||
|
</match>
|
||||||
|
|
||||||
|
<match target="pattern">
|
||||||
|
<test name="family" qual="any">
|
||||||
|
<string>monospace</string>
|
||||||
|
</test>
|
||||||
|
<edit name="family" mode="assign" binding="strong">
|
||||||
|
<string>CaskaydiaMono Nerd Font</string>
|
||||||
|
</edit>
|
||||||
|
</match>
|
||||||
|
|
||||||
|
<alias>
|
||||||
|
<family>system-ui</family>
|
||||||
|
<prefer>
|
||||||
|
<family>Liberation Sans</family>
|
||||||
|
</prefer>
|
||||||
|
</alias>
|
||||||
|
|
||||||
|
<alias>
|
||||||
|
<family>ui-monospace</family>
|
||||||
|
<default>
|
||||||
|
<family>monospace</family>
|
||||||
|
</default>
|
||||||
|
</alias>
|
||||||
|
|
||||||
|
<alias>
|
||||||
|
<family>-apple-system</family>
|
||||||
|
<prefer>
|
||||||
|
<family>Liberation Sans</family>
|
||||||
|
</prefer>
|
||||||
|
</alias>
|
||||||
|
|
||||||
|
<alias>
|
||||||
|
<family>BlinkMacSystemFont</family>
|
||||||
|
<prefer>
|
||||||
|
<family>Liberation Sans</family>
|
||||||
|
</prefer>
|
||||||
|
</alias>
|
||||||
|
</fontconfig>
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
# Extra autostart processes
|
||||||
|
# exec-once = uwsm app -- my-service
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
# Application bindings
|
||||||
|
$terminal = uwsm app -- alacritty
|
||||||
|
$browser = uwsm app -- chromium --new-window --ozone-platform=wayland
|
||||||
|
$webapp = $browser --app
|
||||||
|
|
||||||
|
bindd = SUPER, return, Terminal, exec, $terminal
|
||||||
|
bindd = SUPER, F, File manager, exec, uwsm app -- nautilus --new-window
|
||||||
|
bindd = SUPER, B, Browser, exec, $browser
|
||||||
|
bindd = SUPER, M, Music, exec, uwsm app -- spotify
|
||||||
|
bindd = SUPER, N, Neovim, exec, $terminal -e nvim
|
||||||
|
bindd = SUPER, T, Activity, exec, $terminal -e btop
|
||||||
|
bindd = SUPER, D, Docker, exec, $terminal -e lazydocker
|
||||||
|
bindd = SUPER, G, Signal, exec, uwsm app -- signal-desktop
|
||||||
|
bindd = SUPER, O, Obsidian, exec, uwsm app -- obsidian -disable-gpu
|
||||||
|
bindd = SUPER, slash, Passwords, exec, uwsm app -- 1password
|
||||||
|
|
||||||
|
bindd = SUPER, A, ChatGPT, exec, $webapp="https://chatgpt.com"
|
||||||
|
bindd = SUPER SHIFT, A, Grok, exec, $webapp="https://grok.com"
|
||||||
|
bindd = SUPER, C, Calendar, exec, $webapp="https://app.hey.com/calendar/weeks/"
|
||||||
|
bindd = SUPER, E, Email, exec, $webapp="https://app.hey.com"
|
||||||
|
bindd = SUPER, Y, YouTube, exec, $webapp="https://youtube.com/"
|
||||||
|
bindd = SUPER SHIFT, G, WhatsApp, exec, $webapp="https://web.whatsapp.com/"
|
||||||
|
bindd = SUPER ALT, G, Google Messages, exec, $webapp="https://messages.google.com/web/conversations"
|
||||||
|
bindd = SUPER, X, X, exec, $webapp="https://x.com/"
|
||||||
|
bindd = SUPER SHIFT, X, X Post, exec, $webapp="https://x.com/compose/post"
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
# Extra env variables
|
||||||
|
# Note: You must relaunch Hyprland after changing envs (use Super+Esc, then Relaunch)
|
||||||
|
# env = MY_GLOBAL_ENV,setting
|
||||||
Loaded 100 of 391 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user