Can't fully utilize create-usb to make a flatpak for install with GPU support in a fully disconnected machine
In following the flatpak create-usb instructions to build a flatpak on a USB drive for sideloading on an internet disconnected machine, the following warnings are encountered:
Warning: Omitting related ref ‘runtime/org.freedesktop.Platform.openh264/x86_64/2.5.1’ because it's extra-data.
Warning: Related ref ‘runtime/org.kde.Platform.Locale/x86_64/5.15-24.08’ is partially installed. Use --allow-partial to suppress this message.
Warning: Omitting related ref ‘runtime/net.mkiol.SpeechNote.Addon.nvidia/x86_64/stable’ because it's extra-data.
On the offline machine, some of the GUI seems impacted, potentially based on the omission of the freedesktop.Platform.openh264/x86_64/2.5.1 because it's extra data and the partial installation of the .kde.Platform.Locale/x86_64/5.15-24.08?
Additionally, I tried to create a flatpak of the net.mkiol.SpeechNote.Addon.nvidia to circumvent part of this issue/follow the method of installation that succeeded on my connected machine, and received the following error.
error: Installed ref ‘runtime/net.mkiol.SpeechNote.Addon.nvidia/x86_64/stable’ is extra-data, and cannot be distributed offline
Is there a general flaw in my approach for porting these flatpaks for installation in a completely internet disconnected machine, and if so, is there a more viable approach that will work? Thanks.
Similar topic in #290
Hi. The honest answer would be that I have no idea.
I'm not familiar with the create-usb tool, but it looks like it can't be used with packages that use "extra-data". Both Speech Note add-ons have "extra-data". This means that some binary components are downloaded locally directly from the original sources when installing the package. This seems to block create-usb from creating offline distributions.
I don't know if I can provide any more guidance or help on this.
Thanks for the reply, and the information. Given that these packages are vital for GPU support on devices without internet connection, are there plans to build an appimage, dockerized container, or some other fully self contained version of Speech Note so that a singular file can be transferred to offline machines for install?
The problem is only with the add-on package. The base doesn't use "extra-data" so you should be able to make it offline using create-usb.
AppImage was requested here: https://github.com/mkiol/dsnote/issues/192. I did a preliminary experiment and most things worked. GPU did not work. I must admit that I don't actively focusing on it right now. Making AppImage package is rather at the bottom of my personal Speech Note's backlog. I am waiting for someone with the right skills to take care of it :)
I also hope someone else takes care of that. It would make your nice work even more useful, especially with it able to be installed from a single file and utilize the GPU!
Now that nvidia has open sourced their newer architecture drivers, can the flatpaks be self contained such that no -extradata package is necessary, as they are offered with GPL and MIT opensource licensing
Now that nvidia has open sourced their newer architecture drivers,
I really didn't know that. If that's true, it would be a step in the right direction, but the problem isn't really with the drivers.
Flathub recently introduced a restriction on the size of Flatpak packages. To comply with the new limits, I had to move the heaviest binary parts of the package to "extra data" to make it lighter. These parts are Nvidia cuDNN and NCCL libraries, as well as PyTorch.
The problem is not the license, but the size and Flathub's new restriction.