Incompatible with virtualenv

Bug #1237071 reported by Lloyd Parkes
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
byobu (Ubuntu)
Fix Released
Medium
Dustin Kirkland 

Bug Description

The script byobu-select-session on Ubuntu 12.04 LTS has the hash bang line "#!/usr/bin/env python" which invokes an arbitrary python interpreter. Since the script is not compatible with Python 3, this won't end well if the user has Python 3 installed in an active virtualenv. Since the package depends on the system python package, then setting the hash bang line to "#!/usr/bin/python" may be the way to go.

Revision history for this message
Dustin Kirkland  (kirkland) wrote :

So I think this bug is a duplicate of Bug #988471, and in opposition to Bug #996559.

I have one set of users asking for Byobu's python scripts to use "#!/usr/bin/env python", and another group asking for it to be "#!/usr/bin/python".

What's the right answer? I don't know... I haven't encountered a real problem in any production environment yet for either....

Changed in byobu (Ubuntu):
status: New → In Progress
importance: Undecided → Medium
assignee: nobody → Dustin Kirkland  (kirkland)
Revision history for this message
Lloyd Parkes (lloyd+lp) wrote :

This bug is a duplicate of #988471. Sorry for not checking for other byobu bugs, but launchpad did search for possible duplicates and showed me something that wasn't even close, so I figured I was first.

The user who has Python only in /usr/local has installed the Ubuntu Byobu package without the required dependencies. I'm not sure why they think the Byobu package should cope with this.

I think it's safe to say that software that gets installed and used is also going to be abuse. It's the software maintainer's job to ensure that the software can survive that abuse, but inevitably there are limits. Using virtualenv to create a preferred (and unexpected) python can be considered abuse. Failing to install required prerequisites is also abuse. For some software, setting strange locales in the environment might be considered abuse. You have to make a decision about what sort of abuse this package can withstand and I don't think many software maintainers are interested in making their software work in the face of missing prerequisites.

Revision history for this message
Dustin Kirkland  (kirkland) wrote :

Committed revision 2232.

Changed in byobu (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package byobu - 5.62-0ubuntu1

---------------
byobu (5.62-0ubuntu1) trusty; urgency=low

  * usr/share/byobu/keybindings/f-keys.tmux:
    - as it turns out, showing the current window name when renaming
      is really annoying
  * usr/bin/byobu-janitor, usr/lib/byobu/menu,
    usr/share/byobu/profiles/screenrc: LP: #1244509
    - customizations of screen configuration should go in
      $BYOBU_CONFIG_DIR/.screenrc, which will be sourced last; rather than
      ~/.screenrc (which should be reserved for screen-without-byobu)
  * usr/bin/byobu-reconnect-sockets, usr/bin/byobu-select-session:
    - LP: #1243017
    - add a few environment variables to restore, including upstart
      to ensure upstart commands resume working in a session restart
  * README, usr/bin/byobu-config, usr/bin/byobu-select-session,
    usr/lib/byobu/include/ec2instancespricing.py:
    - LP: #996559, LP: #988471, LP: #1237071
    - Okay, this is the last time I'm going back and forth on this;
      for real ;-)
    - In our 3 python scripts, we are going to use #!/usr/bin/python
      + The vast majority of Byobu users are getting it from their
        distro, and the package itself appropriately depends on python
    - Advanced users, developers, and others who want to run a different
      python in their environment will need to sed update three scripts
    - I've left a hint in the README to that effect
 -- Dustin Kirkland <email address hidden> Fri, 18 Oct 2013 16:29:56 -0500

Changed in byobu (Ubuntu):
status: Fix Committed → Fix Released
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.