Bug #16306

Broken onionshare-gui: machine-id seems needed on buster

Added by CyrilBrulebois 2019-01-06 02:45:44 . Updated 2019-04-05 10:56:12 .

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Target version:
Start date:
2019-01-06
Due date:
% Done:

100%

Feature Branch:
Type of work:
Code
Blueprint:

Starter:
Affected tool:
OnionShare
Deliverable for:

Description

Here’s an onionshare-gui attempt from a console:

amnesia@amnesia:~$ onionshare-gui 
Onionshare 1.3.2 | https://onionshare.org/
dbus[12694]: D-Bus library appears to be incorrectly set up: see the manual page for dbus-uuidgen to correct this issue. (Failed to open "/var/lib/dbus/machine-id": Permission denied; Failed to open "/etc/machine-id": Permission denied)
  D-Bus not built with -rdynamic so unable to print a backtrace
Aborted

Subtasks


History

#1 Updated by intrigeri 2019-01-06 07:02:56

  • Status changed from New to Confirmed

(Otherwise the ticket land onto Help Desk’s triaging plate and I doubt they’ll be in a better position than you to triage this one :)

#2 Updated by intrigeri 2019-04-02 15:40:30

  • Affected tool set to OnionShare

#3 Updated by intrigeri 2019-04-02 15:40:59

  • Assignee set to intrigeri

Looks like this is AppArmor stuff.

#4 Updated by intrigeri 2019-04-02 18:51:16

  • Status changed from Confirmed to In Progress

Applied in changeset commit:tails|85d3f210804b69d675125b7d9e74753662009065.

#5 Updated by intrigeri 2019-04-02 18:52:39

  • Assignee changed from intrigeri to anonym
  • % Done changed from 0 to 50
  • QA Check set to Ready for QA

Fixed on feature/buster but I’d like a second pair of eyes to take a look, especially @anonym who did the initial OnionShare integration and is the Great Master of the Onion Grater™ :)

#6 Updated by anonym 2019-04-02 20:21:23

  • Assignee changed from anonym to intrigeri
  • % Done changed from 50 to 80
  • QA Check changed from Ready for QA to Info Needed

I briefly checked onion-grater’s --debug mode and the committed changes indeed seem necessary, and the AppArmor profile change is straightforward. So LGTM!

I wonder, how you did you construct onionshare.json? It doesn’t look like the minimal config we could get away with (e.g. close_after_first_download). I’m just thinking that if upstream changes the default of some unrelated option (e.g. close_after_first_download) we’d lose out, which seems like a bad idea.

#7 Updated by intrigeri 2019-04-03 09:18:30

  • Assignee changed from intrigeri to anonym
  • QA Check changed from Info Needed to Ready for QA

> I wonder, how you did you construct onionshare.json?

I’ve started OnionShare GUI, clicked a couple things needed to make it work in Tails, saved the config, reformatted it a little (by default it’s one single line) and committed.

> It doesn’t look like the minimal config we could get away with

You’re fully right.

> I’m just thinking that if upstream changes the default of some unrelated option (e.g. close_after_first_download) we’d lose out, which seems like a bad idea.

I’ve considered this before committing. I had to balance:

  • Hard-coding current defaults ⇒ risk of missing future useful change of defaults, as you said.
  • Shipping a minimal configuration ⇒ risk of OnionShare dismissing some of the settings we’ve customized because the config file is not considered to be a complete, valid one.

I had a hard time deciding which one was worse between these 2 risks. I picked the 1st one because:

  • The settings we’ve hard-coded here won’t become suddenly wrong because upstream change their mind wrt. what the default behavior should be.
  • I’m wary in general of how software behaves when one fiddles manually with its configuration outside of the GUI.
  • It would take time to find out what exact minimal config would work and how OnionShare will merge it with the defaults we would not set ourselves. I don’t think it’s worth it considering the risk it introduces vs. the risk it mitigates.

#8 Updated by anonym 2019-04-04 10:35:12

  • Status changed from In Progress to Fix committed
  • Assignee deleted (anonym)
  • % Done changed from 80 to 100
  • QA Check changed from Ready for QA to Pass

Sound legit to me. Closing!

#9 Updated by intrigeri 2019-04-05 10:56:12

  • Status changed from Fix committed to Resolved