构建 flatpak 包

Build flatpak package

我正在努力将我的应用程序放入 flatpak 包中。我的应用程序 (https://sourceforge.net/p/audiocuesheet) 是一个使用 gtk-sharp2 的单声道构建。我真的是 flatpak 的新手,并开始构建这样的清单:

{
    "app-id": "net.sourceforge.audiocuesheet",
    "runtime": "org.gnome.Platform",
    "runtime-version": "3.26",
    "sdk": "org.gnome.Sdk",
    "command": "AudioCuesheetEditor",
    "modules": [
        {
            "name": "AudioCuesheetEditor",
            "buildsystem": "simple",
            "build-commands": [
                "cp -r AudioCuesheetEditor /home/sven/Dokumente"
            ],
            "sources": [
                {
                    "type": "archive",
                    "path": "AudioCuesheetEditor-linux-x64-v2.4.0.zip",
                    "dest": "AudioCuesheetEditor"
                }
            ]
        }
    ]
}

当我 运行 flatpack-builder 时,我得到这个输出:

[sven@localhost flatpak]$ flatpak-builder --force-clean build net.sourceforge.audiocuesheet.json 
Downloading sources
Starting build of net.sourceforge.audiocuesheet
Cache miss, checking out last cache hit
========================================================================
Building module AudioCuesheetEditor in /home/sven/Downloads/flatpak/.flatpak-builder/build/AudioCuesheetEditor-16
========================================================================
Archive:  /home/sven/Downloads/flatpak/AudioCuesheetEditor-linux-x64-v2.4.0.zip
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/AudioCuesheetEditor  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/AudioCuesheetEditor.exe  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/CHANGELOG.TXT  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/KNOWN_ISSUES.TXT  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/libcsfml-audio.so  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/libcsfml-audio.so.2.3  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/libcsfml-audio.so.2.3.0  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/libcsfml-graphics.so  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/libcsfml-graphics.so.2.3  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/libcsfml-graphics.so.2.3.0  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/libcsfml-network.so  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/libcsfml-network.so.2.3  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/libcsfml-network.so.2.3.0  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/libcsfml-system.so  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/libcsfml-system.so.2.3  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/libcsfml-system.so.2.3.0  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/libcsfml-window.so  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/libcsfml-window.so.2.3  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/libcsfml-window.so.2.3.0  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/LICENCE.TXT  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/locale/de/LC_MESSAGES/AudioCuesheetEditor.mo  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/locale/en/LC_MESSAGES/AudioCuesheetEditor.mo  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/MPG123Wrapper.dll  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/MPG123Wrapper.dll.config  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/README.TXT  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/application-x-cue-128.png  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/application-x-cue-16.ico  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/application-x-cue-16.png  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/application-x-cue-22.ico  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/application-x-cue-22.png  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/application-x-cue-24.ico  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/application-x-cue-24.png  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/application-x-cue-32.ico  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/application-x-cue-32.png  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/application-x-cue-48.ico  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/application-x-cue-48.png  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/application-x-cue-64.png  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/audio-volume-high.png  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/audio-volume-low.png  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/audio-volume-medium.png  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/audio-volume-muted.png  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/icons/emblem-money.png  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/resources/logging.properties  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/samples/Sample_Inputfile.txt  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/samples/Sample_Inputfile2.txt  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/samples/Sample_Project.ace  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/sfmlnet-audio-2.dll  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/sfmlnet-audio-2.dll.config  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/sfmlnet-graphics-2.dll  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/sfmlnet-graphics-2.dll.config  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/sfmlnet-system-2.dll  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/sfmlnet-system-2.dll.config  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/sfmlnet-window-2.dll  
  inflating: AudioCuesheetEditor-linux-x64-v2.4.0/sfmlnet-window-2.dll.config  
Running: cp -r AudioCuesheetEditor /home/sven/Dokumente
Committing stage build-AudioCuesheetEditor to cache
Cleaning up
Committing stage cleanup to cache
Finishing app
Error: Command 'AudioCuesheetEditor' not found

所以,你看到我得到的错误。 "AudioCuesheetEditor" 是一个包装器 shell 脚本,它以一些参数启动 mono,它是从 monodevelop 自动生成的。但是为什么builder找不到脚本呢?

基本上我对 flatpak 包的想法是这样的: 1. 我已经有了一个包含所有依赖项(库)的 linux 构建(x64 或 x86)。 2. 只需提取此构建(在 sourceforge 上可用)并将其复制到系统内的正确位置。 3. 完成

有人能告诉我,这里出了什么问题吗?谢谢你的帮助 斯文

你的想法是对的:

  1. Just extract this build (which is available on sourceforge) and copy it to the correct places inside the system.

这是正确的,但您没有将它们复制到正确的位置。 /home/sven/Dokumente 不是 Flatpak 包内的有效位置,因为每个 Flatpak 都有自己的目录结构,其中不包括您的主目录。尝试以 /app.

开头的路径