having prefix='' by default is non standard and confusing
Bug #1590831 reported by
Sebastien Bacher
This bug affects 5 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Snapcraft |
New
|
Undecided
|
Unassigned | ||
snapcraft (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
The autotools plugin default to an empty prefix if you install by destdir (which is default), that's quite non standard and can create confusion, is there any reason to not use the upstream default (/usr/local) or the distribution default (/usr)?
I hit the issue while packaging gucharmap, the glib schemas got installed in $snap/share but the other schemas coming from the deb parts are in $snap/usr/share, our default wrapper set things to look in $snap/usr/share and it the program was not finding its schemas.
Things works after using "configflags: [--prefix=/usr]" but ideally that would be the default
summary: |
- having prefix='' by default is non standrd + having prefix='' by default is non standard |
summary: |
- having prefix='' by default is non standard + having prefix='' by default is non standard and confusing |
To post a comment you must log in.
First of all, I agree that an empty prefix is odd. However, the FHS of which /usr and /usr/local are a part really doesn't mean much when we're talking about snaps. For example, there's no concern about interoperability, or arch-dependent directories. The author could ship all binaries in $SNAP/bin and ship all config files in $SNAP/config, or just ship everything flat in the $SNAP, and it doesn't matter. I guess what I'm getting at is that using /usr or /usr/local as a default doesn't really seem to make sense in this context either.
Perhaps the best solution would be to remove the default prefix all together (if using destdir), so the project can use its own defaults. That way snapcraft doesn't try to force the "new" or the "old" ways of doing things upon projects by default. Would that work?