I found a few issues when trying to package a flutter application on ubuntu.
The most troublesome one is the ability to use alternative dependencies. Ex packageA | packageB should add a dependency so that at least one of either packageA or packageB is installed. I am sure this is some strange subprocess/codec issue but it gets added to the control as packageAöpackageB I have my locale set to C.UTF-8 if that helps narrow it down.
Currently you need to set installed_size in the make_config.yaml for debian packages. While not a huge issue it does confuse dpkg. I just set the size to roughly what the flutter build bundle --target-platform linux-x64 && du -sh build/linux/x64/release/bundle/ output is. Not every time, but like I said it confuses apt.
Lastly is a more subtle issue that I ran into. Since the package doesn't use debhelper you don't get ${shlibs:Depends} and ${misc:Depends} to resolve shared libraries. This can cause shared libraries to not get added to dependencies.
I am pretty sure that all of these would be easy to solve if you add debhelper to the Build-Depends. You would also need something like this:
#!/usr/bin/make -f
%:
dh $@
in the deban/rules file.
I found a few issues when trying to package a flutter application on ubuntu.
The most troublesome one is the ability to use alternative dependencies. Ex
packageA | packageBshould add a dependency so that at least one of eitherpackageAorpackageBis installed. I am sure this is some strange subprocess/codec issue but it gets added to the control aspackageAöpackageBI have my locale set toC.UTF-8if that helps narrow it down.Currently you need to set
installed_sizein themake_config.yamlfor debian packages. While not a huge issue it does confusedpkg. I just set the size to roughly what theflutter build bundle --target-platform linux-x64 && du -sh build/linux/x64/release/bundle/output is. Not every time, but like I said it confuses apt.Lastly is a more subtle issue that I ran into. Since the package doesn't use debhelper you don't get
${shlibs:Depends}and${misc:Depends}to resolve shared libraries. This can cause shared libraries to not get added to dependencies.I am pretty sure that all of these would be easy to solve if you add
debhelperto theBuild-Depends. You would also need something like this:in the
deban/rulesfile.