Skip to content

MobiDevices/Application

Repository files navigation

MobiDevices (App)

Overview

Standalone repository for the cross-platform MobiDevices application built with Tauri 2.

Structure

.
├── README.md
├── AGENTS.md
├── LICENSE
├── package.json
├── .github/
│   └── workflows/
│       ├── ci.yml
│       └── release.yml
├── macos/
├── src-tauri/
│   ├── src/
│   ├── capabilities/
│   ├── i18n/
│   └── tauri.conf.json
├── linux/
├── debian/
├── flatpak/
├── snap/
└── aur/

Working Rules

  • Edit source/config files, not generated build output.
  • Avoid editing generated paths unless explicitly requested (src-tauri/target/, src-tauri/gen/).
  • Keep this README high-level and stable.

Quick Start

npm install

Common Commands

npm run dev
npm run build
npm run build:dmg
npm run generate:flatpak-sources
npm run build:flatpak
npm run validate:linux-assets

Build Outputs

  • Tauri bundles are produced under src-tauri/target/release/bundle/.
  • Linux .deb packages in CI and tagged releases are built from the Debian packaging under debian/ via dpkg-buildpackage, then staged under architecture-specific directories in dist/release/.
  • CI and tagged releases now build ARM artifacts for Linux (ubuntu-24.04-arm) in addition to the existing Linux x64 pipeline.
  • Local Flatpak builds now write the final bundle to dist/flatpak/mobidevices.flatpak by default.
  • Local Snap builds now write the final package to dist/snap/mobidevices.snap by default.
  • Local Flathub submission export now writes to dist/flathub/<tag>/ by default.
  • CI and release workflows stage downloadable artifacts under architecture-specific directories in dist/release/ before upload, so x64 and ARM artifacts can coexist without filename collisions.

Scripts

  • Packaging helpers live next to their platform or packaging format under linux/, flatpak/, snap/, and macos/.
  • Linux packaging assets are centralized in linux/install-assets.sh and reused by Flatpak, Snap, Debian, AUR, and metadata validation.
  • Release .deb packages use the Debian source package metadata in debian/, which keeps the package name at mobidevices and aligns desktop/AppStream assets with the rest of the Linux packaging.

Flathub

  • Flatpak manifest now builds the app from source in flatpak/com.mobidevices.desktop.yml using flatpak/cargo-sources.json.
  • Refresh vendored Rust sources after any Cargo dependency change with npm run generate:flatpak-sources.
  • Local Flatpak build uses npm run build:flatpak, writes the final mobidevices.flatpak bundle into dist/flatpak/ by default, and prints the resulting path.
  • npm run prepare:flathub-submission -- [tag] [output-dir] exports a minimal Flathub submission directory with a top-level com.mobidevices.desktop.yml and cargo-sources.json, pinned to an upstream Git tag and commit, and defaults to dist/flathub/<tag>/.
  • The Flathub submission manifest template lives in flatpak/com.mobidevices.desktop.flathub.yml.in and keeps AppStream compose enabled for Flathub builds.
  • Tagged GitHub releases now attach both mobidevices.flatpak and mobidevices-flathub-submission-<tag>.tar.gz, so the release already contains the final Flatpak bundle plus the Flathub submission files.
  • Local Flatpak build requires flatpak-builder, org.gnome.Sdk//50, org.gnome.Platform//50, and org.freedesktop.Sdk.Extension.rust-stable//25.08.
  • Hosted screenshots are configured in linux/com.mobidevices.desktop.metainfo.xml and should stay available at stable public HTTPS URLs.

Documentation

  • Workflow and constraints: AGENTS.md
  • CI validation: .github/workflows/ci.yml
  • Release workflow: .github/workflows/release.yml

About

MobiDevices brings https://mobidevices.com into a desktop app. Browse gadget news, reviews, and technology articles with built-in navigation, proper external-link handling, and restored window state.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors