Compare commits
43 Commits
create-def
...
add-t2-sup
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1d38781a1f | ||
|
|
8e3bb40da2 | ||
|
|
b880a2c2e2 | ||
|
|
b35591790f | ||
|
|
cbeaa56300 | ||
|
|
634e30b3a5 | ||
|
|
990dc5c7dd | ||
|
|
c16766c8b1 | ||
|
|
f8ff57e2af | ||
|
|
8e4487ca41 | ||
|
|
b422281840 | ||
|
|
2e41b2c400 | ||
|
|
55bf2457d4 | ||
|
|
a77264ae99 | ||
|
|
13349180b6 | ||
|
|
445ccdebbf | ||
|
|
27f020af4d | ||
|
|
8920c95586 | ||
|
|
52680f4b3e | ||
|
|
d96322e58a | ||
|
|
0f09febf4d | ||
|
|
d58fe8b4a0 | ||
|
|
4a4ff04741 | ||
|
|
a0e3d86c12 | ||
|
|
2132c684ff | ||
|
|
47bdbec9f1 | ||
|
|
5b0deb90ba | ||
|
|
3e1e466938 | ||
|
|
e018692e5e | ||
|
|
d48d4d7324 | ||
|
|
e9a3114b39 | ||
|
|
9b15c56a68 | ||
|
|
123f970b20 | ||
|
|
9de375648e | ||
|
|
115fcb786d | ||
|
|
23d9b3ae71 | ||
|
|
6bffd1be8e | ||
|
|
a9fe693ed9 | ||
|
|
57bb63b5a3 | ||
|
|
6b3d1d5dc7 | ||
|
|
759003eed9 | ||
|
|
2684322975 | ||
|
|
51607f1978 |
@@ -1,6 +1,6 @@
|
||||
[Desktop Entry]
|
||||
Name=Image Viewer
|
||||
Exec=imv %F
|
||||
Exec=sh -c 'imv -n "$1" "$(dirname "$1")"' sh %f
|
||||
Icon=imv
|
||||
Type=Application
|
||||
MimeType=image/png;image/jpeg;image/jpg;image/gif;image/bmp;image/webp;image/tiff;image/x-xcf;image/x-portable-pixmap;image/x-xbitmap;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
focused_monitor="$(hyprctl monitors -j | jq -r '.[] | select(.focused == true).name')"
|
||||
|
||||
sinks=$(pactl -f json list sinks | jq '[.[] | select([.ports[]? | .availability == "available"] | any)]')
|
||||
sinks=$(pactl -f json list sinks | jq '[.[] | select((.ports | length == 0) or ([.ports[]? | .availability != "not available"] | any))]')
|
||||
sinks_count=$(echo "$sinks" | jq '. | length')
|
||||
|
||||
if [ "$sinks_count" -eq 0 ]; then
|
||||
|
||||
@@ -6,8 +6,12 @@ FIRST_RUN_MODE=~/.local/state/omarchy/first-run.mode
|
||||
|
||||
if [[ -f "$FIRST_RUN_MODE" ]]; then
|
||||
rm -f "$FIRST_RUN_MODE"
|
||||
|
||||
bash "$OMARCHY_PATH/install/first-run/battery-monitor.sh"
|
||||
bash "$OMARCHY_PATH/install/first-run/firewall.sh"
|
||||
bash "$OMARCHY_PATH/install/first-run/gnome-theme.sh"
|
||||
sudo rm -f /etc/sudoers.d/first-run
|
||||
|
||||
bash "$OMARCHY_PATH/install/first-run/wifi.sh"
|
||||
bash "$OMARCHY_PATH/install/first-run/welcome.sh"
|
||||
fi
|
||||
|
||||
@@ -8,7 +8,7 @@ if [[ ! -d "$OUTPUT_DIR" ]]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
pkill slurp || hyprshot -m ${1:-region} --raw --freeze |
|
||||
pkill slurp || hyprshot -m ${1:-region} --raw |
|
||||
satty --filename - \
|
||||
--output-filename "$OUTPUT_DIR/screenshot-$(date +'%Y-%m-%d_%H-%M-%S').png" \
|
||||
--early-exit \
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
notify-send " Updating time and timezone..."
|
||||
sudo systemctl restart systemd-timesyncd
|
||||
sudo tzupdate
|
||||
new_timezone=$(timedatectl show -p Timezone --value)
|
||||
omarchy-restart-waybar
|
||||
notify-send "Time synced and timezone set to $new_timezone"
|
||||
notify-send " Time updated and timezone set to $new_timezone"
|
||||
|
||||
@@ -1,3 +1,12 @@
|
||||
#!/bin/bash
|
||||
|
||||
exec setsid uwsm app -- $(sed -n 's/^Exec=\([^ ]*\).*/\1/p' {~/.local,~/.nix-profile,/usr}/share/applications/$(xdg-settings get default-web-browser) 2>/dev/null | head -1) ${args[@]} $@
|
||||
default_browser=$(xdg-settings get default-web-browser)
|
||||
browser_exec=$(sed -n 's/^Exec=\([^ ]*\).*/\1/p' {~/.local,~/.nix-profile,/usr}/share/applications/$default_browser 2>/dev/null | head -1)
|
||||
|
||||
if [[ $browser_exec =~ (firefox|zen|librewolf) ]]; then
|
||||
private_flag="--private-window"
|
||||
else
|
||||
private_flag="--incognito"
|
||||
fi
|
||||
|
||||
exec setsid uwsm app -- "$browser_exec" "${@/--private/$private_flag}"
|
||||
|
||||
@@ -1,10 +1,7 @@
|
||||
#!/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
|
||||
if [[ -z $1 && $1 != "CNCLD" ]]; then
|
||||
echo "Usage: omarchy-theme-set <theme-name>"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -16,8 +13,8 @@ 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
|
||||
echo "Theme '$THEME_NAME' does not exist in $THEMES_DIR"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Update theme symlinks
|
||||
@@ -39,19 +36,24 @@ else
|
||||
gsettings set org.gnome.desktop.interface icon-theme "Yaru-blue"
|
||||
fi
|
||||
|
||||
# Change Chromium colors
|
||||
if command -v chromium &>/dev/null; then
|
||||
if [[ -f ~/.config/omarchy/current/theme/light.mode ]]; then
|
||||
chromium --no-startup-window --set-color-scheme="light"
|
||||
else
|
||||
chromium --no-startup-window --set-color-scheme="dark"
|
||||
fi
|
||||
|
||||
# Change browser colors via policies
|
||||
if omarchy-cmd-present chromium || omarchy-cmd-present brave; then
|
||||
if [[ -f ~/.config/omarchy/current/theme/chromium.theme ]]; then
|
||||
chromium --no-startup-window --set-theme-color="$(<~/.config/omarchy/current/theme/chromium.theme)"
|
||||
rgb=$(<~/.config/omarchy/current/theme/chromium.theme)
|
||||
THEME_HEX_COLOR=$(printf '#%02x%02x%02x' ${rgb//,/ })
|
||||
else
|
||||
# Use a default, neutral grey if theme doesn't have a color
|
||||
chromium --no-startup-window --set-theme-color="28,32,39"
|
||||
THEME_HEX_COLOR="#1c2027"
|
||||
fi
|
||||
|
||||
if omarchy-cmd-present chromium; then
|
||||
echo "{\"BrowserThemeColor\": \"$THEME_HEX_COLOR\"}" | tee "/etc/chromium/policies/managed/color.json" >/dev/null
|
||||
chromium --refresh-platform-policy --no-startup-window
|
||||
fi
|
||||
|
||||
if omarchy-cmd-present brave; then
|
||||
echo "{\"BrowserThemeColor\": \"$THEME_HEX_COLOR\"}" | tee "/etc/brave/policies/managed/color.json" >/dev/null
|
||||
brave --refresh-platform-policy --no-startup-window
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
20
bin/omarchy-webapp-handler-zoom
Executable file
@@ -0,0 +1,20 @@
|
||||
#!/bin/bash
|
||||
|
||||
url="$1"
|
||||
web_url="https://app.zoom.us/wc/home"
|
||||
|
||||
if [[ $url =~ ^zoom(mtg|us):// ]]; then
|
||||
confno=$(echo "$url" | sed -n 's/.*[?&]confno=\([^&]*\).*/\1/p')
|
||||
|
||||
if [[ -n $confno ]]; then
|
||||
pwd=$(echo "$url" | sed -n 's/.*[?&]pwd=\([^&]*\).*/\1/p')
|
||||
|
||||
if [[ -n $pwd ]]; then
|
||||
web_url="https://app.zoom.us/wc/join/$confno?pwd=$pwd"
|
||||
else
|
||||
web_url="https://app.zoom.us/wc/join/$confno"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
exec omarchy-launch-webapp "$web_url"
|
||||
@@ -1,49 +1,69 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ "$#" -ne 3 ]; then
|
||||
if [ "$#" -lt 3 ]; then
|
||||
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!)")
|
||||
ICON_REF=$(gum input --prompt "Icon URL> " --placeholder "See https://dashboardicons.com (must use PNG!)")
|
||||
CUSTOM_EXEC=""
|
||||
MIME_TYPES=""
|
||||
INTERACTIVE_MODE=true
|
||||
else
|
||||
APP_NAME="$1"
|
||||
APP_URL="$2"
|
||||
ICON_URL="$3"
|
||||
ICON_REF="$3"
|
||||
CUSTOM_EXEC="$4" # Optional custom exec command
|
||||
MIME_TYPES="$5" # Optional mime types
|
||||
INTERACTIVE_MODE=false
|
||||
fi
|
||||
|
||||
if [[ -z "$APP_NAME" || -z "$APP_URL" || -z "$ICON_URL" ]]; then
|
||||
# Ensure valid execution
|
||||
if [[ -z "$APP_NAME" || -z "$APP_URL" || -z "$ICON_REF" ]]; 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"
|
||||
|
||||
if [[ ! "$ICON_URL" =~ ^https?:// ]] && [ -f "$ICON_URL" ]; then
|
||||
ICON_PATH="$ICON_URL"
|
||||
else
|
||||
ICON_PATH="$ICON_DIR/$APP_NAME.png"
|
||||
mkdir -p "$ICON_DIR"
|
||||
if ! curl -sL -o "$ICON_PATH" "$ICON_URL"; then
|
||||
# Refer to local icon or fetch remotely from URL
|
||||
if [[ $ICON_REF =~ ^https?:// ]]; then
|
||||
if curl -sL -o "$ICON_PATH" "$ICON_REF"; then
|
||||
ICON_PATH="$ICON_DIR/$APP_NAME.png"
|
||||
else
|
||||
echo "Error: Failed to download icon."
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
ICON_PATH="$HOME/.local/share/applications/icons/$ICON_REF"
|
||||
fi
|
||||
|
||||
# Use custom exec if provided, otherwise default behavior
|
||||
if [[ -n $CUSTOM_EXEC ]]; then
|
||||
EXEC_COMMAND="$CUSTOM_EXEC"
|
||||
else
|
||||
EXEC_COMMAND="omarchy-launch-webapp $APP_URL"
|
||||
fi
|
||||
|
||||
# Create application .desktop file
|
||||
DESKTOP_FILE="$HOME/.local/share/applications/$APP_NAME.desktop"
|
||||
|
||||
cat >"$DESKTOP_FILE" <<EOF
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=$APP_NAME
|
||||
Comment=$APP_NAME
|
||||
Exec=omarchy-launch-webapp $APP_URL
|
||||
Exec=$EXEC_COMMAND
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Icon=$ICON_PATH
|
||||
StartupNotify=true
|
||||
EOF
|
||||
|
||||
# Add mime types if provided
|
||||
if [[ -n $MIME_TYPES ]]; then
|
||||
echo "MimeType=$MIME_TYPES" >>"$DESKTOP_FILE"
|
||||
fi
|
||||
|
||||
chmod +x "$DESKTOP_FILE"
|
||||
|
||||
if [ "$#" -ne 3 ]; then
|
||||
if [[ $INTERACTIVE_MODE == true ]]; then
|
||||
echo -e "You can now find $APP_NAME using the app launcher (SUPER + SPACE)\n"
|
||||
fi
|
||||
|
||||
2
boot.sh
@@ -1,7 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Set install mode to online since boot.sh is used for curl installations
|
||||
export OMARCHY_INSTALL_MODE="online"
|
||||
export OMARCHY_ONLINE_INSTALL=true
|
||||
|
||||
ansi_art=' ▄▄▄
|
||||
▄█████▄ ▄███████████▄ ▄███████ ▄███████ ▄███████ ▄█ █▄ ▄█ █▄
|
||||
|
||||
@@ -5,6 +5,7 @@ $browser = omarchy-launch-browser
|
||||
bindd = SUPER, return, Terminal, exec, $terminal --working-directory="$(omarchy-cmd-terminal-cwd)"
|
||||
bindd = SUPER, F, File manager, exec, uwsm app -- nautilus --new-window
|
||||
bindd = SUPER, B, Browser, exec, $browser
|
||||
bindd = SUPER SHIFT, B, Browser (private), exec, $browser --private
|
||||
bindd = SUPER, M, Music, exec, uwsm app -- spotify
|
||||
bindd = SUPER, N, Neovim, exec, $terminal -e nvim
|
||||
bindd = SUPER, T, Activity, exec, $terminal -e btop
|
||||
|
||||
@@ -3,6 +3,8 @@ source = ~/.config/omarchy/current/theme/hyprlock.conf
|
||||
background {
|
||||
monitor =
|
||||
color = $color
|
||||
path = ~/.config/omarchy/current/background
|
||||
blur_passes = 3
|
||||
}
|
||||
|
||||
animations {
|
||||
|
||||
@@ -68,7 +68,7 @@
|
||||
"format": "{icon}",
|
||||
"format-wifi": "{icon}",
|
||||
"format-ethernet": "",
|
||||
"format-disconnected": "",
|
||||
"format-disconnected": "",
|
||||
"tooltip-format-wifi": "{essid} ({frequency} GHz)\n⇣{bandwidthDownBytes} ⇡{bandwidthUpBytes}",
|
||||
"tooltip-format-ethernet": "⇣{bandwidthDownBytes} ⇡{bandwidthUpBytes}",
|
||||
"tooltip-format-disconnected": "Disconnected",
|
||||
@@ -108,7 +108,7 @@
|
||||
"on-click-right": "pamixer -t",
|
||||
"tooltip-format": "Playing at {volume}%",
|
||||
"scroll-step": 5,
|
||||
"format-muted": "",
|
||||
"format-muted": "",
|
||||
"format-icons": {
|
||||
"default": ["", "", ""]
|
||||
}
|
||||
|
||||
@@ -10,5 +10,5 @@ if [[ ! -v BASH_COMPLETION_VERSINFO && -f /usr/share/bash-completion/bash_comple
|
||||
fi
|
||||
|
||||
# Set complete path
|
||||
export PATH="./bin:$HOME/.local/bin:$PATH"
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
set +h
|
||||
|
||||
@@ -5,11 +5,13 @@ bindd = SUPER ALT, SPACE, Omarchy menu, exec, omarchy-menu
|
||||
bindd = SUPER, ESCAPE, Power menu, exec, omarchy-menu system
|
||||
bindld = , XF86PowerOff, Power menu, exec, omarchy-menu system
|
||||
bindd = SUPER, K, Show key bindings, exec, omarchy-menu-keybindings
|
||||
bindd = , XF86Calculator, Calculator, exec, gnome-calculator
|
||||
|
||||
# Aesthetics
|
||||
bindd = SUPER SHIFT, SPACE, Toggle top bar, exec, omarchy-toggle-waybar
|
||||
bindd = SUPER CTRL, SPACE, Next background in theme, exec, omarchy-theme-bg-next
|
||||
bindd = SUPER SHIFT CTRL, SPACE, Pick new theme, exec, omarchy-menu theme
|
||||
bindd = SUPER, BACKSPACE, Toggle window transparency, exec, hyprctl dispatch setprop "address:$(hyprctl activewindow -j | jq -r '.address')" opaque toggle
|
||||
|
||||
# Notifications
|
||||
bindd = SUPER, COMMA, Dismiss last notification, exec, makoctl dismiss
|
||||
|
||||
@@ -14,3 +14,6 @@ invisible=false
|
||||
|
||||
[urgency=critical]
|
||||
default-timeout=0
|
||||
|
||||
[summary~="Setup Wi-Fi"]
|
||||
on-button-left=exec sh -c 'alacritty --class=Impala -e impala & makoctl dismiss -n "$id"'
|
||||
|
||||
@@ -10,6 +10,7 @@ run_logged $OMARCHY_INSTALL/config/ssh-flakiness.sh
|
||||
run_logged $OMARCHY_INSTALL/config/detect-keyboard-layout.sh
|
||||
run_logged $OMARCHY_INSTALL/config/xcompose.sh
|
||||
run_logged $OMARCHY_INSTALL/config/mise-ruby.sh
|
||||
run_logged $OMARCHY_INSTALL/config/mise-work.sh
|
||||
run_logged $OMARCHY_INSTALL/config/docker.sh
|
||||
run_logged $OMARCHY_INSTALL/config/mimetypes.sh
|
||||
run_logged $OMARCHY_INSTALL/config/localdb.sh
|
||||
@@ -24,3 +25,5 @@ run_logged $OMARCHY_INSTALL/config/hardware/ignore-power-button.sh
|
||||
run_logged $OMARCHY_INSTALL/config/hardware/nvidia.sh
|
||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-f13-amd-audio-input.sh
|
||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-apple-bcm4360.sh
|
||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-apple-spi-keyboard.sh
|
||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-apple-t2.sh
|
||||
|
||||
7
install/config/hardware/fix-apple-spi-keyboard.sh
Normal file
@@ -0,0 +1,7 @@
|
||||
# Detect MacBook models that need SPI keyboard modules
|
||||
if [[ "$(cat /sys/class/dmi/id/product_name 2>/dev/null)" =~ MacBook12,1|MacBookPro13,[123]|MacBookPro14,[123] ]]; then
|
||||
echo "Detected MacBook with SPI keyboard"
|
||||
|
||||
sudo pacman -S --noconfirm --needed macbook12-spi-driver-dkms
|
||||
echo "MODULES=(applespi intel_lpss_pci spi_pxa2xx_platform)" | sudo tee /etc/mkinitcpio.conf.d/macbook_spi_modules.conf >/dev/null
|
||||
fi
|
||||
28
install/config/hardware/fix-apple-t2.sh
Normal file
@@ -0,0 +1,28 @@
|
||||
# Detect T2 MacBook models using PCI IDs
|
||||
# Vendor: 106b (Apple), Device IDs: 1801 or 1802 (T2 Security Chip)
|
||||
if lspci -nn | grep -q "106b:180[12]"; then
|
||||
echo "Detected MacBook with T2 chip. Installing support items..."
|
||||
|
||||
sudo pacman -S --noconfirm --needed \
|
||||
linux-t2 \
|
||||
linux-t2-headers \
|
||||
apple-t2-audio-config \
|
||||
apple-bcm-firmware \
|
||||
t2fanrd \
|
||||
tiny-dfr
|
||||
|
||||
echo "apple-bce" | sudo tee /etc/modules-load.d/t2.conf >/dev/null
|
||||
|
||||
echo "MODULES+=(apple-bce usbhid hid_apple hid_generic xhci_pci xhci_hcd)" | sudo tee /etc/mkinitcpio.conf.d/apple-t2.conf >/dev/null
|
||||
|
||||
cat <<EOF | sudo tee /etc/modprobe.d/brcmfmac.conf >/dev/null
|
||||
# Fix for T2 MacBook WiFi connectivity issues
|
||||
options brcmfmac feature_disable=0x82000
|
||||
EOF
|
||||
|
||||
sudo mkdir -p /etc/limine-entry-tool.d
|
||||
cat <<EOF | sudo tee /etc/limine-entry-tool.d/t2-mac.conf >/dev/null
|
||||
# Generated by Omarchy installer for T2 Mac support
|
||||
KERNEL_CMDLINE[default]+="intel_iommu=on iommu=pt pcie_ports=compat"
|
||||
EOF
|
||||
fi
|
||||
@@ -7,19 +7,19 @@ mise settings add idiomatic_version_file_enable_tools ruby
|
||||
# Install pre-built Ruby + Rails for x86_64
|
||||
if [[ $(uname -m) == "x86_64" ]]; then
|
||||
RUBY_VERSION="3.4.5"
|
||||
RUBY_TARBALL="ruby-${RUBY_VERSION}-rails-8.0.2.1-x86_64.tar.gz"
|
||||
RUBY_URL="https://pkgs.omarchy.org/ruby/${RUBY_TARBALL}"
|
||||
RUBY_TARBALL="ruby-$RUBY_VERSION-rails-8.0.2.1-x86_64.tar.gz"
|
||||
RUBY_URL="https://pkgs.omarchy.org/ruby/$RUBY_TARBALL"
|
||||
MISE_RUBY_DIR="$HOME/.local/share/mise/installs/ruby"
|
||||
OFFLINE_CACHE="/var/cache/omarchy/ruby"
|
||||
|
||||
mkdir -p "$MISE_RUBY_DIR"
|
||||
|
||||
if [[ ${OMARCHY_INSTALL_MODE:-offline} == "offline" ]]; then
|
||||
echo "Installing Ruby from offline cache..."
|
||||
tar -xzf "${OFFLINE_CACHE}/${RUBY_TARBALL}" -C "$MISE_RUBY_DIR"
|
||||
else
|
||||
echo "Downloading pre-built Ruby ${RUBY_VERSION}..."
|
||||
if [[ -n ${OMARCHY_ONLINE_INSTALL:-} ]]; then
|
||||
echo "Downloading pre-built Ruby $RUBY_VERSION..."
|
||||
curl -fsSL "$RUBY_URL" | tar -xz -C "$MISE_RUBY_DIR"
|
||||
else
|
||||
echo "Installing Ruby from offline cache..."
|
||||
tar -xzf "$OFFLINE_CACHE/$RUBY_TARBALL" -C "$MISE_RUBY_DIR"
|
||||
fi
|
||||
|
||||
mise use --global "ruby@${RUBY_VERSION}"
|
||||
|
||||
9
install/config/mise-work.sh
Normal file
@@ -0,0 +1,9 @@
|
||||
# Add ./bin to path for all items in ~/Work
|
||||
mkdir -p "$HOME/Work"
|
||||
|
||||
cat >"$HOME/Work/.mise.toml" <<'EOF'
|
||||
[env]
|
||||
_.path = "{{ cwd }}/bin"
|
||||
EOF
|
||||
|
||||
mise trust ~/Work/.mise.toml
|
||||
@@ -19,3 +19,10 @@ ln -snf ~/.config/omarchy/current/theme/btop.theme ~/.config/btop/themes/current
|
||||
|
||||
mkdir -p ~/.config/mako
|
||||
ln -snf ~/.config/omarchy/current/theme/mako.ini ~/.config/mako/config
|
||||
|
||||
# Add managed policy directories for Chromium and Brave for theme changes
|
||||
sudo mkdir -p /etc/chromium/policies/managed
|
||||
sudo chmod a+rw /etc/chromium/policies/managed
|
||||
|
||||
sudo mkdir -p /etc/brave/policies/managed
|
||||
sudo chmod a+rw /etc/brave/policies/managed
|
||||
|
||||
0
install/first-run/gnome-theme.sh
Executable file → Normal file
1
install/first-run/welcome.sh
Normal file
@@ -0,0 +1 @@
|
||||
notify-send "👋 Welcome to Omarchy" "You're in for a great computing adventure. Have fun!" -t 30000
|
||||
3
install/first-run/wifi.sh
Normal file
@@ -0,0 +1,3 @@
|
||||
if ! ping -c3 -W1 1.1.1.1 >/dev/null 2>&1; then
|
||||
notify-send " Click to Setup Wi-Fi" "Tab between sections, space selects, ? for help." -u critical -t 30000
|
||||
fi
|
||||
@@ -105,7 +105,7 @@ catch_errors() {
|
||||
options=()
|
||||
|
||||
# If online install, show retry first
|
||||
if [[ ${OMARCHY_INSTALL_MODE:-offline} == "online" ]]; then
|
||||
if [[ -n ${OMARCHY_ONLINE_INSTALL:-} ]]; then
|
||||
options+=("Retry installation")
|
||||
fi
|
||||
|
||||
|
||||
@@ -8,25 +8,17 @@ broadcom-wl
|
||||
btrfs-progs
|
||||
dart
|
||||
dkms
|
||||
efibootmgr
|
||||
egl-wayland
|
||||
git
|
||||
git
|
||||
gst-plugin-pipewire
|
||||
gtk4-layer-shell
|
||||
gum
|
||||
htop
|
||||
intel-media-driver
|
||||
intltool
|
||||
iwd
|
||||
jdk-openjdk
|
||||
jq
|
||||
lib32-nvidia-utils
|
||||
libpulse
|
||||
libsass
|
||||
libva-intel-driver
|
||||
libva-intel-driver
|
||||
libva-mesa-driver
|
||||
libva-nvidia-driver
|
||||
limine
|
||||
limine-mkinitcpio-hook
|
||||
@@ -34,26 +26,28 @@ limine-snapper-sync
|
||||
linux
|
||||
linux-firmware
|
||||
linux-headers
|
||||
mesa
|
||||
macbook12-spi-driver-dkms
|
||||
nvidia-dkms
|
||||
nvidia-open-dkms
|
||||
nvidia-utils
|
||||
openssl
|
||||
lib32-nvidia-utils
|
||||
pipewire
|
||||
pipewire-alsa
|
||||
pipewire-jack
|
||||
pipewire-pulse
|
||||
plymouth
|
||||
qt5-remoteobjects
|
||||
qt6-wayland
|
||||
sassc
|
||||
snapper
|
||||
sof-firmware
|
||||
tzupdate
|
||||
webp-pixbuf-loader
|
||||
wget
|
||||
xf86-video-amdgpu
|
||||
xf86-video-ati
|
||||
xf86-video-nouveau
|
||||
yay-debug
|
||||
zram-generator
|
||||
|
||||
# T2 MacBook support packages
|
||||
apple-bcm-firmware
|
||||
apple-t2-audio-config
|
||||
linux-t2
|
||||
linux-t2-headers
|
||||
t2fanrd
|
||||
tiny-dfr
|
||||
|
||||
@@ -1,15 +1,13 @@
|
||||
ICON_DIR="$HOME/.local/share/applications/icons"
|
||||
|
||||
omarchy-webapp-install "HEY" https://app.hey.com "$ICON_DIR/HEY.png"
|
||||
omarchy-webapp-install "Basecamp" https://launchpad.37signals.com "$ICON_DIR/Basecamp.png"
|
||||
omarchy-webapp-install "WhatsApp" https://web.whatsapp.com/ "$ICON_DIR/WhatsApp.png"
|
||||
omarchy-webapp-install "Google Photos" https://photos.google.com/ "$ICON_DIR/Google Photos.png"
|
||||
omarchy-webapp-install "Google Contacts" https://contacts.google.com/ "$ICON_DIR/Google Contacts.png"
|
||||
omarchy-webapp-install "Google Messages" https://messages.google.com/web/conversations "$ICON_DIR/Google Messages.png"
|
||||
omarchy-webapp-install "ChatGPT" https://chatgpt.com/ "$ICON_DIR/ChatGPT.png"
|
||||
omarchy-webapp-install "YouTube" https://youtube.com/ "$ICON_DIR/YouTube.png"
|
||||
omarchy-webapp-install "GitHub" https://github.com/ "$ICON_DIR/GitHub.png"
|
||||
omarchy-webapp-install "X" https://x.com/ "$ICON_DIR/X.png"
|
||||
omarchy-webapp-install "Figma" https://figma.com/ "$ICON_DIR/Figma.png"
|
||||
omarchy-webapp-install "Discord" https://discord.com/channels/@me "$ICON_DIR/Discord.png"
|
||||
omarchy-webapp-install "Zoom" https://app.zoom.us/wc/home "$ICON_DIR/Zoom.png"
|
||||
omarchy-webapp-install "HEY" https://app.hey.com HEY.png
|
||||
omarchy-webapp-install "Basecamp" https://launchpad.37signals.com Basecamp.png
|
||||
omarchy-webapp-install "WhatsApp" https://web.whatsapp.com/ WhatsApp.png
|
||||
omarchy-webapp-install "Google Photos" https://photos.google.com/ "Google Photos.png"
|
||||
omarchy-webapp-install "Google Contacts" https://contacts.google.com/ "Google Contacts.png"
|
||||
omarchy-webapp-install "Google Messages" https://messages.google.com/web/conversations "Google Messages.png"
|
||||
omarchy-webapp-install "ChatGPT" https://chatgpt.com/ ChatGPT.png
|
||||
omarchy-webapp-install "YouTube" https://youtube.com/ YouTube.png
|
||||
omarchy-webapp-install "GitHub" https://github.com/ GitHub.png
|
||||
omarchy-webapp-install "X" https://x.com/ X.png
|
||||
omarchy-webapp-install "Figma" https://figma.com/ Figma.png
|
||||
omarchy-webapp-install "Discord" https://discord.com/channels/@me Discord.png
|
||||
omarchy-webapp-install "Zoom" https://app.zoom.us/wc/home Zoom.png "omarchy-webapp-handler-zoom %u" "x-scheme-handler/zoommtg;x-scheme-handler/zoomus"
|
||||
|
||||
@@ -5,6 +5,7 @@ echo_in_style() {
|
||||
}
|
||||
|
||||
clear
|
||||
echo
|
||||
tte -i ~/.local/share/omarchy/logo.txt --canvas-width 0 --anchor-text c --frame-rate 920 laseretch
|
||||
echo
|
||||
|
||||
|
||||
@@ -1,3 +1,12 @@
|
||||
# Configure pacman
|
||||
sudo cp -f ~/.local/share/omarchy/default/pacman/pacman.conf /etc/pacman.conf
|
||||
sudo cp -f ~/.local/share/omarchy/default/pacman/mirrorlist /etc/pacman.d/mirrorlist
|
||||
|
||||
if lspci -nn | grep -q "106b:180[12]"; then
|
||||
cat <<EOF | sudo tee -a /etc/pacman.conf >/dev/null
|
||||
|
||||
[arch-mact2]
|
||||
Server = https://github.com/NoaHimesaka1873/arch-mact2-mirror/releases/download/release
|
||||
SigLevel = Never
|
||||
EOF
|
||||
fi
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
clear_logo
|
||||
gum style --foreground 3 --padding "1 0 0 $PADDING_LEFT" "Installing Omarchy..."
|
||||
gum style --foreground 3 --padding "1 0 0 $PADDING_LEFT" "Installing..."
|
||||
echo
|
||||
start_install_log
|
||||
|
||||
@@ -7,6 +7,7 @@ sudo tee /etc/sudoers.d/first-run >/dev/null <<EOF
|
||||
Cmnd_Alias FIRST_RUN_CLEANUP = /bin/rm -f /etc/sudoers.d/first-run
|
||||
$USER ALL=(ALL) NOPASSWD: /usr/bin/ufw
|
||||
$USER ALL=(ALL) NOPASSWD: /usr/bin/ufw-docker
|
||||
$USER ALL=(ALL) NOPASSWD: /usr/bin/gtk-update-icon-cache
|
||||
$USER ALL=(ALL) NOPASSWD: FIRST_RUN_CLEANUP
|
||||
EOF
|
||||
sudo chmod 440 /etc/sudoers.d/first-run
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if [[ ${OMARCHY_INSTALL_MODE:-offline} == "online" ]]; then
|
||||
if [[ -n ${OMARCHY_ONLINE_INSTALL:-} ]]; then
|
||||
# Install build tools
|
||||
sudo pacman -S --needed --noconfirm base-devel
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Show installation environment variables
|
||||
gum log --level info "Installation Environment:"
|
||||
|
||||
env | grep -E "^(OMARCHY_CHROOT_INSTALL|OMARCHY_INSTALL_MODE|OMARCHY_USER_NAME|OMARCHY_USER_EMAIL|USER|HOME|OMARCHY_REPO|OMARCHY_REF|OMARCHY_PATH)=" | sort | while IFS= read -r var; do
|
||||
env | grep -E "^(OMARCHY_CHROOT_INSTALL|OMARCHY_ONLINE_INSTALL|OMARCHY_USER_NAME|OMARCHY_USER_EMAIL|USER|HOME|OMARCHY_REPO|OMARCHY_REF|OMARCHY_PATH)=" | sort | while IFS= read -r var; do
|
||||
gum log --level info " $var"
|
||||
done
|
||||
|
||||
7
migrations/1757147211.sh
Normal file
@@ -0,0 +1,7 @@
|
||||
echo "Create managed policy directories for Chromium and Brave for theme switching"
|
||||
|
||||
sudo mkdir -p /etc/chromium/policies/managed
|
||||
sudo chmod a+rw /etc/chromium/policies/managed
|
||||
|
||||
sudo mkdir -p /etc/brave/policies/managed
|
||||
sudo chmod a+rw /etc/brave/policies/managed
|
||||
4
migrations/1757273064.sh
Normal file
@@ -0,0 +1,4 @@
|
||||
echo "Allow Image Viewer to see all images in directory and use arrow keys to navigate"
|
||||
|
||||
cp -f "$HOME/.local/share/omarchy/applications/imv.desktop" "$HOME/.local/share/applications/imv.desktop"
|
||||
|
||||
3
migrations/1757435811.sh
Normal file
@@ -0,0 +1,3 @@
|
||||
echo "Copy Omarchy default app icons to .local/share/icons"
|
||||
|
||||
source $OMARCHY_PATH/install/packaging/icons.sh
|
||||
6
migrations/1757435812.sh
Normal file
@@ -0,0 +1,6 @@
|
||||
echo "Update Zoom webapp to handle zoommtg:// and zoomus:// protocol links"
|
||||
|
||||
if [[ -f ~/.local/share/applications/Zoom.desktop ]]; then
|
||||
omarchy-webapp-remove Zoom
|
||||
omarchy-webapp-install Zoom https://app.zoom.us/wc/home Zoom.png "omarchy-webapp-handler-zoom %u" "x-scheme-handler/zoommtg;x-scheme-handler/zoomus"
|
||||
fi
|
||||
9
migrations/1757783204.sh
Normal file
@@ -0,0 +1,9 @@
|
||||
echo "Create ~/Work with ./bin in the path for contained projects"
|
||||
|
||||
mise_config="$HOME/Work/.mise.toml"
|
||||
|
||||
if [[ -f $mise_config ]]; then
|
||||
cp $mise_config "$mise_config.bak.$(date +%s)"
|
||||
fi
|
||||
|
||||
source "$OMARCHY_PATH/install/config/mise-work.sh"
|
||||
3
migrations/1757861484.sh
Normal file
@@ -0,0 +1,3 @@
|
||||
echo "Add a blurred background to the lock screen"
|
||||
|
||||
omarchy-refresh-hyprlock
|
||||
6
migrations/1757866485.sh
Normal file
@@ -0,0 +1,6 @@
|
||||
echo "Add SUPER + SHIFT + B to start browser in private mode"
|
||||
|
||||
if [[ -f ~/.config/hypr/bindings.conf ]] && grep -q "SUPER, B, Browser, exec" ~/.config/hypr/bindings.conf; then
|
||||
sed -i '/^bindd = SUPER, B, Browser, exec, \$browser$/a\
|
||||
bindd = SUPER SHIFT, B, Browser (private), exec, $browser --private' ~/.config/hypr/bindings.conf
|
||||
fi
|
||||
BIN
themes/catppuccin-latte/preview.png
Normal file
|
After Width: | Height: | Size: 286 KiB |
BIN
themes/catppuccin/preview.png
Normal file
|
After Width: | Height: | Size: 217 KiB |
BIN
themes/everforest/preview.png
Normal file
|
After Width: | Height: | Size: 208 KiB |
BIN
themes/gruvbox/preview.png
Normal file
|
After Width: | Height: | Size: 257 KiB |
BIN
themes/kanagawa/preview.png
Normal file
|
After Width: | Height: | Size: 299 KiB |
BIN
themes/matte-black/preview.png
Normal file
|
After Width: | Height: | Size: 236 KiB |
BIN
themes/nord/preview.png
Normal file
|
After Width: | Height: | Size: 194 KiB |
BIN
themes/osaka-jade/preview.png
Normal file
|
After Width: | Height: | Size: 192 KiB |
BIN
themes/ristretto/preview.png
Normal file
|
After Width: | Height: | Size: 220 KiB |
BIN
themes/rose-pine/preview.png
Normal file
|
After Width: | Height: | Size: 288 KiB |
BIN
themes/tokyo-night/preview.png
Normal file
|
After Width: | Height: | Size: 169 KiB |