mirror of
https://github.com/basecamp/omarchy.git
synced 2025-07-27 12:19:24 +00:00
Compare commits
30 Commits
5e4c309b2c
...
v1.6.0
Author | SHA1 | Date | |
---|---|---|---|
11dfeae901 | |||
8c0ac90fe4 | |||
d83a87a01c | |||
f0a9271506 | |||
faaf672eb4 | |||
0058023e85 | |||
4fedfbe9f1 | |||
1976eafbcd | |||
cce56a2684 | |||
c4b45779fe | |||
d706eda676 | |||
7c75cbbcd5 | |||
69e48758fd | |||
2332a4f6db | |||
bacaabe4a1 | |||
60f5a3b063 | |||
7a7a08f9c3 | |||
4421f20e82 | |||
071be3abcb | |||
771313b836 | |||
dbe3ec8b2f | |||
5be61c17a1 | |||
98f5669637 | |||
bcf0e1ebf9 | |||
f06e11ac47 | |||
03192de90e | |||
c0bb83e76c | |||
da597ac567 | |||
620b397859 | |||
03053626e3 |
51
applications/mpv.desktop
Normal file
51
applications/mpv.desktop
Normal file
@ -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;إم بي في;ام بي في;وسائط;مشغل;فيديو;مرئية;صوتي;تلفاز;
|
20
bin/omarchy
20
bin/omarchy
@ -94,9 +94,10 @@ remove_theme_prompt() {
|
||||
|
||||
setup_menu() {
|
||||
show_ascii_art
|
||||
local menu=("Dropbox" "Fingerprint sensor" "Fido2 device" "Back")
|
||||
local menu=("Dropbox" "Docker DBs" "Fingerprint sensor" "Fido2 device" "Back")
|
||||
local commands=(
|
||||
"omarchy-setup-dropbox"
|
||||
"setup_docker_dbs"
|
||||
"omarchy-setup-fingerprint"
|
||||
"omarchy-setup-fido2"
|
||||
"main_menu"
|
||||
@ -117,6 +118,23 @@ setup_menu() {
|
||||
done
|
||||
}
|
||||
|
||||
setup_docker_dbs() {
|
||||
options=("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 ;;
|
||||
Redis) sudo docker run -d --restart unless-stopped -p "127.0.0.1:6379:6379" --name=redis redis:7 ;;
|
||||
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 ;;
|
||||
esac
|
||||
done
|
||||
fi
|
||||
|
||||
main_menu
|
||||
}
|
||||
|
||||
open_manual() {
|
||||
setsid chromium --new-window --ozone-platform=wayland --app="https://manuals.omamix.org/2/the-omarchy-manual" >/dev/null 2>&1 &
|
||||
clear
|
||||
|
@ -1,7 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [[ ! -f ~/.local/state/omarchy/after-first-run.mode ]]; then
|
||||
mkdir -p ~/.local/state/omarchy
|
||||
touch ~/.local/state/omarchy/after-first-run.mode
|
||||
uwsm app -- alacritty -e ~/.local/share/omarchy/bin/omarchy-first-run-flow
|
||||
fi
|
@ -1,54 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
source ~/.local/share/omarchy/ansi.sh
|
||||
|
||||
if gum confirm "Install editor in addition to Neovim?"; then
|
||||
options=("VSCode" "Cursor" "Zed" "Helix" "Nevermind")
|
||||
choice=$(printf "%s\n" "${options[@]}" | gum choose --header "Add programming editor") || exit 0
|
||||
|
||||
case "$choice" in
|
||||
VSCode) yay -Sy --noconfirm --needed vscodium-electron-bin ;;
|
||||
Cursor) yay -Sy --noconfirm --needed cursor-bin ;;
|
||||
Zed) yay -Sy --noconfirm --needed zed ;;
|
||||
Helix) yay -Sy --noconfirm --needed helix ;;
|
||||
Nevermind) ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
source ~/.local/share/omarchy/ansi.sh
|
||||
|
||||
if gum confirm "Setup Dropbox?"; then
|
||||
gtk-launch chromium # FIXME: Workaround for Dropbox to be able to open with the correct scaling during initial setup
|
||||
~/.local/share/omarchy/bin/omarchy-setup-dropbox
|
||||
fi
|
||||
|
||||
source ~/.local/share/omarchy/ansi.sh
|
||||
|
||||
if gum confirm "Login to GitHub?"; then
|
||||
gh auth login
|
||||
fi
|
||||
|
||||
source ~/.local/share/omarchy/ansi.sh
|
||||
|
||||
if gum confirm "Start Docker DBs?"; then
|
||||
options=("MySQL" "Redis" "PostgreSQL")
|
||||
choices=$(printf "%s\n" "${options[@]}" | gum choose --no-limit --header "Select databases (space to select, return to install)") || exit 0
|
||||
|
||||
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 ;;
|
||||
Redis) sudo docker run -d --restart unless-stopped -p "127.0.0.1:6379:6379" --name=redis redis:7 ;;
|
||||
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 ;;
|
||||
esac
|
||||
done
|
||||
fi
|
||||
fi
|
||||
|
||||
source ~/.local/share/omarchy/ansi.sh
|
||||
echo "Updating all system packages..."
|
||||
yay -Syu --noconfirm
|
||||
|
||||
setsid gtk-launch "Omarchy Manual" >/dev/null 2>&1 &
|
||||
gum spin --spinner "globe" --title "You're all set!" -- sleep 2
|
||||
clear
|
@ -44,5 +44,5 @@ else
|
||||
|
||||
# Relaunch swaybg
|
||||
pkill -x swaybg
|
||||
uwsm app -- swaybg -i "$NEW_BACKGROUND" -m fill >/dev/null 2>&1 &
|
||||
uwsm app -- swaybg -i "$CURRENT_BACKGROUND_LINK" -m fill >/dev/null 2>&1 &
|
||||
fi
|
||||
|
@ -14,12 +14,6 @@ CURRENT_THEME_DIR="$HOME/.config/omarchy/current/theme"
|
||||
THEME_NAME="$1"
|
||||
THEME_PATH="$THEMES_DIR/$THEME_NAME"
|
||||
|
||||
if [[ -d "$HOME/.config/omarchy/themes/$THEME_NAME/backgrounds" ]]; then
|
||||
BACKGROUND_PATH="$HOME/.config/omarchy/themes/$THEME_NAME/backgrounds"
|
||||
else
|
||||
BACKGROUND_PATH="$HOME/.config/omarchy/backgrounds/$THEME_NAME"
|
||||
fi
|
||||
|
||||
# Check if the theme entered exists
|
||||
if [[ ! -d "$THEME_PATH" ]]; then
|
||||
echo "Theme '$THEME_NAME' does not exist in $THEMES_DIR" >&2
|
||||
|
@ -23,8 +23,9 @@ for file in $(git diff --name-only --diff-filter=A $migration_starting_point.. m
|
||||
source $file
|
||||
done
|
||||
|
||||
# Update system packages
|
||||
echo -e "\e[32m\nUpdate system packages\e[0m"
|
||||
yay -Syu --noconfirm
|
||||
|
||||
# Back to where we came from
|
||||
cd - >/dev/null
|
||||
|
||||
# Update system packages
|
||||
yay -Syu --noconfirm
|
||||
|
2
boot.sh
2
boot.sh
@ -12,7 +12,7 @@ ansi_art=' ▄██████▄ ▄▄▄▄███▄▄▄▄
|
||||
|
||||
echo -e "\n$ansi_art\n"
|
||||
|
||||
pacman -Q git &>/dev/null || sudo pacman -Sy --noconfirm --needed git
|
||||
sudo pacman -Sy --noconfirm --needed git
|
||||
|
||||
echo -e "\nCloning Omarchy..."
|
||||
rm -rf ~/.local/share/omarchy/
|
||||
|
@ -7,4 +7,3 @@ exec-once = uwsm app -- swayosd-server
|
||||
exec-once = uwsm app -- walker --gapplication-service
|
||||
exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
|
||||
exec-once = wl-clip-persist --clipboard regular --all-mime-type-regex '^(?!x-kde-passwordManagerHint).+'
|
||||
exec-once = ~/.local/share/omarchy/bin/omarchy-first-run
|
||||
|
@ -21,4 +21,7 @@ done
|
||||
# Ensure locate is up to date now that everything has been installed
|
||||
sudo updatedb
|
||||
|
||||
# Update all built-in packages
|
||||
sudo pacman -Syu --noconfirm
|
||||
|
||||
gum confirm "Reboot to apply all settings?" && reboot
|
||||
|
15
install/detect-keyboard-layout.sh
Executable file
15
install/detect-keyboard-layout.sh
Executable file
@ -0,0 +1,15 @@
|
||||
#!/bin/bash
|
||||
|
||||
conf="/etc/vconsole.conf"
|
||||
hyprconf="$HOME/.config/hypr/hyprland.conf"
|
||||
|
||||
layout=$(grep '^XKBLAYOUT=' "$conf" | cut -d= -f2 | tr -d '"')
|
||||
variant=$(grep '^XKBVARIANT=' "$conf" | cut -d= -f2 | tr -d '"')
|
||||
|
||||
if [[ -n "$layout" ]]; then
|
||||
sed -i "/^[[:space:]]*kb_options *=/i\ kb_layout = $layout" "$hyprconf"
|
||||
fi
|
||||
|
||||
if [[ -n "$variant" ]]; then
|
||||
sed -i "/^[[:space:]]*kb_options *=/i\ kb_variant = $variant" "$hyprconf"
|
||||
fi
|
@ -1,7 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
if ! command -v ufw &>/dev/null; then
|
||||
yay -Sy --noconfirm --needed ufw ufw-docker
|
||||
yay -S --noconfirm --needed ufw ufw-docker
|
||||
|
||||
# Allow nothing in, everything out
|
||||
sudo ufw default deny incoming
|
||||
|
@ -1,9 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ -z "$OMARCHY_BARE" ]; then
|
||||
yay -Sy --noconfirm --needed ttf-font-awesome noto-fonts noto-fonts-emoji noto-fonts-cjk noto-fonts-extra
|
||||
yay -S --noconfirm --needed ttf-font-awesome noto-fonts noto-fonts-emoji noto-fonts-cjk noto-fonts-extra
|
||||
else
|
||||
yay -Sy --noconfirm --needed ttf-font-awesome noto-fonts noto-fonts-emoji
|
||||
yay -S --noconfirm --needed ttf-font-awesome noto-fonts noto-fonts-emoji
|
||||
fi
|
||||
|
||||
mkdir -p ~/.local/share/fonts
|
||||
|
@ -47,7 +47,7 @@ if [ -n "$(lspci | grep -i 'nvidia')" ]; then
|
||||
"qt6-wayland"
|
||||
)
|
||||
|
||||
yay -Syu --needed --noconfirm "${PACKAGES_TO_INSTALL[@]}"
|
||||
yay -S --needed --noconfirm "${PACKAGES_TO_INSTALL[@]}"
|
||||
|
||||
# Configure modprobe for early KMS
|
||||
echo "options nvidia_drm modeset=1" | sudo tee /etc/modprobe.d/nvidia.conf >/dev/null
|
||||
|
@ -9,5 +9,5 @@ if ! command -v walker &>/dev/null; then
|
||||
mkdir -p ~/.config/walker
|
||||
cp -r ~/.local/share/omarchy/config/walker/* ~/.config/walker/
|
||||
|
||||
uwsm app -- walker --gapplication-service
|
||||
setsid uwsm app -- walker --gapplication-service &
|
||||
fi
|
||||
|
@ -1,6 +0,0 @@
|
||||
echo "Ensure first-run flow isn't run for existing installations"
|
||||
|
||||
if [[ ! -f ~/.local/state/omarchy/after-first-run.mode ]]; then
|
||||
mkdir -p ~/.local/state/omarchy
|
||||
touch ~/.local/state/omarchy/after-first-run.mode
|
||||
fi
|
@ -2,5 +2,5 @@ echo "Install swayOSD to show volume status"
|
||||
|
||||
if ! command -v swayosd &>/dev/null; then
|
||||
yay -S --noconfirm --needed swayosd
|
||||
uwsm app -- swayosd-server &>/dev/null &
|
||||
setsid uwsm app -- swayosd-server &>/dev/null &
|
||||
fi
|
||||
|
Reference in New Issue
Block a user