SlideShare a Scribd company logo
Kukuh Syafaat
kukuh@syafaat.id
Flatpak & AppImage Usage on
openSUSE. Which One Suitable
for openSUSE Users?
openSUSE Asia Summit 2017
Chofu, Tokyo, Japan
October 21 - 22, 2017
Hello (world)
●
Kukuh Syafaat
– インドネシア
– FOSS Enthusiast
– openSUSE-ID
– Translator
●
https://l10n.opensuse.org
●
https://l10n.gnome.org
●
Some FOSS projects at transifex.com
– Endless Ambassador
●
アプリケーションコンテナ技術の Flatpak と
AppImage どちらを使うべきか ?
– アプリケーション、ライブラリを 1 つのコンテナ ( パッケー
ジ ) にして どのディストリでも動くように
Cross Distribution
Packages/Containerised
Applications
Snap, AppImage, Flatpak
Feature Snap AppImage Flatpak
No softare
necessary to install
a package
No Yes No
Shared runtimes Basic No Full
Sandboxing AppArmor Yes Custom
Repository support Yes No Yes
Central repo Yes No Yes
Updates Automatic Yes Automatic
Source: https://ttt.devpy.me/snapcraf-appimage-flatpak/ tith some changes
Snap
●
https://snapcraf.io/
●
The installation (on distros other than Ubuntu) of Snapcraf
have a lot more dificult and buggy
Flatpak
Flatpak
●
Flatpak (formerly xdg-app) is a softare utility for softare
deployment, package management, and application
virtualization for Linux desktop computers.
●
http://flatpak.org/
Why Flatpak?
●
Access a tide variety of applications
●
Get net versions faster
●
Safely update your apps tithout having to reboot
●
Install diferent versions of the same application
●
Secure, sandboxed applications
LIBRARY LIBRARY LIBRARY
SANDBOX
PORTAL
OPERATING SYSTEM
DATA
CODE
APPLICATION
LIBRARY LIBRARY LIBRARY
LIBRARY LIBRARY LIBRARY
RUNTIME
(SHARED)
PORTAL PORTAL
Install Flatpak on openSUSE
$ sudo zypper install flatpak
Current Version
●
Tumbleteed: 0.9.8
●
Leap 42.3: 0.8.6
https://flathub.org/
Flatpak Repositories
●
Flathub
$ flatpak remote-add --if-not-exists flathub
https://flathub.org/repo/flathub.flatpakrepo
●
GNOME
$ flatpak remote-add --if-not-exists gnome-nightly
https://sdk.gnome.org/gnome-nightly.flatpakrepo
$ flatpak remote-add --if-not-exists gnome-apps-nightly
https://sdk.gnome.org/gnome-apps-nightly.flatpakrepo
Flatpak
Case Study
LibreOfice in openSUSE
●
Current Version
– Tumbleteed: 5.4.2
– Leap 42.3: 5.3.6
LibreOfice Flatpak
●
http://ttt.libreofice.org/dotnload/flatpak/
●
http://dotnload.documentfoundation.org/libreofice/flatpak/
$ wget
http://download.documentfoundation.org/libr
eoffice/flatpak/latest/LibreOffice.flatpak
$ flatpak install --user --bundle
LibreOffice.flatpak
$ flatpak run org.libreoffice.LibreOffice
Spotify Flatpak
$ flatpak install --from
https://flathub.org/repo/appstream/com.spotify.
Client.flatpakref
$ flatpak run com.spotify.Client
https://endlessos.com/
= Flatpak + GNOME + OSTree
Source: https://ttitter.com/FlatpakApps/status/918046440231964672
AppImage
Flatpak/Flathub Issues
Source: https://ttitter.com/sysrich/status/907134588941729792
AppImage
●
Format for distributing portable softare on Linux tithout
needing superuser permissions to install the application.
●
https://appimage.org/
Source: https://speakerdeck.com/probonopd/opensuse-conference-2017-obs-b-appimage
Source: https://speakerdeck.com/probonopd/opensuse-conference-2017-obs-b-appimage
Source: https://speakerdeck.com/probonopd/opensuse-conference-2017-obs-b-appimage
Source: https://speakerdeck.com/probonopd/opensuse-conference-2017-obs-b-appimage
Running AppImage
●
Make it executable
$ chmod a+x YourApp.AppImage
●
Run
$ ./YourApp.AppImage
AppImage
Case Study
LibreOfice AppImage
●
http://libreofice.soluzioniopen.com/
– Stable
●
LibreOfice-5.3.6
●
LibreOfice-5.4.1
– Pre-Releases
●
LibreOfice-5.4.2.2
– Daily
●
LibreOficeDev-6.0.0
Kdenlive
●
https://kdenlive.org/dotnload/
– Latest AppImage 17.08.1
OpenShot
●
http://ttt.openshot.org/dotnload/
– Latest AppImage v2.4.0
Krita
●
https://krita.org/en/dotnload/krita-desktop/
– Latest AppImage v3.3.0
AppImageHub
●
Crotd-sourced central AppImage directory
●
https://appimage.github.io/apps/
Source: https://ttitter.com/probonopd/status/912561641316847616
Source: https://speakerdeck.com/probonopd/opensuse-conference-2017-obs-b-appimage
AppImage & Flatpak
Feature AppImage Flatpak
No softare necessary to
install a package
Yes No
Shared runtimes No Full
Sandboxing Yes Custom
Repository support No Yes
Central repo No Yes
Updates Yes Automatic
Source: https://ttt.devpy.me/snapcraf-appimage-flatpak/ tith some changes
Next session:
Using OBS to Build Containerised Application Image
Learn Hot To Generate AppImage
Q&A
THANK YOU
ありがとうございました
Join Us at www.opensuse.org
License
This slide deck is licensed under the Creative Commons Attribution-ShareAlike 4.0 International license.
It can be shared and adapted for any purpose (even commercially) as long as Attribution is given and any
derivative tork is distributed under the same license.
Details can be found at https://creativecommons.org/licenses/by-sa/4.0/
General Disclaimer
This document is not to be construed as a promise by any participating organisation to develop, deliver, or
market a product. It is not a commitment to deliver any material, code, or functionality, and should not be
relied upon in making purchasing decisions. openSUSE makes no representations or tarranties tith respect
to the contents of this document, and specifically disclaims any express or implied tarranties of
merchantability or fitness for any particular purpose. The development, release, and timing of features or
functionality described for openSUSE products remains at the sole discretion of openSUSE. Further,
openSUSE reserves the right to revise this document and to make changes to its content, at any time,
tithout obligation to notify any person or entity of such revisions or changes. All openSUSE marks
referenced in this presentation are trademarks or registered trademarks of SUSE LLC, in the United States
and other countries. All third-party trademarks are the property of their respective otners.
Credits
Template
Richard Brotn
rbrotn@opensuse.org
Design & Inspiration
openSUSE Design Team
http://opensuse.github.io/branding-
guidelines/

