CINXE.COM

Blog | Snapcraft

<!doctype html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Blog | Snapcraft</title> <!-- Preconnect to establish early connections to important third-party origins --> <link rel="preconnect" href="https://www.google-analytics.com"> <link rel="preconnect" href="https://assets.ubuntu.com"> <link rel="preconnect" href="https://munchkin.marketo.net"> <link rel="preload" href="https://assets.ubuntu.com/v1/9689339a-snapcraft-hero-background--light.png" as="image"> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-KCGXHQS');</script> <!-- End Google Tag Manager --> <link rel="stylesheet" href="/static/css/styles.css?v=9838aec" /> <script src="/static/js/modules/raven.min.js?v=daf037c" defer></script> <script> window.addEventListener("DOMContentLoaded", function() { Raven.config('https://1e82fd54e08142c9978f623cb746b965@sentry.is.canonical.com//3', { whitelistUrls: ['staging.snapcraft.io/static/js', 'snapcraft.io/static/js/'], ignoreUrls: ['staging.snapcraft.io/static/js/modules', 'snapcraft.io/static/js/modules'], ignoreErrors: ['AbortError'], release: 'commit_id', environment: 'production' }).install(); }); </script> <script src="/static/js/dist/base.js?v=df18d39" defer></script> <script src="/static/js/dist/blog.js?v=4ef53f8" defer></script> <script src="https://assets.ubuntu.com/v1/703e23c9-lazysizes+noscript+native-loading.5.1.2.min.js" defer></script> <meta name="description" content="Snaps are containerised software packages that are simple to create and install. They auto-update and are safe to run. And because they bundle their dependencies, they work on all major Linux systems without modification."> <meta name="copydoc" content="https://docs.google.com/document/d/1YWhw_DlbXrq9CBUtMgjzlzZds0_m8xr-MZlXpXkMvIQ/edit"> <meta name="google-site-verification" content="Y1JayrP2iS6jS6Rd7uGX3Kzgm0oD8rV5R6TkzteLbQg" /> <meta property="og:title" content="Blog | Snapcraft"/> <meta property="og:site_name" content="Snapcraft"/> <meta property="og:type" content="website"/> <meta property="og:description" content="Snaps are containerised software packages that are simple to create and install. They auto-update and are safe to run. And because they bundle their dependencies, they work on all major Linux systems without modification."/> <meta property="og:image" content="https://assets.ubuntu.com/v1/4726d040-Snap+logo+white+bg.jpg" /> <meta property="og:image:width" content="1200" /> <meta property="og:image:height" content="630" /> <meta property="og:image:alt" content="Snapcraft banner" /> <meta property="og:url" content="https://snapcraft.io/blog" /> <meta property="twitter:card" content="summary_large_image" /> <meta property="twitter:site" content="@snapcraftio" /> <meta property="twitter:creator" content="@snapcraftio" /> <meta property="twitter:image" content="https://assets.ubuntu.com/v1/4726d040-Snap+logo+white+bg.jpg" /> <meta property="twitter:url" content="https://snapcraft.io/blog" /> <link rel="alternate" type="application/rss+xml" href="/blog/feed" title="Snapcraft.io's Blog RSS feed"> <link rel="canonical" href="https://snapcraft.io/blog" /> <link rel="icon" type="image/png" href="https://assets.ubuntu.com/v1/d4ca039f-favicon_16px.png" sizes="16x16" /> <link rel="icon" type="image/png" href="https://assets.ubuntu.com/v1/841d0bcf-favicon_32px.png" sizes="32x32" /> <link rel="icon" type="image/png" href="/static/snapcraft-favicon.png?v=055e94b" sizes="144x144" /> <link rel="author" href="/humans.txt" /> </head> <body class="l-site"> <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-KCGXHQS" height="0" width="0" style="display: none; visibility: hidden;"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <!-- JS that is needed right away --> <script src="/static/js/dist/cookie-policy.js?v=24ad4f8"></script> <header id="navigation" class="p-navigation is-dark"> <div class="p-navigation__row--25-75"> <div class="p-navigation__banner"> <div class="p-navigation__tagged-logo"> <a class="p-navigation__link" href="/"> <div class="p-navigation__logo-tag"> <img class="p-navigation__logo-icon" src="https://assets.ubuntu.com/v1/11ff571b-snapcraft.svg" alt=""> </div> <span class="p-navigation__logo-title" >Canonical Snapcraft</span> </a> </div> <a href="#navigation" class="p-navigation__toggle--open" title="menu">Menu</a> <a href="#navigation-closed" class="p-navigation__toggle--close" title="close menu">Close menu</a> </div> <nav class="p-navigation__nav"> <ul class="p-navigation__items" role="menu"> <li class="p-navigation__item " role="menuitem" > <a class="p-navigation__link" href="/store"> Snap Store </a> </li> <li class="p-navigation__item " role="menuitem" > <a class="p-navigation__link" href="/about"> About <span class="u-hide--large">Snapcraft</span> </a> </li> <li class="p-navigation__item--dropdown-toggle is-selected" id="learn-link" role="menuitem" > <a class="p-navigation__link" href="#learn-menu" aria-controls="learn-menu"> Learn </a> <ul class="p-navigation__dropdown" id="learn-menu" aria-hidden="true"> <li> <a class="p-navigation__dropdown-item" href="/blog"> Blog </a> </li> <li> <a class="p-navigation__dropdown-item" href="/build"> Build </a> </li> <li> <a class="p-navigation__dropdown-item" href="/docs/"> Docs </a> </li> <li> <a class="p-navigation__dropdown-item" href="/docs/snap-tutorials"> Tutorials </a> </li> </ul> </li> <li class="p-navigation__item " role="menuitem" > <a class="p-navigation__link" href="/iot"> IoT </a> </li> <li class="p-navigation__item" role="menuitem"> <a class="p-navigation__link " href="https://forum.snapcraft.io/">Forum</a> </li> </ul> <ul class="p-navigation__items js-nav-account global-nav" role="menu"> <li class="p-navigation__item--dropdown-toggle js-nav-account--authenticated u-hide" role="menuitem" id="link-1"> <a class="p-navigation__link js-account--name" aria-controls="account-menu" aria-expanded="false"> My account </a> <ul class="p-navigation__dropdown--right" id="account-menu" aria-hidden="true"> <li> <a href="/account/snaps" class="p-navigation__dropdown-item">My published snaps</a> </li> <li class="js-nav-account--validation-sets u-hide"> <a href="/validation-sets" class="p-navigation__dropdown-item">My validation sets</a> </li> <li class="js-nav-account--stores u-hide"> <a href="/admin" class="p-navigation__dropdown-item">My stores</a> </li> <li> <a href="/admin/account" class="p-navigation__dropdown-item">Account details</a> </li> <li> <a href="/logout" class="p-navigation__dropdown-item">Sign out</a> </li> </ul> </li> <li class="p-navigation__item js-nav-account--notauthenticated u-hide" role="menuitem"> <a class="p-navigation__link" href="/snaps"> Sign in <i class="p-icon--user is-light"></i> </a> </li> </ul> </nav> </div> </header> <section id="main-content" class="p-strip--image is-shallow snapcraft-banner-background"> <div class="row"> <div class="col-10"> <h2 class="u-no-margin--bottom">Blog</h2> </div> </div> </section> <section class="p-strip is-shallow"> <div class="row u-clearfix"> <div class="col-4 col-medium-3 p-card"> <div class="p-card__content"> <div class="u-crop--16-9"> <a href="/blog/creating-snaps-on-ubuntu-touch"> <img alt="" height="199" loading="lazy" src="https://res.cloudinary.com/canonical/image/fetch/f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_354,h_199/https://ubuntu.com/wp-content/uploads/8a8f/ubport-snap-touch-banner.jpg" srcset="https://res.cloudinary.com/canonical/image/fetch/c_limit,f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_708,h_398/https://ubuntu.com/wp-content/uploads/8a8f/ubport-snap-touch-banner.jpg 2x" width="354"/> </a> </div> <h3 class="p-heading--4"> <a href="/blog/creating-snaps-on-ubuntu-touch">Creating Snaps on Ubuntu Touch</a> </h3> <p><em>by Aaron Prisk on 3 April 2024</em></p> </div> </div> <div class="col-4 col-medium-3 p-card"> <div class="p-card__content"> <div class="u-crop--16-9"> <a href="/blog/managing-software-snap-store-proxy"> <img alt="" height="199" loading="lazy" src="https://res.cloudinary.com/canonical/image/fetch/f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_354,h_199/https://ubuntu.com/wp-content/uploads/1a29/Managing-software-in-complex-network-environments-the-Snap-Store-Proxy.png" srcset="https://res.cloudinary.com/canonical/image/fetch/c_limit,f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_708,h_398/https://ubuntu.com/wp-content/uploads/1a29/Managing-software-in-complex-network-environments-the-Snap-Store-Proxy.png 2x" width="354"/> </a> </div> <h3 class="p-heading--4"> <a href="/blog/managing-software-snap-store-proxy">Managing software in complex network environments: the Snap Store Proxy</a> </h3> <p><em>by Holly Hall on 15 January 2024</em></p> </div> </div> <div class="col-4 col-medium-3"> <div class="p-card"> <h5 class="p-muted-heading">Newsletter Signup</h5> <hr class="u-sv1" /> <div class="p-card__content js-newsletter-signup"> <form action="https://pages.canonical.com/index.php/leadCapture/save" method="post" class="p-form" id="mktoForm_3376"> <div class="p-form__group"> <label for="Email" class="u-no-padding--top">Email:*</label> <input id="Email" name="Email" maxlength="255" type="email" required /> </div> <div class="p-form__group"> <label for="canonicalUpdatesOptIn" class="p-checkbox"> <input name="canonicalUpdatesOptIn" id="canonicalUpdatesOptIn" type="checkbox" value="Receive updates" class="p-checkbox__input"/> <span class="p-checkbox__label">I agree to receive information about Canonical’s products and services.</span> </label> </div> <p> <small> In submitting this form, I confirm that I have read and agree to <a href="https://www.ubuntu.com/legal/dataprivacy" target="_blank" id="">Canonical's Privacy Policy</a> </small> </p> <p class="u-no-margin--bottom"> <input type="hidden" name="Consent_to_Processing__c" value="Yes" /> <button type="submit" class="p-button--positive u-no-margin--bottom">Subscribe now</button> </p> <input type="hidden" name="formid" value="3376" /> <input type="hidden" name="lpId" value="" /> <input type="hidden" name="subId" value="" /> <input type="hidden" name="munchkinId" value="066-EOV-335" /> <input type="hidden" name="lpurl" value="" /> <input type="hidden" name="ret" value="https://snapcraft.io/blog?newsletter=true" /> <input type="hidden" name="cr" value="" /> <input type="hidden" name="kw" value="" /> <input type="hidden" name="q" value="" /> </form> </div> </div> </div> <div class="col-4 col-medium-3 p-card"> <div class="p-card__content"> <div class="u-crop--16-9"> <a href="/blog/snapcraft-io-reloaded-check-out-the-new-look-and-feel"> <img alt="" height="199" loading="lazy" src="https://res.cloudinary.com/canonical/image/fetch/f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_354,h_199/https://ubuntu.com/wp-content/uploads/d4d2/snadfade2.png" srcset="https://res.cloudinary.com/canonical/image/fetch/c_limit,f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_708,h_398/https://ubuntu.com/wp-content/uploads/d4d2/snadfade2.png 2x" width="354"/> </a> </div> <h3 class="p-heading--4"> <a href="/blog/snapcraft-io-reloaded-check-out-the-new-look-and-feel">Snapcraft.io reloaded: check out the new look and feel</a> </h3> <p><em>by Holly Hall on 30 June 2023</em></p> </div> </div> <div class="col-4 col-medium-3 p-card"> <div class="p-card__content"> <div class="u-crop--16-9"> <a href="/blog/improving-snap-maintenance-with-automation"> <img alt="" height="199" loading="lazy" src="https://res.cloudinary.com/canonical/image/fetch/f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_354,h_199/https://ubuntu.com/wp-content/uploads/9775/david-nieto-aUA4_w5zba0-unsplash.jpg" srcset="https://res.cloudinary.com/canonical/image/fetch/c_limit,f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_708,h_398/https://ubuntu.com/wp-content/uploads/9775/david-nieto-aUA4_w5zba0-unsplash.jpg 2x" width="354"/> </a> </div> <h3 class="p-heading--4"> <a href="/blog/improving-snap-maintenance-with-automation">Improving snap maintenance with automation</a> </h3> <p><em>by Heather Ellsworth on 27 June 2023</em></p> </div> </div> <div class="col-4 col-medium-3 p-card"> <div class="p-card__content"> <div class="u-crop--16-9"> <a href="/blog/snapcraft-8-0-and-the-respectable-end-of-core18"> <img alt="" height="199" loading="lazy" src="https://res.cloudinary.com/canonical/image/fetch/f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_354,h_199/https://ubuntu.com/wp-content/uploads/af2a/ilona-frey-0UKyrKCoutM-unsplash.jpg" srcset="https://res.cloudinary.com/canonical/image/fetch/c_limit,f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_708,h_398/https://ubuntu.com/wp-content/uploads/af2a/ilona-frey-0UKyrKCoutM-unsplash.jpg 2x" width="354"/> </a> </div> <h3 class="p-heading--4"> <a href="/blog/snapcraft-8-0-and-the-respectable-end-of-core18">Snapcraft 8.0 and the respectable end of core18</a> </h3> <p><em>by Igor Ljubuncic on 16 June 2023</em></p> </div> </div> <div class="col-4 col-medium-3 p-card"> <div class="p-card__content"> <div class="u-crop--16-9"> <a href="/blog/release-management-for-snaps-made-simpler"> <img alt="" height="199" loading="lazy" src="https://res.cloudinary.com/canonical/image/fetch/f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_354,h_199/https://ubuntu.com/wp-content/uploads/0c7f/drew-patrick-miller-_o6AAx9dl_Y-unsplash.jpg" srcset="https://res.cloudinary.com/canonical/image/fetch/c_limit,f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_708,h_398/https://ubuntu.com/wp-content/uploads/0c7f/drew-patrick-miller-_o6AAx9dl_Y-unsplash.jpg 2x" width="354"/> </a> </div> <h3 class="p-heading--4"> <a href="/blog/release-management-for-snaps-made-simpler">Release management for snaps made simpler</a> </h3> <p><em>by Holly Hall on 9 June 2023</em></p> </div> </div> <div class="col-4 col-medium-3 p-card"> <div class="p-card__content"> <div class="u-crop--16-9"> <a href="/blog/firefox-snap-updates-and-upgrades"> <img alt="" height="199" loading="lazy" src="https://res.cloudinary.com/canonical/image/fetch/f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_354,h_199/https://ubuntu.com/wp-content/uploads/dd1f/firefoxlogo.png" srcset="https://res.cloudinary.com/canonical/image/fetch/c_limit,f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_708,h_398/https://ubuntu.com/wp-content/uploads/dd1f/firefoxlogo.png 2x" width="354"/> </a> </div> <h3 class="p-heading--4"> <a href="/blog/firefox-snap-updates-and-upgrades">The Firefox snap: Updates and Upgrades</a> </h3> <p><em>by Oliver Smith on 17 April 2023</em></p> </div> </div> <div class="col-4 col-medium-3 p-card"> <div class="p-card__content"> <div class="u-crop--16-9"> <a href="/blog/craft-team-welcomes-you-to-another-episode-of-its-adventures"> <img alt="" height="199" loading="lazy" src="https://res.cloudinary.com/canonical/image/fetch/f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_354,h_199/https://ubuntu.com/wp-content/uploads/a88e/nicolas-thomas-3GZi6OpSDcY-unsplash.jpg" srcset="https://res.cloudinary.com/canonical/image/fetch/c_limit,f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_708,h_398/https://ubuntu.com/wp-content/uploads/a88e/nicolas-thomas-3GZi6OpSDcY-unsplash.jpg 2x" width="354"/> </a> </div> <h3 class="p-heading--4"> <a href="/blog/craft-team-welcomes-you-to-another-episode-of-its-adventures">Craft team welcomes you to another episode of its adventures</a> </h3> <p><em>by Igor Ljubuncic on 21 March 2023</em></p> </div> </div> <div class="col-4 col-medium-3 p-card"> <div class="p-card__content"> <div class="u-crop--16-9"> <a href="/blog/what-happens-in-the-craft-team-stays-in-the-craft-team-until-today"> <img alt="" height="199" loading="lazy" src="https://res.cloudinary.com/canonical/image/fetch/f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_354,h_199/https://ubuntu.com/wp-content/uploads/de0f/nick-karvounis-XcLQN-2R9CM-unsplash-smaller.jpg" srcset="https://res.cloudinary.com/canonical/image/fetch/c_limit,f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_708,h_398/https://ubuntu.com/wp-content/uploads/de0f/nick-karvounis-XcLQN-2R9CM-unsplash-smaller.jpg 2x" width="354"/> </a> </div> <h3 class="p-heading--4"> <a href="/blog/what-happens-in-the-craft-team-stays-in-the-craft-team-until-today">What happens in the Craft team stays in the Craft team … until today</a> </h3> <p><em>by Igor Ljubuncic on 6 March 2023</em></p> </div> </div> <div class="col-4 col-medium-3 p-card"> <div class="p-card__content"> <div class="u-crop--16-9"> <a href="/blog/jammin-with-jami-freedom-privacy-snaps"> <img alt="" height="199" loading="lazy" src="https://res.cloudinary.com/canonical/image/fetch/f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_354,h_199/https://ubuntu.com/wp-content/uploads/bbbb/duy-pham-Cecb0_8Hx-o-unsplash-smaller.jpg" srcset="https://res.cloudinary.com/canonical/image/fetch/c_limit,f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_708,h_398/https://ubuntu.com/wp-content/uploads/bbbb/duy-pham-Cecb0_8Hx-o-unsplash-smaller.jpg 2x" width="354"/> </a> </div> <h3 class="p-heading--4"> <a href="/blog/jammin-with-jami-freedom-privacy-snaps">Jammin&#8217; with Jami &#8211; Freedom, privacy, snaps</a> </h3> <p><em>by Igor Ljubuncic on 27 January 2023</em></p> </div> </div> <div class="col-4 col-medium-3 p-card"> <div class="p-card__content"> <div class="u-crop--16-9"> <a href="/blog/snapcrafters-2022-wrap-up"> <img alt="" height="199" loading="lazy" src="https://res.cloudinary.com/canonical/image/fetch/f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_354,h_199/https://ubuntu.com/wp-content/uploads/3662/paolo-chiabrando-fY5qZnjjol0-unsplash-smaller.jpg" srcset="https://res.cloudinary.com/canonical/image/fetch/c_limit,f_auto,q_auto,fl_sanitize,e_sharpen,c_fill,w_708,h_398/https://ubuntu.com/wp-content/uploads/3662/paolo-chiabrando-fY5qZnjjol0-unsplash-smaller.jpg 2x" width="354"/> </a> </div> <h3 class="p-heading--4"> <a href="/blog/snapcrafters-2022-wrap-up">Snapcrafters: 2022 wrap-up</a> </h3> <p><em>by Igor Ljubuncic on 16 December 2022</em></p> </div> </div> </div> <div class="u-fixed-width"> <ol class="p-pagination u-align--center"> <li class="p-pagination__item"> <span class="p-pagination__link--previous is-disabled"><i class="p-icon--chevron-up">Previous page</i></span> </li> <!-- current page --> <li class="p-pagination__item"> <a class="p-pagination__link is-active" href="/blog?page=1">1</a> </li> <li class="p-pagination__item"> <a class="p-pagination__link" href="/blog?page=2">2</a> </li> <li class="p-pagination__item"> <a class="p-pagination__link" href="/blog?page=3">3</a> </li> <li class="p-pagination__item"> <a class="p-pagination__link" href="/blog?page=4">4</a> </li> <li class="p-pagination__item"> <a class="p-pagination__link" href="/blog?page=5">5</a> </li> <li class="p-pagination__item"> <a class="p-pagination__link--next" href="/blog?page=2" title="Next page"> <i class="p-icon--chevron-up">Next page</i> </a> </li> </ol> </div> </section> <footer class="l-footer--sticky p-strip is-dark" id="footer"> <div class="row"> <div class="col-9"> <p> <a class="p-link--inverted" href="#">Back to top <i class="p-icon--chevron-up is-light"></i></a> </p> <p> &copy; 2025 Canonical Ltd. <br/> Ubuntu and Canonical are registered trademarks of Canonical Ltd. <br/> Powered by <a href="https://www.ubuntu.com/kubernetes">Charmed Kubernetes</a> </p> <p class="u-no-limit"> <small> <a href="https://forum.snapcraft.io/">Join the forum</a>, contribute to or report problems with, <a href="https://bugs.launchpad.net/snapd" >snapd</a>, <a href="https://bugs.launchpad.net/snapcraft" >Snapcraft</a>, or <a href="https://github.com/canonical/snapcraft.io/issues/new">this site</a>. </small> </p> </div> <div class="col-3"> <ul class="p-inline-list u-align--right"> <li class="p-inline-list__item"> <a href="https://twitter.com/snapcraftio" class="p-icon--twitter">Share on Twitter</a> </li> <li class="p-inline-list__item"> <a href="https://www.facebook.com/snapcraftio" class="p-icon--facebook">Share on Facebook</a> </li> <li class="p-inline-list__item"> <a href="https://www.youtube.com/snapcraftio" class="p-icon--youtube">Share on YouTube</a> </li> </ul> </div> </div> <div class="u-fixed-width"> <ul class="p-inline-list--middot u-no-margin--bottom"> <li class="p-inline-list__item"> <a class="p-link--inverted" href="https://ubuntu.com/legal/terms-and-policies/snap-store-terms"><small>Terms of Service</small></a> </li> <li class="p-inline-list__item"> <a class="p-link--inverted" href="https://www.ubuntu.com/legal/data-privacy"><small>Data privacy</small></a> </li> <li class="p-inline-list__item"> <a class="p-link--inverted js-revoke-cookie-manager" href=""><small>Manage your tracker settings</small></a> </li> <li class="p-inline-list__item"> <a class="p-link--inverted" href="https://status.snapcraft.io/"><small>Service status</small></a> </li> <li class="p-inline-list__item"> <a class="p-link--inverted" href="https://dashboard.snapcraft.io/"><small>Other functions</small></a> </li> <li class="p-inline-list__item"> <a class="p-link--inverted" href="/about/contact-us" data-js="contact-form-trigger" data-formid="2639"> Contact us </a> </li> </ul> </div> </footer> <div class="p-modal u-hide" id="contact-form-modal"> <section class="p-modal__dialog" role="dialog" aria-modal="true" aria-labeledby="modal-title"> <header class="p-modal__header"> <h2 class="p-modal__title">Contact us</h2> <button class="p-modal__close" aria-label="Close active modal" aria-controls="modal" data-js="close-modal-control">Close</button> </header> <div id="modal-body"></div> </section> </div> <script type="text/template" id="contactFormTemplate"> <form action="https://ubuntu.com/marketo/submit" method="post" id="mktoForm_{{formid}}"> <fieldset class="u-no-margin--bottom"> <legend class="u-off-screen">About you</legend> <h2 class="p-heading--3">About you</h2> <ul class="p-list"> <li class="p-list__item"> <label for="firstName">First name:</label> <input required id="firstName" name="firstName" maxlength="255" type="text" /> </li> <li class="p-list__item"> <label for="lastName">Last name:</label> <input required id="lastName" name="lastName" maxlength="255" type="text" /> </li> <li class="p-list__item"> <label for="email">Email address:</label> <input required id="email" name="email" maxlength="255" type="email" pattern="^[^ ]+@[^ ]+\.[a-z]{2,26}$" /> </li> <li class="p-list__item"> <label for="phone">Mobile/cell phone number:</label> <input required id="phone" name="phone" maxlength="255" type="tel" /> </li> <li class="p-list__item"> <label for="country">Country:</label> <select required id="country" name="country" > <option value="">Select...</option ><option value="FR">France</option ><option value="DE">Germany</option ><option value="JP">Japan</option ><option value="GB">United Kingdom</option ><option value="US">United States of America</option ><option disabled>——————————————————</option ><option value="AF">Afghanistan</option ><option value="AX">Åland Islands</option ><option value="AL">Albania</option ><option value="DZ">Algeria</option ><option value="AS">American Samoa</option ><option value="AD">Andorra</option ><option value="AO">Angola</option ><option value="AI">Anguilla</option ><option value="AQ">Antarctica</option ><option value="AG">Antigua and Barbuda</option ><option value="AR">Argentina</option ><option value="AM">Armenia</option ><option value="AW">Aruba</option ><option value="AU">Australia</option ><option value="AT">Austria</option ><option value="AZ">Azerbaijan</option ><option value="BS">Bahamas</option ><option value="BH">Bahrain</option ><option value="BD">Bangladesh</option ><option value="BB">Barbados</option ><option value="BY">Belarus</option ><option value="BE">Belgium</option ><option value="BZ">Belize</option ><option value="BJ">Benin</option ><option value="BM">Bermuda</option ><option value="BT">Bhutan</option ><option value="BO">Bolivia (Plurinational State of)</option ><option value="BQ">Bonaire, Sint Eustatius and Saba</option ><option value="BA">Bosnia and Herzegovina</option ><option value="BW">Botswana</option ><option value="BV">Bouvet Island</option ><option value="BR">Brazil</option ><option value="IO">British Indian Ocean Territory</option ><option value="BN">Brunei Darussalam</option ><option value="BG">Bulgaria</option ><option value="BF">Burkina Faso</option ><option value="BI">Burundi</option ><option value="KH">Cambodia</option ><option value="CM">Cameroon</option ><option value="CA">Canada</option ><option value="CV">Cabo Verde</option ><option value="KY">Cayman Islands</option ><option value="CF">Central African Republic</option ><option value="TD">Chad</option ><option value="CL">Chile</option ><option value="CN">China</option ><option value="CX">Christmas Island</option ><option value="CC">Cocos (Keeling) Islands</option ><option value="CO">Colombia</option ><option value="KM">Comoros</option ><option value="CG">Congo</option ><option value="CD">Congo (Democratic Republic of the)</option ><option value="CK">Cook Islands</option ><option value="CR">Costa Rica</option ><option value="CI">Côte d'Ivoire</option ><option value="HR">Croatia</option ><option value="CU">Cuba</option ><option value="CW">Curaçao</option ><option value="CY">Cyprus</option ><option value="CZ">Czech Republic</option ><option value="DK">Denmark</option ><option value="DJ">Djibouti</option ><option value="DM">Dominica</option ><option value="DO">Dominican Republic</option ><option value="EC">Ecuador</option ><option value="EG">Egypt</option ><option value="SV">El Salvador</option ><option value="GQ">Equatorial Guinea</option ><option value="ER">Eritrea</option ><option value="EE">Estonia</option ><option value="ET">Ethiopia</option ><option value="FK">Falkland Islands (Malvinas)</option ><option value="FO">Faroe Islands</option ><option value="FJ">Fiji</option ><option value="FI">Finland</option ><option value="FR">France</option ><option value="GF">French Guiana</option ><option value="PF">French Polynesia</option ><option value="TF">French Southern Territories</option ><option value="GA">Gabon</option ><option value="GM">Gambia</option ><option value="GE">Georgia</option ><option value="DE">Germany</option ><option value="GH">Ghana</option ><option value="GI">Gibraltar</option ><option value="GR">Greece</option ><option value="GL">Greenland</option ><option value="GD">Grenada</option ><option value="GP">Guadeloupe</option ><option value="GU">Guam</option ><option value="GT">Guatemala</option ><option value="GG">Guernsey</option ><option value="GN">Guinea</option ><option value="GW">Guinea-Bissau</option ><option value="GY">Guyana</option ><option value="HT">Haiti</option ><option value="HM">Heard Island and McDonald Islands</option ><option value="VA">Holy See</option ><option value="HN">Honduras</option ><option value="HK">Hong Kong</option ><option value="HU">Hungary</option ><option value="IS">Iceland</option ><option value="IN">India</option ><option value="ID">Indonesia</option ><option value="IR">Iran (Islamic Republic of)</option ><option value="IQ">Iraq</option ><option value="IE">Ireland</option ><option value="IM">Isle of Man</option ><option value="IL">Israel</option ><option value="IT">Italy</option ><option value="JM">Jamaica</option ><option value="JP">Japan</option ><option value="JE">Jersey</option ><option value="JO">Jordan</option ><option value="KZ">Kazakhstan</option ><option value="KE">Kenya</option ><option value="KI">Kiribati</option ><option value="KP">Korea (Democratic People's Republic of)</option ><option value="KR">Korea (Republic of)</option ><option value="KW">Kuwait</option ><option value="KG">Kyrgyzstan</option ><option value="LA">Lao People's Democratic Republic</option ><option value="LV">Latvia</option ><option value="LB">Lebanon</option ><option value="LS">Lesotho</option ><option value="LR">Liberia</option ><option value="LY">Libya</option ><option value="LI">Liechtenstein</option ><option value="LT">Lithuania</option ><option value="LU">Luxembourg</option ><option value="MO">Macao</option ><option value="MK">Macedonia (the former Yugoslav Republic of)</option ><option value="MG">Madagascar</option ><option value="MW">Malawi</option ><option value="MY">Malaysia</option ><option value="MV">Maldives</option ><option value="ML">Mali</option ><option value="MT">Malta</option ><option value="MH">Marshall Islands</option ><option value="MQ">Martinique</option ><option value="MR">Mauritania</option ><option value="MU">Mauritius</option ><option value="YT">Mayotte</option ><option value="MX">Mexico</option ><option value="FM">Micronesia (Federated States of)</option ><option value="MD">Moldova (Republic of)</option ><option value="MC">Monaco</option ><option value="MN">Mongolia</option ><option value="ME">Montenegro</option ><option value="MS">Montserrat</option ><option value="MA">Morocco</option ><option value="MZ">Mozambique</option ><option value="MM">Myanmar</option ><option value="NA">Namibia</option ><option value="NR">Nauru</option ><option value="NP">Nepal</option ><option value="NL">Netherlands</option ><option value="NC">New Caledonia</option ><option value="NZ">New Zealand</option ><option value="NI">Nicaragua</option ><option value="NE">Niger</option ><option value="NG">Nigeria</option ><option value="NU">Niue</option ><option value="NF">Norfolk Island</option ><option value="MP">Northern Mariana Islands</option ><option value="NO">Norway</option ><option value="OM">Oman</option ><option value="PK">Pakistan</option ><option value="PW">Palau</option ><option value="PS">Palestine, State of</option ><option value="PA">Panama</option ><option value="PG">Papua New Guinea</option ><option value="PY">Paraguay</option ><option value="PE">Peru</option ><option value="PH">Philippines</option ><option value="PN">Pitcairn</option ><option value="PL">Poland</option ><option value="PT">Portugal</option ><option value="PR">Puerto Rico</option ><option value="QA">Qatar</option ><option value="RE">Réunion</option ><option value="RO">Romania</option ><option value="RU">Russian Federation</option ><option value="RW">Rwanda</option ><option value="BL">Saint Barthélemy</option ><option value="SH">Saint Helena, Ascension and Tristan da Cunha</option ><option value="KN">Saint Kitts and Nevis</option ><option value="LC">Saint Lucia</option ><option value="MF">Saint Martin (French part)</option ><option value="PM">Saint Pierre and Miquelon</option ><option value="VC">Saint Vincent and the Grenadines</option ><option value="WS">Samoa</option ><option value="SM">San Marino</option ><option value="ST">Sao Tome and Principe</option ><option value="SA">Saudi Arabia</option ><option value="SN">Senegal</option ><option value="RS">Serbia</option ><option value="SC">Seychelles</option ><option value="SL">Sierra Leone</option ><option value="SG">Singapore</option ><option value="SX">Sint Maarten (Dutch part)</option ><option value="SK">Slovakia</option ><option value="SI">Slovenia</option ><option value="SB">Solomon Islands</option ><option value="SO">Somalia</option ><option value="ZA">South Africa</option ><option value="GS">South Georgia and the South Sandwich Islands</option ><option value="SS">South Sudan</option ><option value="ES">Spain</option ><option value="LK">Sri Lanka</option ><option value="SD">Sudan</option ><option value="SR">Suriname</option ><option value="SJ">Svalbard and Jan Mayen</option ><option value="SZ">Swaziland</option ><option value="SE">Sweden</option ><option value="CH">Switzerland</option ><option value="SY">Syrian Arab Republic</option ><option value="TW">Taiwan</option ><option value="TJ">Tajikistan</option ><option value="TZ">Tanzania, United Republic of</option ><option value="TH">Thailand</option ><option value="TL">Timor-Leste</option ><option value="TG">Togo</option ><option value="TK">Tokelau</option ><option value="TO">Tonga</option ><option value="TT">Trinidad and Tobago</option ><option value="TN">Tunisia</option ><option value="TR">Turkey</option ><option value="TM">Turkmenistan</option ><option value="TC">Turks and Caicos Islands</option ><option value="TV">Tuvalu</option ><option value="UG">Uganda</option ><option value="UA">Ukraine</option ><option value="AE">United Arab Emirates</option ><option value="GB">United Kingdom</option ><option value="US">United States of America</option ><option value="UM">United States Minor Outlying Islands</option ><option value="UY">Uruguay</option ><option value="UZ">Uzbekistan</option ><option value="VU">Vanuatu</option ><option value="VE">Venezuela (Bolivarian Republic of)</option ><option value="VN">Viet Nam</option ><option value="VG">Virgin Islands (British)</option ><option value="VI">Virgin Islands (U.S.)</option ><option value="WF">Wallis and Futuna</option ><option value="EH">Western Sahara</option ><option value="YE">Yemen</option ><option value="ZM">Zambia</option ><option value="ZW">Zimbabwe</option> </select> </li> </ul> </fieldset> <fieldset class="u-no-margin--bottom"> <legend class="u-off-screen">About your company</legend> <h2 class="p-heading--3">About your company</h2> <ul class="p-list"> <li class="p-list__item"> <label for="company">Company name:</label> <input required id="company" name="company" maxlength="255" type="text" /> </li> <li class="p-list__item"> <label for="job-title">Job title:</label> <input required id="job-title" name="title" maxlength="255" type="text" /> </li> </ul> </fieldset> <fieldset class="u-no-margin--bottom"> <legend class="u-off-screen">Your comments</legend> <h2 class="p-heading--3">Your comments</h2> <ul class="p-list"> <li class="p-list__item"> <label for="Comments_from_lead__c">What would you like to talk to us about?</label> <textarea required id="Comments_from_lead__c" name="Comments_from_lead__c" rows="5" maxlength="2000"></textarea> </li> <li class="p-list__item"> <label class="p-checkbox"> <input class="p-checkbox__input" value="yes" aria-labelledby="canonicalUpdatesOptIn" name="canonicalUpdatesOptIn" type="checkbox"> <span class="p-checkbox__label" id="canonicalUpdatesOptIn">I agree to receive information about Canonical's products and services.</span> </label> </li> <li class="p-list__item">In submitting this form, I confirm that I have read and agree to <a href="/legal/data-privacy/contact">Canonical's Privacy Notice</a> and <a href="/legal/data-privacy">Privacy Policy</a>.</li> <li class="u-off-screen"> <label class="website" for="website">Website:</label> <input name="website" type="text" class="website" autocomplete="off" value="" id="website" tabindex="-1" /> </li> <li class="u-off-screen"> <label class="name" for="name">Name:</label> <input name="name" type="text" class="name" autocomplete="off" value="" id="name" tabindex="-1" /> </li> <li class="p-list__item"> <button type="submit" class="p-button--positive" onclick="dataLayer.push({'event' : 'GAEvent', 'eventCategory' : 'Form', 'eventAction' : 'iot contact-us', 'eventLabel' : 'snapcraft.ioappstore', 'eventValue' : undefined });">Submit</button> </li> </ul> <input type="hidden" aria-hidden="true" aria-label="hidden field" name="formid" value="{{formid}}" /> <input type="hidden" aria-hidden="true" aria-label="hidden field" name="returnURL" value="https://snapcraft.io/about/thank-you" /> <input type="hidden" aria-hidden="true" aria-label="hidden field" name="Consent_to_Processing__c" value="yes" /> <input type="hidden" aria-hidden="true" aria-label="hidden field" name="utm_campaign" id="utm_campaign" value="" /> <input type="hidden" aria-hidden="true" aria-label="hidden field" name="utm_medium" id="utm_medium" value="" /> <input type="hidden" aria-hidden="true" aria-label="hidden field" name="utm_source" id="utm_source" value="" /> <input type="hidden" aria-hidden="true" aria-label="hidden field" name="utm_content" id="utm_content" value="" /> <input type="hidden" aria-hidden="true" aria-label="hidden field" name="utm_term" id="utm_term" value="" /> <input type="hidden" aria-hidden="true" aria-label="hidden field" name="GCLID__c" id="GCLID__c" value="" /> <input type="hidden" aria-hidden="true" aria-label="hidden field" name="Facebook_Click_ID__c" id="Facebook_Click_ID__c" value="" /> <input type="hidden" aria-hidden="true" aria-label="hidden field" id="preferredLanguage" name="preferredLanguage" maxlength="255" value="" /> </fieldset> </form> </script> <script> window.addEventListener("DOMContentLoaded", function() { Raven.context(function () { snapcraft.public.blog.newsletter(); }); }); </script> <script src="/static/js/dist/global-nav.js?v=091031d"></script> <script type="application/ld+json"> { "@context": "http://schema.org/", "@id": "https://snapcraft.io/#organization", "@type": "Organization", "name": "Snapcraft", "logo": "https://assets.ubuntu.com/v1/e635d1ef-snapcraft_green-red_hex.png", "url": "https://snapcraft.io", "sameAs": [ "https://developer.ubuntu.com/snapcraft", "https://github.com/snapcore/snapcraft", "https://en.wikipedia.org/wiki/Snappy_(package_manager)", "https://twitter.com/snapcraftio", "https://www.facebook.com/snapcraftio/", "https://www.youtube.com/snapcraftio" ] } </script> <script type="application/ld+json"> { "@context": "http://schema.org", "@id": "https://snapcraft.io/#website", "@type": "WebPage", "name": "Snapcraft", "url": "https://snapcraft.io/blog" } </script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10