Saltar al contenido

Snapcraft

1. Install snap

Ventana de terminal
sudo apt install snapd

2. Install a base snap

Ventana de terminal
sudo snap install core22

3. Install snapcraft

Ventana de terminal
sudo snap install snapcraft --classic
  1. Crea una cuenta de UbuntuOne.
  2. Ve al sitio web de Snapcraft y registra un nombre de aplicación.
  3. Crea un archivo snapcraft.yaml en la raíz de tu proyecto.
  4. Ajusta los nombres en el archivo snapcraft.yaml.
name: appname
base: core22
version: '0.1.0'
summary: Your summary # 79 char long summary
description: |
Your description
grade: stable
confinement: strict
layout:
/usr/lib/$SNAPCRAFT_ARCH_TRIPLET/webkit2gtk-4.1:
bind: $SNAP/usr/lib/$SNAPCRAFT_ARCH_TRIPLET/webkit2gtk-4.1
apps:
appname:
command: usr/bin/appname
desktop: usr/share/applications/appname.desktop
extensions: [gnome]
#plugs:
# - network
# Add whatever plugs you need here, see https://snapcraft.io/docs/snapcraft-interfaces for more info.
# The gnome extension already includes [ desktop, desktop-legacy, gsettings, opengl, wayland, x11, mount-observe, calendar-service ]
# - single-instance-plug # add this if you're using the single-instance plugin
#slots:
# Add the slots you need to expose to other snaps
# - single-instance-plug # add this if you're using the single-instance plugin
# Add these lines only if you're using the single-instance plugin
# Check https://v2.tauri.app/plugin/single-instance/ for details
#slots:
# single-instance:
# interface: dbus
# bus: session
# name: org.net_mydomain_MyApp.SingleInstance # Remember to change net_mydomain_MyApp to your app ID with "_" instead of "." and "-"
#
#plugs:
# single-instance-plug:
# interface: dbus
# bus: session
# name: org.net_mydomain_MyApp.SingleInstance # Remember to change net_mydomain_MyApp to your app ID with "_" instead of "." and "-"
package-repositories:
- type: apt
components: [main]
suites: [noble]
key-id: 78E1918602959B9C59103100F1831DDAFC42E99D
url: http://ppa.launchpad.net/snappy-dev/snapcraft-daily/ubuntu
parts:
build-app:
plugin: dump
build-snaps:
- node/20/stable
- rustup/latest/stable
build-packages:
- libwebkit2gtk-4.1-dev
- build-essential
- curl
- wget
- file
- libxdo-dev
- libssl-dev
- libayatana-appindicator3-dev
- librsvg2-dev
- dpkg
stage-packages:
- libwebkit2gtk-4.1-0
- libayatana-appindicator3-1
source: .
override-build: |
set -eu
npm install
npm run tauri build -- --bundles deb
dpkg -x src-tauri/target/release/bundle/deb/*.deb $SNAPCRAFT_PART_INSTALL/
sed -i -e "s|Icon=appname|Icon=/usr/share/icons/hicolor/32x32/apps/appname.png|g" $SNAPCRAFT_PART_INSTALL/usr/share/applications/appname.desktop
  • La variable name define el nombre de tu aplicación y es obligatorio que se establezca con el nombre que has registrado anteriormente.
  • La variable base define qué núcleo estás utilizando.
  • La variable version define la versión y debe actualizarse con cada cambio en el repositorio de origen.
  • La sección apps te permite exponer los archivos de escritorio y binarios para permitir al usuario ejecutar tu aplicación.
  • La sección package-repositories te permite agregar un repositorio de paquetes para ayudarte a satisfacer tus dependencias.
  • build-packages/build-snaps define las dependencias de compilación para tu snap.
  • stage-packages/stage-snaps define las dependencias de tiempo de ejecución para tu snap.
  • La sección override-build ejecuta una serie de comandos después de que se extraen las fuentes.
Ventana de terminal
sudo snapcraft
Ventana de terminal
snap run your-app
Ventana de terminal
snapcraft login # Login with your UbuntuOne credentials
snapcraft upload --release=stable mysnap_latest_amd64.snap
  1. En la página de desarrollador de tus aplicaciones haz clic en la pestaña builds.
  2. Haz clic en login with github.
  3. Ingresa los detalles de tu repositorio.

© 2026 Colaboradores de Tauri. CC-BY / MIT