setting screen to start at login via screen-profiles breaks sh -lc
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
byobu |
Fix Released
|
Medium
|
Unassigned | ||
byobu (Ubuntu) |
Fix Released
|
Medium
|
Unassigned | ||
screen-profiles (Ubuntu) |
Won't Fix
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: screen-profiles
The way that screen-profiles sets screen to start automatically at login, by appending "[ -x /usr/bin/
You can test this by running "screen-profiles" and choosing "Install screen by default at login" then running:
sh -lc "echo hello world"
What should happen: sh should print "hello world" then exit
What does happen: An interactive screen session is started and hello world is not printed until you exit this screen session
A possible fix for this would be to only run screen launcher if the shell is an interactive shell. a way to do this that should work in bash, dash, and ksh would be to add this to the .profile:
case $- in
*i*)
[ -x /usr/bin/
esac
Description: Ubuntu 9.04
Release: 9.04
screen-profiles 1.44-0ubuntu1.1
Changed in byobu (Ubuntu): | |
status: | Confirmed → In Progress |
Changed in byobu: | |
status: | Confirmed → In Progress |
Changed in byobu: | |
status: | Fix Committed → Fix Released |
Marking won't fix against screen-profiles. I'll fix this in byobu, though! Thanks for the report.
:-Dustin