More Related Content

What's hot

Today Class - Mobile Edition
Today Class - Mobile EditionToday Class - Mobile Edition
Today Class - Mobile Edition
Rodrigo Prates
 

What's hot (20)

FFmpeg: A Retrospective
FFmpeg: A RetrospectiveFFmpeg: A Retrospective
FFmpeg: A Retrospective
 
Today Class - Mobile Edition
Today Class - Mobile EditionToday Class - Mobile Edition
Today Class - Mobile Edition
 
Why engineers should code
Why engineers should codeWhy engineers should code
Why engineers should code
 
Android Platform Debugging and Development
Android Platform Debugging and DevelopmentAndroid Platform Debugging and Development
Android Platform Debugging and Development
 
Embedded Android Workshop with Marshmallow
Embedded Android Workshop with MarshmallowEmbedded Android Workshop with Marshmallow
Embedded Android Workshop with Marshmallow
 
tizen-upstream-coop-tdc2014-pcoval
tizen-upstream-coop-tdc2014-pcovaltizen-upstream-coop-tdc2014-pcoval
tizen-upstream-coop-tdc2014-pcoval
 
Android Platform Debugging and Development
Android Platform Debugging and DevelopmentAndroid Platform Debugging and Development
Android Platform Debugging and Development
 
Migrating from PDE to Tycho builds
Migrating from PDE to Tycho buildsMigrating from PDE to Tycho builds
Migrating from PDE to Tycho builds
 
Tips & Tricks for Maven Tycho
Tips & Tricks for Maven TychoTips & Tricks for Maven Tycho
Tips & Tricks for Maven Tycho
 
Developing Android Platform Tools
Developing Android Platform ToolsDeveloping Android Platform Tools
Developing Android Platform Tools
 
Droidcon Italy 2015: can you work without open source libraries?
Droidcon Italy 2015: can you work without open source libraries?Droidcon Italy 2015: can you work without open source libraries?
Droidcon Italy 2015: can you work without open source libraries?
 
