Opened 3 years ago

Last modified 3 years ago

#22193 closed defect

/usr/bin/josm is broken (/usr/bin/josm: /usr/bin/bash: bad interpreter: No such file or directory) — at Version 6

Reported by: sebastic Owned by: team
Priority: normal Milestone: 22.07
Component: Ubuntu package Version: tested
Keywords: linux Cc: taylor.smock, sebastic

Description (last modified by sebastic)

#22088 broke /usr/bin/josm on non-usrmerge systems:

$ /usr/bin/josm 
bash: /usr/bin/josm: /usr/bin/bash: bad interpreter: No such file or directory

The interpreter change in r18497 needs to be reverted, the following patch is included in the Debian package to do so:

Description: Fix bash path.
Author: Bas Couwenberg <sebastic@debian.org>
Bug: https://josm.openstreetmap.de/ticket/22088

--- a/native/linux/tested/usr/bin/josm
+++ b/native/linux/tested/usr/bin/josm
@@ -1,4 +1,4 @@
-#!/usr/bin/bash
+#!/bin/bash
 # Simple wrapper script used to start JOSM in Debian
 set -e

The same change needs to be applied for josm-latest:

--- a/native/linux/latest/usr/bin/josm-latest
+++ b/native/linux/latest/usr/bin/josm-latest
@@ -1,4 +1,4 @@
-#!/usr/bin/bash
+#!/bin/bash
 # Simple wrapper script used to start JOSM in Debian
 set -e
 

Change History (6)

comment:1 by sebastic, 3 years ago

Description: modified (diff)

comment:2 by taylor.smock, 3 years ago

I'll note a few things:

  1. In #22157, skyper (a fairly long-time reporter/contributor) noted that /bin/bash and /usr/bin/bash were exhibiting different behaviors (see comment:13:ticket:22157)
  2. I left #22088 open for a few weeks so that packagers could give feedback. I then merged the patch a bit earlier than I wanted to due to #22157, but that was two weeks ago. We have yet to receive reports from those running josm-latest from our repository (see wiki:/Download#Ubuntu -- this technically also works on Debian distributions)
  3. I think you mean r18497 not r18500
  4. Based off of #22157, I am disinclined to move back to /bin/bash. I am open to moving to /usr/bin/env bash.
  5. From comment:16:ticket:22088, "I thought usrmerge was mandatory. See ​https://wiki.debian.org/UsrMerge ." The followup in comment:17:ticket:22088 said "Only new installations use usrmerge by default, upgraded systems need to explicitly install the usrmerge package if they want to adopt Merged /usr." along with a comment about the dpkg maintainer being resistant to change.
  6. Looking at popcon statistics for JOSM and usrmerge, it looks like 1 in 7 users might be affected. But then looking at the debian package page for JOSM, only bullseye-backports, bookworm, and sid have recent versions of JOSM available. From the usrmerge page, debootstrap has defaulted to usrmerge since 1.0.102. Which was in buster (2019-07-06). This removed the need for new installs to add usrmerge.

EDIT: FTR, buster is scheduled to go EOL in August.

Last edited 3 years ago by taylor.smock (previous) (diff)

comment:3 by skyper, 3 years ago

I've just installed josm_0.0.svn18463+dfsg-1~bpo11+1_all.deb from bullseye-backports and it suffers the same bug (#22157) on my bullseyes system.

Last edited 3 years ago by skyper (previous) (diff)

comment:4 by skyper, 3 years ago

Description: modified (diff)

comment:5 by sebastic, 3 years ago

Cc: sebastic added

comment:6 by sebastic, 3 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.