byobu-config can't run on Ubuntu 18(python 3)

Bug #1770090 reported by Lance Tien
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
byobu (Ubuntu)
Expired
Low
Unassigned

Bug Description

$ lsb_release -rd
Description: Ubuntu 18.04 LTS
Release: 18.04

$ byobu --version
byobu version 5.125
tmux 2.6

$ byobu-config
ERROR: Could not import the python snack module

And when I manually install snack through pip, there's a syntax error(print vs print()). So I guess byobu-config can't work on a python 3 only environment.

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

Hi Lance,
I installed byobu on my 18.04 and it worked right away - byobu-config as well.

# byobu --version
byobu version 5.125
tmux 2.6

byobu is on 5.125-0ubuntu1

There must be some change in your python dependencies that triggers this, or an byobu extra of some sort maybe? My system was a fresh 18.04 from a cloud image - no snack form pip, not from the archive - so if you could try to reproduce on a fresh image and report back.
If a fresh image works for you as it does for me, then you'd need to check what on your current setup is different to trigger the issue.

Changed in byobu (Ubuntu):
status: New → Incomplete
Revision history for this message
Lance Tien (lance6716) wrote :

Oh silly me, I used a minimal-installed Ubuntu and thus don't have python-newt package. Now it works. I wish python-newt could be added into dependencies.

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

Yeah, agree to the wish as a dependency

Changed in byobu (Ubuntu):
status: Incomplete → Confirmed
importance: Undecided → Low
Revision history for this message
YUKI Hiroshi (piro-or) wrote :

Same problem happens on my Ubuntu 16.04LTS.

Revision history for this message
Lance Tien (lance6716) wrote :

Now it's broken again. Python-newt installed, ubuntu 18 LTS, 4.15.0-24-generic #26-Ubuntu

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

@Lance - hi I just recently fixed such an issue, see bug 1537528
TL;DR it crashes when it was using the screen backend.
Since you have python-newt installed this bug here isn't your issue.
Maybe it is the other I linked (which is on it's way into the release atm).
And if it is neither, then please file a new bug about it sharing some details on the crash.

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

@Lance, could you please test the package from bug #1537528 which is in proposed?

Revision history for this message
Lance Tien (lance6716) wrote :

@Andreas Sorry I'm not familiar with this bug fix system, how could I install that package in Ubuntu? I can't find a download link

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

Hi Lance, since the fix of bug #1537528 is released in the meantime it would be enough to just upgrade all packages (slang2 in particular if you want to be selective).

$ sudo apt update
$ sudo apt dist-upgrade

Among other fixes that will bring
  slang2 (2.3.0-2ubuntu1.1) xenial

So to be more selective than the full update
$ sudo apt update
$ sudo apt install libslang2

And that might be the fix for your issue (or not).
Let us know.

Revision history for this message
Lance Tien (lance6716) wrote : Re: [Bug 1770090] Re: byobu-config can't run on Ubuntu 18(python 3)

that doesn't work. I have installed libslang2, apt shows 2.3.1a-3ubuntu1.

BTW, I use tmux as backend, so I guess it's another problem.

now byobu config says "ERROR: Could not import the python snack module."

 Christian Ehrhardt  <email address hidden> 于 2018年7月30日周一 17:50写道:

> Hi Lance, since the fix of bug #1537528 is released in the meantime it
> would be enough to just upgrade all packages (slang2 in particular if
> you want to be selective).
>
> $ sudo apt update
> $ sudo apt dist-upgrade
>
> Among other fixes that will bring
> slang2 (2.3.0-2ubuntu1.1) xenial
>
> So to be more selective than the full update
> $ sudo apt update
> $ sudo apt install libslang2
>
> And that might be the fix for your issue (or not).
> Let us know.
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1770090
>
> Title:
> byobu-config can't run on Ubuntu 18(python 3)
>
> Status in byobu package in Ubuntu:
> Confirmed
>
> Bug description:
> $ lsb_release -rd
> Description: Ubuntu 18.04 LTS
> Release: 18.04
>
> $ byobu --version
> byobu version 5.125
> tmux 2.6
>
> $ byobu-config
> ERROR: Could not import the python snack module
>
> And when I manually install snack through pip, there's a syntax
> error(print vs print()). So I guess byobu-config can't work on a
> python 3 only environment.
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/ubuntu/+source/byobu/+bug/1770090/+subscriptions
>

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

Oh I realized that we all totally missed that you said 18.04 in your first post.
Obviously a different issue, as the fix we wanted to check was towards 16.04 and already ok in Bionic.

Sorry for the noise Lance :-/
TL;DR you are still affected by somehow broken dependencies with "snack" being the current one that bites you.

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

I did a minimal installation of 18.04 (desktop). Logged in, opened a terminal, typed byobu, not installed, installed it with apt.

byobu itself, as well as byobu-config, worked out of the box.

I also have newt installed, in terms of python3-newt and libnewt0.52, and tmux 2.6-3.

I don't know how you get from running byobu to getting an error about "snack". The only snack I see in ubuntu 18.04 is python{,3}-tksnack, which is something about audio/sound.

Do you have some byobu customization to call out to this "snack" python module you have? Did you install the py3 version of that module from pip?

Changed in byobu (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Lance Tien (lance6716) wrote :

@Andreas I think I didn't modified byobu, and I run `pip list | grep snack` it shows nothing.

The byobu-config worked about two month ago(#2), at that time I found my missing package by reading the build instruction on Github's byobu repo. Now I have no idea what's wrong with this, may be I should try to build byobu from source to get more errors this weekend. Could you give a recommanded branch to work on? I use Git-based repos sometimes and don't know how to deal with code.launchpad.net.

Revision history for this message
Lance Tien (lance6716) wrote :

apt removed and autoremoved byobu, then I downloaded the code from

git clone -b ubuntu/bionic https://git.launchpad.net/ubuntu/+source/byobu

but make install failed. It says

Making install in etc/byobu
make[1]: Entering directory '/home/lance/byobu/etc/byobu'
make[2]: Entering directory '/home/lance/byobu/etc/byobu'
make[2]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/home/lance/byobu/etc/byobu/'
 /usr/bin/install -c -m 644 backend socketdir '/home/lance/byobu/etc/byobu/'
/usr/bin/install: 'backend' and '/home/lance/byobu/etc/byobu/backend' are the same file
/usr/bin/install: 'socketdir' and '/home/lance/byobu/etc/byobu/socketdir' are the same file
Makefile:259: recipe for target 'install-etcDATA' failed
make[2]: *** [install-etcDATA] Error 1
make[2]: Leaving directory '/home/lance/byobu/etc/byobu'
Makefile:329: recipe for target 'install-am' failed
make[1]: *** [install-am] Error 2
make[1]: Leaving directory '/home/lance/byobu/etc/byobu'
Makefile:335: recipe for target 'install-recursive' failed
make: *** [install-recursive] Error 1

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

I don't know. That looks like a pure upstream issue. This bug is about the package in Ubuntu, and we still can't reproduce the issue you encountered.

Revision history for this message
Lance Tien (lance6716) wrote :

I suddenly found byobu-config works with sudo, so I have no problems now :P

Revision history for this message
Lance Tien (lance6716) wrote :

As far as I can debug, `which python` shows my python-anaconda distribution and can't import snack. `sudo which python` shows /usr/bin/python and can import snack. I guess there's a problem about python-newt package and user-installed python distribution. So byobu-config could always using system-installed python may be a solution.

Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for byobu (Ubuntu) because there has been no activity for 60 days.]

Changed in byobu (Ubuntu):
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.