Getting started with coding for Jolla Sailfish OS. 22 Feb 2014, Tampere, Finland
Getting started with coding for Jolla Sailfish OS. 22 Feb 2014, Tampere, FinlandGetting started with coding for Jolla Sailfish OS. 22 Feb 2014, Tampere, Finland
Getting started with coding for Jolla Sailfish OS. 22 Feb 2014, Tampere, Finland
 
Android Treble: Blessing or Trouble?
Android Treble: Blessing or Trouble?Android Treble: Blessing or Trouble?
Android Treble: Blessing or Trouble?
 
Virtual scrum
Virtual scrumVirtual scrum
Virtual scrum
 
Owasp Juice Shop: Achieving sustainability for open source projects
Owasp Juice Shop: Achieving sustainability for open source projectsOwasp Juice Shop: Achieving sustainability for open source projects
Owasp Juice Shop: Achieving sustainability for open source projects
 
Slide 8 and 9
Slide 8 and 9Slide 8 and 9
Slide 8 and 9
 
Voxxed Days Villnius 2015 - Burning Marshmallows
Voxxed Days Villnius 2015 - Burning MarshmallowsVoxxed Days Villnius 2015 - Burning Marshmallows
Voxxed Days Villnius 2015 - Burning Marshmallows
 
10 11-hart installing pythonsoftware
10 11-hart installing pythonsoftware10 11-hart installing pythonsoftware
10 11-hart installing pythonsoftware
 
Why Open Source is Important and What are We Doing About it?
Why Open Source is Important and What are We Doing About it?Why Open Source is Important and What are We Doing About it?
Why Open Source is Important and What are We Doing About it?
 
OWASP Juice Shop 5.x and beyond
OWASP Juice Shop 5.x and beyondOWASP Juice Shop 5.x and beyond
OWASP Juice Shop 5.x and beyond
 

Similar to Flatpak and AppImage usage on openSUSE

5 minute intro to virtualenv
5 minute intro to virtualenv5 minute intro to virtualenv
5 minute intro to virtualenv
amenasse
 

Similar to Flatpak and AppImage usage on openSUSE (20)

Using latest LibreOffice on openSUSE Leap 15 - by modern packaging systems
Using latest LibreOffice on openSUSE Leap 15 - by modern packaging systemsUsing latest LibreOffice on openSUSE Leap 15 - by modern packaging systems
Using latest LibreOffice on openSUSE Leap 15 - by modern packaging systems
 
openSUSE Leap & Flatpak
openSUSE Leap & FlatpakopenSUSE Leap & Flatpak
openSUSE Leap & Flatpak
 
openSUSE Leap 15.0
openSUSE Leap 15.0openSUSE Leap 15.0
openSUSE Leap 15.0
 
Ubuntu Core 技术详解
Ubuntu Core 技术详解Ubuntu Core 技术详解
Ubuntu Core 技术详解
 
Flatpak
FlatpakFlatpak
Flatpak
 
5 minute intro to virtualenv
5 minute intro to virtualenv5 minute intro to virtualenv
5 minute intro to virtualenv
 
Uyuni is now translatable
Uyuni is now translatableUyuni is now translatable
Uyuni is now translatable
 
Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure
 
Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure
 
Building Eclipse Plugins with Tycho
Building Eclipse Plugins with TychoBuilding Eclipse Plugins with Tycho
Building Eclipse Plugins with Tycho
 
managing-Indonesia-openSUSE-community-mirror-infrastructure.pdf
managing-Indonesia-openSUSE-community-mirror-infrastructure.pdfmanaging-Indonesia-openSUSE-community-mirror-infrastructure.pdf
managing-Indonesia-openSUSE-community-mirror-infrastructure.pdf
 
Advanced deployment scenarios (netcoreconf)
Advanced deployment scenarios (netcoreconf)Advanced deployment scenarios (netcoreconf)
Advanced deployment scenarios (netcoreconf)
 
Nagios Conference 2014 - Jess Portnoy - Nagios Monitoring Kaltura - The Open ...
Nagios Conference 2014 - Jess Portnoy - Nagios Monitoring Kaltura - The Open ...Nagios Conference 2014 - Jess Portnoy - Nagios Monitoring Kaltura - The Open ...
Nagios Conference 2014 - Jess Portnoy - Nagios Monitoring Kaltura - The Open ...
 
Sleep Peacefully as Maven Tycho Builds your Product
Sleep Peacefully as Maven Tycho Builds your ProductSleep Peacefully as Maven Tycho Builds your Product
Sleep Peacefully as Maven Tycho Builds your Product
 
Apache Deep Learning 201
Apache Deep Learning 201Apache Deep Learning 201
Apache Deep Learning 201
 
