Happycamper app thread

I’m building happy camper. It’s a simple Webview based, python app for downloading your Bandcamp tracks (album/track) to you Sailfish device.

If anyone has any spare cycles to devote to an Icon, (preferably an inkscape file) that’d be great. I should have the prototype running today.


The choosen Name is a bit confusing i think. When i see this Post, i was happy its something about finding good Camping-Spots.

I suggest something like “Bandcamp fisher” or similar.

1 Like

Yeah, I thought I might hear that. Where I come from (Northern Alberta, Canada), a happy camper is a very generally happy person. Being able to click a link and download to my phone will make me a happy camper. And, sadly, using Bandcamp is not viable for all of the trademark infringement foo.

I’m also a camper. So, I guess I better get started on CampSite, the camping spot finder. Can I leave that for the spring? Maybe using: https://opencampingmap.org ?


I love the name. Happy Camper. Great.

I can provide an icon just not directly for Inkscape, which I guess is SVG type?, anyway, I’m often using photoshop, read your request for an icon, it 's quickly produced utilising the Bandcamp logo (not sure if that’s an issue or not, so I made some very minor changes and saved it as 172px


I guess you can convert online?, I can only provide what photoshop will spit out. Lemme know if you do or don’t like it or want to change something.

1 Like

@nephros, I was copying the approach you took in Fratzenjail for the service under the understanding that you had made it to run under sailjail? Did that require moving the app to a self contained app away from the qml runner?

With sandboxing disabled it’s running with the harbour-happycamper-open-url.desktop approach … obviously the app needs to be started, but I am able to choose happycamper and it opens the urls via dbus calls. I’m guessing that I need to work out how to get the service on the dbus via systemd if I want this to work under sailjail?

With the name apparently being confusing enough to some (see a few posts above) I would suggest leaning more into the music side of the app when creating a logo instead of emphasizing anything camping related :grinning:


Since the name Bandcamp sort of hints at music and camping, why not both?

Of course, someone playing the guitar by a campfire outside the tent would be to much for an icon… Maybe notes coming out of the tent?

1 Like

I’m thinking of music side of things with ‘cheek’.

As an aside, since this is just a wrapper on ‘campdown’ I wonder if it makes any sense to integrate it into music explorer? I had sort of avoided it, since it departs from the curated db approach, but, maybe it’s a good idea after all?

As much as i love the idea, i actually had the same exact impression

Still, anyway, i love the idea

Wondering if streaming is also possible
Jupii has it but only via dlna so not really a solution

Would anyway be the perfect solution to finally remove the bandcamp android app…

Never had that, but it was a bit tedious running campdown on the phone :slight_smile:

It tends to be so FAST that streaming isn’t really an issue for albums, but I tend to get a tip (mastodon, telegram) take a peek and if I like it, download it. I also buy a fair amount for those artists that offer vinyl.

As it is now, if you open a link to a bandcamp domain with happycamper, you have a webview which does not play in the background, so that’s a downside. But, if it’s an album, it’s downloaded very quickly (128kps mp3) which suits me.

I’m going to do some cleanup and do an initial release now.

I’m not really sure I understand your question.

For SailJail, as long as any dbus names are following the ones in the .desktop file for Organization and App names, no special setup is required.

Except of course the non-obvious/annoying things, like

which makes all the harbour- prefixing actually not allowed for the ApplicationName :wink:

  • And the not very-well-explained difference between the tags ExecDBus, and
  • And you really should use the X-ExecDBus variant, otherwise desktop-file-validate will choke. But not all 4.x versions of SFOS support that key…

There really needs to be a comprehensive document made about all of this.

Anyway the most modern copy of the FratzenJail heritage is Hydrogen, and IIRC, and this and this PR should contain most of it.

1 Like

The question was related to some of the details of Fratzenjail: using a systemd service, having a compiled app, etc.

The setup I have now, which looks more or less like that of Hydrogen, is ‘only’ the qml app (with the DBusAdapter (sessionbus)) and the extra open-url desktop file. That works, but I’m guessing I have something wrong with the naming:


service: 'de.poetaster.happycamper'
iface: 'de.poetaster.happycamper'
path: '/de/poetaster/happycamper'
xml: '<interface name="de.poetaster.happycamper">

Probably the upper case happy? Thanks for caring!

Definitely. Names must match exactly.

FJ has a compiled bin because of the browser booster (which works but increases mem usage).

Access to systemd needs special permissions, depending on what you want to do. An app profile can help with that, but means no harbour for you.

1 Like

Hmmm. Tried that. App no longer launches. Well, works fine from SDK or cli. Also tried to make the paths conform to be like those in hydrogen (ie. /happycamper/ui). This did not work. The initial paths and openUrl works fine. But only from cli. Hmmm. Wonder what I’ve done. EDIT: this is now with the addition of Sailjail. Although I’m having difficulties backtracking (ie. turning off sandboxing does not do the trick either). jeez.

EDIT: Sigh. It’s fine. Works with sandboxing. The declared interfaces and paths are all the same, but, it works. Now, for sanitation of the URL inputs.

So, since I went with a snappy contentious name, I thought I’d make a cutesy icon:


Anyone want’s to try it, Show home:poetaster / happycamper - SailfishOS Open Build Service

It’s pretty bare bones but, searching in the webview works fine. I’ve added back and forward to the download. Download notifications (in app) seem fine. DBus works fine and files seem to come in as you would hope. No settings yet … stores individual tracks to ~/Music and Albums / Artists to ~/Music/Artist-Album…


@poetaster, I have been using youtube-dl (yt-dlp) for that, for years. It will happily download whole albums or even everything one artist has to offer. Only if it’s free of course). Of course it’s nice to have an SFOS app for that, but you might want to consider changing the backend (campdown is not very active afaics).

Here is an svg icon (optimised), maybe you like it or you can hack it from there. License: WTFPL (edit: beat me to it!)

Yeah, I’m aware. Dunno why I liked campdown. It’s very basic, I guess.

The question is, do you think the smarmy little guy merits being an icon?

Ah well then kudos to you, i actually do the same, in fact 99% of my bandcamp records ar bought on physical

Anyway, first of all let me thank you for making this app, very welcomed

I had a chance to try it, but it does not work. Everytime i download something, a “download is starting” message appear but nothing is being really downloaded

Now my point is: sometimes, when i’m driving, i just want to stream my bandcamp music to my car stereo. I would use the browser as, despite being a little incovenient is more than enough, but unfortunately no sound is played via bluetooth from the browser, at least on my car stereo. It has been reported either here and on zendesk, but you know, jolla…
Thir application seems like what i need but there are some things that should be fixed (or adjusted, depends on the point of view)

1 read (and also tried it) that background music is not supported. Could this be supported?so i could turn off the screen and/or switch application

2 when opening my collection, none of the albums actually opens and i have to manually search for them, quite incovenient

(on a sidenote, my collection opened in desktop mode on the first time, i had to set in mobile view and luckily seems to stay that way)

Thank you, and god bless bandcamp :stuck_out_tongue: