Dragonfire icon indicating copy to clipboard operation
Dragonfire copied to clipboard

Fix deps for *.deb on Ubuntu 19.10

Open Batcastle opened this issue 4 years ago • 4 comments

lsb_release -a:
Distributor ID:   Ubuntu
Description:      Ubuntu 19.10
Release:          19.10
Codename:         eoan

Python3 Version: 3.7.5

When installing Dragonfire on Ubuntu 19.10, installation fails due to dependency issues. The following error is reported:

The following packages have unmet dependencies:
 dragonfire : Depends: python3 (< 3.7) but 3.7.5-1 is to be installed
              Depends: portaudio19-dev but it is not going to be installed

portaudio19-dev is in the repos, so why it says it is not going to be installed, I don't know:

$ apt search portaudio19-dev
Sorting... Done
Full Text Search... Done
portaudio19-dev/eoan 19.6.0-1 amd64
  Portable audio I/O - development files

MANUALLY installing portaudio19-dev does resolve the problem with that package, but the python problem persists.

The command I used for installation was:

sudo apt install ./dragonfire_1.0.4_amd64.deb

This works the same as the dpkg -i command listed on the README.md, but also handles dependencies, just for disclosure.

Batcastle avatar Dec 05 '19 20:12 Batcastle

@Batcastle we only support the latest Ubuntu LTS which is 18.04 with the .deb package. The dragonfire_1.0.4_amd64.deb package requires Python version to be less than 3.7. Because of that, it fails.

The message says Depends: portaudio19-dev but it is not going to be installed. That means you have the portaudio19-dev package on your system and it will skip the installation of this package.

Please try to clone and install Dragonfire with sudo make install as it's stated in README.md.

I remember that installing a Debian package with apt install might cause issues in some edge cases so we chose to suggest dpkg -i instead of apt install. Though I don't remember the exact reason...

Last but not least, feel free to send pull requests :blush:

mertyildiran avatar Dec 05 '19 21:12 mertyildiran

Thank you for the clarification. Maybe put that you only support the latest Ubuntu LTS in the README? I checked just now and did not see it.

On a side note,

The message says Depends: portaudio19-dev but it is not going to be installed. That means you have the portaudio19-dev package on your system and it will skip the installation of this package.

I don't have portaudio19-dev installed on my system. If I did, it wouldn't have said anything. That's why I said manually installing it fixes the issue. Why it's doing this eludes me as I checked the control file and it was in there correctly. But, if it's working correctly on Ubuntu 18.04 then it's probably not a big deal for right now since you guys only support the latest LTS, as you said.

But, as I said, just a side note, so not a big deal. ¯_(ツ)_/¯

Batcastle avatar Dec 05 '19 21:12 Batcastle

@Batcastle would you like to add that Ubuntu LTS notice to README.md by sending a PR?

I have misunderstood your statement about portaudio19-dev package sorry. I suspect that since we always use a system with Python 3.6 to build the Debian package, it somehow automatically creates python3 (< 3.7) dependency. Could you please;

  • follow Build the Debian package guide and generate a new .deb package on your machine
  • try to install that .deb package with either apt install or dpkg -i
  • then share the results under this discussion

You might need to install the development dependencies with sudo make dev-install

mertyildiran avatar Dec 05 '19 21:12 mertyildiran

I downloaded the latest dragonfire_1.1.1_amd64.deb and tried installing via dpkg -i and encountered the above error. Installing via make file also shows the same error. I am currently using Ubuntu 19.10.

Aman1124 avatar Jan 08 '20 09:01 Aman1124