flathub/org.freedesktop.Sdk.Extension.rust-stable

Requested extension org.freedesktop.Sdk.Extension.rust-stable not installed

barabadzhi opened this issue · 6 comments

Hi there!

I was trying to setup template Rust GTK App project in Builder on up-to-date Ubuntu 20.04 and got
error: Requested extension org.freedesktop.Sdk.Extension.rust-stable not installed.
Tried to install it, even multiple versions, using flatpak. No luck.

Switching between stable/nightly rust also have no effect.

Downloaded Podcasts source and tried to build it (prod & dev configs), no luck as well.

Is this a known issue or is it just me?
Can you think of anything I may have missed?

Which version have you installed? flatpak info org.freedesktop.Sdk.Extension.rust-stable should give us enough information

Hey @bilelmoussaoui
Thanks for a quick response!

Here is the output you've requested:

flatpak info org.freedesktop.Sdk.Extension.rust-stable error: Multiple branches available for org.freedesktop.Sdk.Extension.rust-stable, you must specify one of: org.freedesktop.Sdk.Extension.rust-stable//1.6, org.freedesktop.Sdk.Extension.rust-stable//18.08, org.freedesktop.Sdk.Extension.rust-stable//20.08
flatpak info org.freedesktop.Sdk.Extension.rust-stable//20.08 Rust stable Sdk extension - Rust stable compiler and tools
      ID: org.freedesktop.Sdk.Extension.rust-stable
     Ref: runtime/org.freedesktop.Sdk.Extension.rust-stable/x86_64/20.08
    Arch: x86_64
  Branch: 20.08
 Version: 1.46.0
 License: Apache-2.0 AND MIT
  Origin: flathub

Collection: org.flathub.Stable
Installation: user
Installed: 574.3 MB

  Commit: a9d0e68277c8ce412360b1fb30986b944b098df15bbcbd31fc5c7f8404e12d66
  Parent: ed97666883c5f2872efe080ca6866ab06be91d5cf0356fe1d471fc94b6bba385
 Subject: Build against fdo 20.08 (5446b598)
    Date: 2020-08-31 21:31:03 +0000
flatpak info org.freedesktop.Sdk.Extension.rust-stable//1.6 Rust stable Sdk extension - Rust stable compiler and tools
      ID: org.freedesktop.Sdk.Extension.rust-stable
     Ref: runtime/org.freedesktop.Sdk.Extension.rust-stable/x86_64/1.6
    Arch: x86_64
  Branch: 1.6
 Version: 1.44.1
 License: Apache-2.0 AND MIT
  Origin: flathub

Collection: org.flathub.Stable
Installation: user
Installed: 482.0 MB

  Commit: 49f8b9a14ce502a8418af6513abbf4231aae08749da86ee6cc3330a217b258b7
  Parent: 8c0c37dd92bb04d61928b0af2546c561b4510371c994b29d889ac4baf972b4bf
 Subject: update armv7 module after the url was fixed (a44e4a5e)
    Date: 2020-07-01 08:10:08 +0000
flatpak info org.freedesktop.Sdk.Extension.rust-stable//18.08

ID: org.freedesktop.Sdk.Extension.rust-stable
Ref: runtime/org.freedesktop.Sdk.Extension.rust-stable/x86_64/18.08
Arch: x86_64
Branch: 18.08
Origin: flathub
Collection: org.flathub.Stable
Installation: user
Installed: 686.3 MB

  Commit: 4e8ef3c492cc300e97bd3901e02be4efe5ca4906cc2849703480509c2259ed5d
  Parent: 02a688d0641e92ee0d1c926044d02d850095e15bd4b854a552845ddc9008b289
 Subject: Export org.freedesktop.Sdk.Extension.rust-stable
    Date: 2019-12-29 16:24:43 +0000

You misses org.freedesktop.Sdk.Extension.rust-stable//19.08.

This is weird, but installing org.freedesktop.Sdk.Extension.rust-stable//19.08 actually helped.
Thanks @Erick555 👍

This is weird, but installing org.freedesktop.Sdk.Extension.rust-stable//19.08 actually helped.
Thanks @Erick555 +1

You should only need the Rust extension based on the used SDK by the application you're trying to build. If you're using GNOME 3.36, it's based on freedesktop 19.08 and that's why you need rust stable 19.08. The next release of the GNOME Sdk will be based on 20.08 so you will need that one.

GNOME Builder can't properly parse which SDK version it should suggest you to install for now

If anyone is finding this from Google, the extension you want to install is the one that matches your runtime-version in your manifest.

For instance, my manifest looked like this:

{
    "id": "net.runelite.RuneLite",
    "runtime": "org.freedesktop.Platform",
    "runtime-version": "20.08",
    "sdk": "org.freedesktop.Sdk",
    "command": "runelite",
    "separate-locales": false,
    "sdk-extensions": [
        "org.freedesktop.Sdk.Extension.openjdk11"
    ],

So I had to run

$ flatpak install flathub org.freedesktop.Sdk.Extensions.openjdk11

Which output:

Looking for matches…
Similar refs found for ‘org.freedesktop.Sdk.Extensions.openjdk11’ in remote ‘flathub’ (system):

   1) runtime/org.freedesktop.Sdk.Extension.openjdk10/x86_64/18.08
   2) runtime/org.freedesktop.Sdk.Extension.openjdk17/x86_64/20.08
   3) runtime/org.freedesktop.Sdk.Extension.openjdk11/x86_64/18.08
   4) runtime/org.freedesktop.Sdk.Extension.openjdk17/x86_64/21.08
   5) runtime/org.freedesktop.Sdk.Extension.openjdk11/x86_64/19.08
   6) runtime/org.freedesktop.Sdk.Extension.openjdk11/x86_64/20.08
   7) runtime/org.freedesktop.Sdk.Extension.openjdk11/x86_64/21.08
   8) runtime/org.freedesktop.Sdk.Extension.openjdk10/x86_64/1.6

Which do you want to use (0 to abort)? [0-8]: 

So I wanted to select 6, since that is openjdk11, version 20.08 (which matches my manifest).

You don't have to worry about the Flathub build bot, since it has the extensions already.

Hopefully this helps someone who was as confused as me 🎉!