%define __os_install_post %{nil} %define __strip /bin/true %define __objdump /bin/true Name: browseros Version: 0.31.0.14 Release: 3%{?dist} Summary: The open-source Agentic browser; privacy-first alternative to ChatGPT Atlas License: AGPL-3.0 AND Unknown URL: https://github.com/browseros-ai/BrowserOS Source0: BrowserOS.AppImage # Disable debuginfo for pre-compiled AppImage binaries %global debug_package %{nil} # Only rpm-build is needed - AppImage handles its own extraction BuildRequires: rpm-build # BrowserOS AppImage is self-contained, minimal system dependencies only Requires: hicolor-icon-theme Requires: fuse-libs %description BrowserOS is an open-source chromium fork that runs AI agents natively. Your open-source, privacy-first alternative to ChatGPT Atlas, Perplexity Comet, Dia. Features: - 🏠 Feels like home - same familiar interface as Google Chrome - 🤖 AI agents that run on YOUR browser, not in the cloud - 🔒 Privacy first - bring your own keys or use local models - 🚀 Open source and community driven - 🤝 BrowserOS as MCP server for integration with AI tools %prep %autosetup -c -T # Extract AppImage chmod +x %{SOURCE0} %{SOURCE0} --appimage-extract %build # No build step needed - AppImage contains pre-built binaries %install mkdir -p %{buildroot}%{_bindir} mkdir -p %{buildroot}%{_datadir}/applications mkdir -p %{buildroot}%{_datadir}/icons/hicolor/256x256/apps mkdir -p %{buildroot}/opt/browseros # Install the main application from extracted AppImage if [ -d "squashfs-root/opt/browseros" ]; then cp -ra squashfs-root/opt/browseros/* %{buildroot}/opt/browseros/ else echo "Error: BrowserOS application not found in extracted AppImage" exit 1 fi # Install desktop file if [ -f "squashfs-root/usr/share/applications/browseros.desktop" ]; then mkdir -p %{buildroot}%{_datadir}/applications # Copy desktop file and add StartupWMClass sed '/^\[Desktop Entry\]/a StartupWMClass=chromium-browser' squashfs-root/usr/share/applications/browseros.desktop > %{buildroot}%{_datadir}/applications/browseros.desktop chmod 644 %{buildroot}%{_datadir}/applications/browseros.desktop fi # Install icons if [ -f "squashfs-root/usr/share/icons/hicolor/256x256/apps/browseros.png" ]; then mkdir -p %{buildroot}%{_datadir}/icons/hicolor/256x256/apps install -m 644 squashfs-root/usr/share/icons/hicolor/256x256/apps/browseros.png %{buildroot}%{_datadir}/icons/hicolor/256x256/apps/ fi # Create launcher script, based from AppRun cat > %{buildroot}%{_bindir}/browseros << 'EOF' #!/bin/sh THIS="$(readlink -f "${0}")" HERE="$(dirname "${THIS}")" BASE_DIR="/opt/browseros" export LD_LIBRARY_PATH="${BASE_DIR}":$LD_LIBRARY_PATH export CHROME_WRAPPER="${THIS}" "${BASE_DIR}"/browseros "$@" EOF chmod +x %{buildroot}%{_bindir}/browseros %files %{_bindir}/browseros %{_datadir}/applications/browseros.desktop %{_datadir}/icons/hicolor/256x256/apps/browseros.png /opt/browseros %changelog * Fri Dec 12 2025 Patrice Ferlet - 0.31.0.14-3 - Fix the icon problem in desktop taskbar, the "class name" should be "chromium-browser" - Fix the runner to bind what does AppRun - Stop stripping and making post build operation. It breaks the binary and path checking. * Fri Dec 12 2025 Patrice Ferlet - 0.31.0.14-2 - Fix the icon problem in desktop taskbar, the "class name" should be "Chromium-browser" * Fri Dec 12 2025 Patrice Ferlet - 0.31.0.14-1 - Update to 0.31.0.14 * Fri Dec 12 2025 Patrice Ferlet - 0.30.0-1 - Initial RPM package for BrowserOS - Based on AppImage distribution - Privacy-first AI agent browser