mirror of
https://github.com/basecamp/omarchy.git
synced 2025-07-27 04:09:23 +00:00
Compare commits
31 Commits
5e4c309b2c
...
2b2103fb66
Author | SHA1 | Date | |
---|---|---|---|
2b2103fb66 | |||
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() {
|
setup_menu() {
|
||||||
show_ascii_art
|
show_ascii_art
|
||||||
local menu=("Dropbox" "Fingerprint sensor" "Fido2 device" "Back")
|
local menu=("Dropbox" "Docker DBs" "Fingerprint sensor" "Fido2 device" "Back")
|
||||||
local commands=(
|
local commands=(
|
||||||
"omarchy-setup-dropbox"
|
"omarchy-setup-dropbox"
|
||||||
|
"setup_docker_dbs"
|
||||||
"omarchy-setup-fingerprint"
|
"omarchy-setup-fingerprint"
|
||||||
"omarchy-setup-fido2"
|
"omarchy-setup-fido2"
|
||||||
"main_menu"
|
"main_menu"
|
||||||
@ -117,6 +118,23 @@ setup_menu() {
|
|||||||
done
|
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() {
|
open_manual() {
|
||||||
setsid chromium --new-window --ozone-platform=wayland --app="https://manuals.omamix.org/2/the-omarchy-manual" >/dev/null 2>&1 &
|
setsid chromium --new-window --ozone-platform=wayland --app="https://manuals.omamix.org/2/the-omarchy-manual" >/dev/null 2>&1 &
|
||||||
clear
|
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
|
# Relaunch swaybg
|
||||||
pkill -x 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
|
fi
|
||||||
|
@ -14,12 +14,6 @@ CURRENT_THEME_DIR="$HOME/.config/omarchy/current/theme"
|
|||||||
THEME_NAME="$1"
|
THEME_NAME="$1"
|
||||||
THEME_PATH="$THEMES_DIR/$THEME_NAME"
|
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
|
# Check if the theme entered exists
|
||||||
if [[ ! -d "$THEME_PATH" ]]; then
|
if [[ ! -d "$THEME_PATH" ]]; then
|
||||||
echo "Theme '$THEME_NAME' does not exist in $THEMES_DIR" >&2
|
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
|
source $file
|
||||||
done
|
done
|
||||||
|
|
||||||
|
# Update system packages
|
||||||
|
echo -e "\e[32m\nUpdate system packages\e[0m"
|
||||||
|
yay -Syu --noconfirm
|
||||||
|
|
||||||
# Back to where we came from
|
# Back to where we came from
|
||||||
cd - >/dev/null
|
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"
|
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..."
|
echo -e "\nCloning Omarchy..."
|
||||||
rm -rf ~/.local/share/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 = uwsm app -- walker --gapplication-service
|
||||||
exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
|
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 = 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
|
# Ensure locate is up to date now that everything has been installed
|
||||||
sudo updatedb
|
sudo updatedb
|
||||||
|
|
||||||
|
# Update all built-in packages
|
||||||
|
sudo pacman -Syu --noconfirm
|
||||||
|
|
||||||
gum confirm "Reboot to apply all settings?" && reboot
|
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
|
#!/bin/bash
|
||||||
|
|
||||||
if ! command -v ufw &>/dev/null; then
|
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
|
# Allow nothing in, everything out
|
||||||
sudo ufw default deny incoming
|
sudo ufw default deny incoming
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
if [ -z "$OMARCHY_BARE" ]; then
|
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
|
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
|
fi
|
||||||
|
|
||||||
mkdir -p ~/.local/share/fonts
|
mkdir -p ~/.local/share/fonts
|
||||||
|
@ -47,7 +47,7 @@ if [ -n "$(lspci | grep -i 'nvidia')" ]; then
|
|||||||
"qt6-wayland"
|
"qt6-wayland"
|
||||||
)
|
)
|
||||||
|
|
||||||
yay -Syu --needed --noconfirm "${PACKAGES_TO_INSTALL[@]}"
|
yay -S --needed --noconfirm "${PACKAGES_TO_INSTALL[@]}"
|
||||||
|
|
||||||
# Configure modprobe for early KMS
|
# Configure modprobe for early KMS
|
||||||
echo "options nvidia_drm modeset=1" | sudo tee /etc/modprobe.d/nvidia.conf >/dev/null
|
echo "options nvidia_drm modeset=1" | sudo tee /etc/modprobe.d/nvidia.conf >/dev/null
|
||||||
|
@ -15,7 +15,7 @@ for f in ~/.local/share/omarchy/themes/*; do ln -s "$f" ~/.config/omarchy/themes
|
|||||||
# Set initial theme
|
# Set initial theme
|
||||||
mkdir -p ~/.config/omarchy/current
|
mkdir -p ~/.config/omarchy/current
|
||||||
ln -snf ~/.config/omarchy/themes/tokyo-night ~/.config/omarchy/current/theme
|
ln -snf ~/.config/omarchy/themes/tokyo-night ~/.config/omarchy/current/theme
|
||||||
ln -snf ~/.config/omarchy/current/theme/backgrounds/1-Pawel-Czerwinski-Abstract-Purple-Blue.jpg ~/.config/omarchy/current/background
|
ln -snf ~/.config/omarchy/current/theme/backgrounds/1-scenery-pink-lakeside-sunset-lake-landscape-scenic-panorama-7680x3215-144.png ~/.config/omarchy/current/background
|
||||||
|
|
||||||
# Set specific app links for current theme
|
# Set specific app links for current theme
|
||||||
ln -snf ~/.config/omarchy/current/theme/neovim.lua ~/.config/nvim/lua/plugins/theme.lua
|
ln -snf ~/.config/omarchy/current/theme/neovim.lua ~/.config/nvim/lua/plugins/theme.lua
|
||||||
|
@ -9,5 +9,5 @@ if ! command -v walker &>/dev/null; then
|
|||||||
mkdir -p ~/.config/walker
|
mkdir -p ~/.config/walker
|
||||||
cp -r ~/.local/share/omarchy/config/walker/* ~/.config/walker/
|
cp -r ~/.local/share/omarchy/config/walker/* ~/.config/walker/
|
||||||
|
|
||||||
uwsm app -- walker --gapplication-service
|
setsid uwsm app -- walker --gapplication-service &
|
||||||
fi
|
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
|
if ! command -v swayosd &>/dev/null; then
|
||||||
yay -S --noconfirm --needed swayosd
|
yay -S --noconfirm --needed swayosd
|
||||||
uwsm app -- swayosd-server &>/dev/null &
|
setsid uwsm app -- swayosd-server &>/dev/null &
|
||||||
fi
|
fi
|
||||||
|
Before Width: | Height: | Size: 2.7 MiB After Width: | Height: | Size: 2.7 MiB |
Before Width: | Height: | Size: 4.6 MiB After Width: | Height: | Size: 4.6 MiB |
Before Width: | Height: | Size: 263 KiB After Width: | Height: | Size: 263 KiB |
Reference in New Issue
Block a user