Instruction to build Apache CloudStack docs with Sphinx
Instruction to build Apache CloudStack docs with SphinxInstruction to build Apache CloudStack docs with Sphinx
Instruction to build Apache CloudStack docs with Sphinx
 
English - Lauching a Public PaaS on Open Source Getup & OpenShift Origin - FI...
English - Lauching a Public PaaS on Open Source Getup & OpenShift Origin - FI...English - Lauching a Public PaaS on Open Source Getup & OpenShift Origin - FI...
English - Lauching a Public PaaS on Open Source Getup & OpenShift Origin - FI...
 
XPDays-2018
XPDays-2018XPDays-2018
XPDays-2018
 
Understanding Technologies - Presentation for College Students
Understanding Technologies - Presentation for College StudentsUnderstanding Technologies - Presentation for College Students
Understanding Technologies - Presentation for College Students
 
Building ContinuousIntegration with Virtuozzo DevOps
Building ContinuousIntegration with Virtuozzo DevOpsBuilding ContinuousIntegration with Virtuozzo DevOps
Building ContinuousIntegration with Virtuozzo DevOps
 

More from Kukuh Syafaat

More from Kukuh Syafaat (20)

Building Upstream Contribution in Local FOSS Community
Building Upstream Contribution in Local FOSS CommunityBuilding Upstream Contribution in Local FOSS Community
Building Upstream Contribution in Local FOSS Community
 
Translating Open Source Apps
Translating Open Source AppsTranslating Open Source Apps
Translating Open Source Apps
 
Dibalik Layar Pengembangan GNOME 3.36
Dibalik Layar Pengembangan GNOME 3.36 Dibalik Layar Pengembangan GNOME 3.36
Dibalik Layar Pengembangan GNOME 3.36
 
Berkenalan (lagi) Dengan openSUSE
Berkenalan (lagi) Dengan openSUSEBerkenalan (lagi) Dengan openSUSE
Berkenalan (lagi) Dengan openSUSE
 
GNOME l10n Indonesia Progress
GNOME l10n Indonesia ProgressGNOME l10n Indonesia Progress
GNOME l10n Indonesia Progress
 
LibreOffice Flatpak, Snap and AppImage
LibreOffice Flatpak, Snap and AppImageLibreOffice Flatpak, Snap and AppImage
LibreOffice Flatpak, Snap and AppImage
 
GNOME Recipes & Local Wisdom
GNOME Recipes & Local WisdomGNOME Recipes & Local Wisdom
GNOME Recipes & Local Wisdom
 
Berkenalan dengan Endless OS
Berkenalan dengan Endless OSBerkenalan dengan Endless OS
Berkenalan dengan Endless OS
 
GUI Prototyping / Wireframing with Pencil
GUI Prototyping / Wireframing with PencilGUI Prototyping / Wireframing with Pencil
GUI Prototyping / Wireframing with Pencil
 
Customizing GNOME Desktop
Customizing GNOME DesktopCustomizing GNOME Desktop
Customizing GNOME Desktop
 
Contributing to FOSS with Inkscape
Contributing to FOSS with InkscapeContributing to FOSS with Inkscape
Contributing to FOSS with Inkscape
 
Tambah Keren dengan openSUSE
Tambah Keren dengan openSUSETambah Keren dengan openSUSE
Tambah Keren dengan openSUSE
 
Tambah Keren dengan openSUSE
Tambah Keren dengan openSUSETambah Keren dengan openSUSE
Tambah Keren dengan openSUSE
 
Bermain Musik di GNU/Linux
Bermain Musik di GNU/LinuxBermain Musik di GNU/Linux
Bermain Musik di GNU/Linux
 
GNOME(TM) Desktop for Everyone
GNOME(TM) Desktop for EveryoneGNOME(TM) Desktop for Everyone
GNOME(TM) Desktop for Everyone
 
Making Music with GNOME(TM)
Making Music with GNOME(TM)Making Music with GNOME(TM)
Making Music with GNOME(TM)
 
HTML5 dengan Maleo
HTML5 dengan MaleoHTML5 dengan Maleo
HTML5 dengan Maleo
 
HTML5 dengan Maleo
HTML5 dengan MaleoHTML5 dengan Maleo
HTML5 dengan Maleo
 
Pengenalan BlankOn
Pengenalan BlankOnPengenalan BlankOn
Pengenalan BlankOn
 
Kesenian
KesenianKesenian
Kesenian
 

Recently uploaded

Recently uploaded (20)

AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří Karpíšek
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
 

Flatpak and AppImage usage on openSUSE