- Use pacman -Syu instead of -Sy to prevent partial upgrades (Arch footgun) - Run manual AUR build in subshell to avoid leaving cwd in temp dir - Use append_if_missing for flatpak.conf instead of overwriting - Show warning on test Flatpak install failure instead of silent suppression Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| cosmic.sh | ||
| README.md | ||
COSMIC Store - Omarchy
A graphical Flatpak app store for Omarchy (Arch Linux + Hyprland), powered by System76's COSMIC Store.
Browse and install thousands of Flatpak applications through a clean, modern GUI — with full Hyprland integration so installed apps appear in your app launcher.
Requirements
- OS: Omarchy (Arch Linux)
- Compositor: Hyprland
- AUR Helper: yay or paru (Omarchy ships with yay)
Quick Start
git clone https://github.com/28allday/COSMIC-Store-Omarchy.git
cd COSMIC-Store-Omarchy
chmod +x cosmic.sh
./cosmic.sh
After installation, log out and back in so the environment variables take effect, then search for "COSMIC Store" in your app launcher.
What It Does
1. Installs Dependencies
| Package | Purpose |
|---|---|
flatpak |
Sandboxed app distribution system (like Snap but open) |
xdg-desktop-portal |
D-Bus bridge between sandboxed apps and the desktop |
xdg-desktop-portal-gtk |
GTK fallback portal for file dialogs |
xdg-desktop-portal-hyprland |
Hyprland-specific portal (screen sharing, window picking) |
desktop-file-utils |
App menu integration tools |
base-devel, git |
Build tools for compiling COSMIC Store from AUR |
2. Configures Flathub
Adds the Flathub repository at both system and user level, giving you access to thousands of applications.
3. Installs COSMIC Store from AUR
Builds and installs cosmic-store-git — System76's app store built with the COSMIC toolkit. It provides a graphical interface for browsing, installing, and managing Flatpak apps.
4. Creates Hyprland Wrapper
COSMIC Store needs to know it's running under Hyprland to use the correct desktop portal. The wrapper script sets XDG_CURRENT_DESKTOP=Hyprland before launching the store.
5. Makes Flatpak Apps Visible in Launcher
Flatpak installs .desktop files in non-standard locations. The script:
- Adds Flatpak export directories to
XDG_DATA_DIRS - Sets environment variables in both systemd and Hyprland config
- Symlinks Flatpak
.desktopfiles into~/.local/share/applications/
This ensures installed Flatpak apps appear in Walker/Elephant (Omarchy's app launchers).
6. Restarts Portal Services
Restarts the XDG desktop portal daemons so they pick up the new Hyprland configuration immediately.
Files Created
| Path | Purpose |
|---|---|
/usr/local/bin/cosmic-store-hypr |
Wrapper script (sets Hyprland environment) |
~/.local/share/applications/com.system76.CosmicStore.desktop |
User desktop entry |
~/.config/environment.d/flatpak.conf |
Flatpak environment variables |
Usage
Opening COSMIC Store
Search for "COSMIC Store" in your app launcher, or run:
cosmic-store-hypr
Installing Apps via Command Line
# Search for an app
flatpak search firefox
# Install an app
flatpak install flathub org.mozilla.firefox
# Run an app
flatpak run org.mozilla.firefox
# List installed apps
flatpak list
Making New Flatpak Apps Appear in Launcher
After installing a Flatpak app via the command line, you may need to symlink its desktop file:
# Symlink all Flatpak desktop files
for d in ~/.local/share/flatpak/exports/share/applications /var/lib/flatpak/exports/share/applications; do
[ -d "$d" ] && find "$d" -maxdepth 1 -name '*.desktop' -exec ln -sf {} ~/.local/share/applications/ \;
done
Apps installed through COSMIC Store should appear automatically.
Troubleshooting
COSMIC Store can't launch installed apps
Make sure the wrapper is being used:
grep "Exec" ~/.local/share/applications/com.system76.CosmicStore.desktop
Should show: Exec=/usr/local/bin/cosmic-store-hypr
Flatpak apps don't appear in app launcher
- Log out and back in (environment variables need a session restart)
- Check XDG_DATA_DIRS includes Flatpak paths:
echo $XDG_DATA_DIRS | tr ':' '\n' | grep flatpak - Re-run the symlink step:
for d in ~/.local/share/flatpak/exports/share/applications /var/lib/flatpak/exports/share/applications; do [ -d "$d" ] && find "$d" -maxdepth 1 -name '*.desktop' -exec ln -sf {} ~/.local/share/applications/ \; done
COSMIC Store won't build from AUR
- Make sure
base-develandgitare installed - Try rebuilding yay first:
cd /tmp && git clone https://aur.archlinux.org/yay.git && cd yay && makepkg -si - Check if Rust is installed (COSMIC is written in Rust):
pacman -S rustup && rustup default stable
Uninstalling
# Remove COSMIC Store
yay -Rns cosmic-store-git
# Remove wrapper and desktop entry
sudo rm -f /usr/local/bin/cosmic-store-hypr
rm -f ~/.local/share/applications/com.system76.CosmicStore.desktop
# Remove environment config
rm -f ~/.config/environment.d/flatpak.conf
# Optionally remove Flatpak entirely
sudo pacman -Rns flatpak
# Log out and back in to apply changes
Credits
- Omarchy - The Arch Linux distribution this was built for
- System76 - COSMIC Store and desktop environment
- Flatpak - Sandboxed application framework
- Flathub - Flatpak app repository
- Hyprland - Wayland compositor
License
This project is provided as-is for the Omarchy community.