
Show HN: A Native Art Gallery for the Mac - archagon
http://archagon.net/blog/2018/05/02/a-native-art-gallery-for-your-mac/
======
Sidnicious
Another approach is to create a window at desktop level. It can even display a
web page with a system web view — you _probably_ want to opt the window out of
receiving mouse events, too, to avoid interfering with drag selection on the
Desktop.

I do that at home with a local HTML file to randomly generate a desktop
background at startup, and I’ve tried dynamic content (like a countdown
clock). Code here: [https://github.com/s4y/Dash](https://github.com/s4y/Dash)

But for an app like this, you could do native, animated transitions, and avoid
touching the desktop background settings.

Edit: you could even create a smaller interactive window (also at desktop
level) with a link to the source, a button to advance to the next wallpaper…

~~~
codefined
I recently looked into doing this for my Windows laptop, but found that it
halved the battery life. Is this also a problem with running stuff like this
on Macs?

~~~
madeofpalk
Heh it's incredible hearing about someone _trying_ to do this one Windows (and
Mac) - I have very vivid memories of Active Desktop on Windows 98 that let you
set an HTML page as your 'wallpaper'/on your desktop
[https://en.wikipedia.org/wiki/Active_Desktop](https://en.wikipedia.org/wiki/Active_Desktop)

~~~
khedoros1
I remember that some system crashes would cause it to disable itself, with a
hyperlink to reenable it. I also remember being obsessed with converting movie
clips into animated gifs, and setting those as my background.

------
poignard
I've been using an app called artpip for a while, it's great:
[https://www.artpip.com/](https://www.artpip.com/)

~~~
mcjiggerlog
Creator of Artpip here. Came to suggest it as an alternative. Happy to answer
any questions!

Also @OP - you might want to take a look at the wallpaper-macos[0] lib that I
developed for Artpip. It uses the nodobj node wrapper but it should be a
useful reference. You don't need to read from the sqlite DB or deal with
restarting the dock. You can reliably get the current wallpaper like so [1].
Also you might want to check out how [2] it handles setting backgrounds on
multiple spaces, should you want to support that.

[0] [https://github.com/tom-james-watson/wallpaper-
macos](https://github.com/tom-james-watson/wallpaper-macos)

[1] [https://github.com/tom-james-watson/wallpaper-
macos/blob/mas...](https://github.com/tom-james-watson/wallpaper-
macos/blob/master/lib/wallpaper.js#L25)

[2] [https://github.com/tom-james-watson/macos-space-
change](https://github.com/tom-james-watson/macos-space-change)

~~~
archagon
Thanks for the links! desktopImageURL works if you're manually cycling your
wallpapers, but it won't give you the correct result if you're relying on the
native macOS cycling functionality. (It only returns the source image
directory URL.) Hence the private functions and Dock restarting.

~~~
mcjiggerlog
Ah, ok. Why not just implement your own cycling instead of relying on the
system cycling?

~~~
archagon
I suppose I envisioned the app as something that simply slotted on top of the
native system behavior and wouldn't break anything when closed. Less hassles,
less maintenance, and the user doesn't have to worry about automatic processes
changing their system settings.

As a consequence, you can set the wallpaper for each Space to a different
image or directory in System Preferences, and the app will only expose its
"gallery management" features when it can match the current wallpaper with an
image in its assigned Source directory.

------
acmecorps
I think I'm the only one who rarely look at my desktop. Most of the time, it's
been covered by windows/apps.

~~~
archagon
Me too — hence the "Show Desktop" shortcut by right-clicking the menu bar
icon.

~~~
dcosson
This is a cool app, but isn't the idea to integrate it somewhere you end up
looking already, rather than have to think to look at it and click the
shortcut? I have the same problem, I always cmd+tab between windows so I never
see my desktop.

In the past I used a chrome extension called tab.pics that shows a new
landscape image pulled from reddit on every blank tab. It was kinda buggy
though, it rarely shows the caption of what I'm looking at, and the source
material isn't always that interesting or high enough resolution and sometimes
doesn't load at all.

Just an idea, but if you converted BackgroundifierBuddy to a chrome extension
I would totally use it.

------
saudioger
I've been using the Google Arts & Culture browser extension for years now,
every new window/tab is art.

[https://chrome.google.com/webstore/detail/google-arts-
cultur...](https://chrome.google.com/webstore/detail/google-arts-
culture/akimgimeeoiognljlfchpbkpfbmeapkh?hl=en)

------
stephengillie
I collect Maps of the World in a Dropbox folder, and tell Windows auto rotate
to use this folder. So I see a different perspective or interpretation of "The
World" every 10 minutes.

Some are just regions - USA, Europe, China, etc. Most are actual maps - places
listed by Google searches or names translated from their native tongue, etc. A
few are visualizations of the tallest mountains or longest rivers.

~~~
npgatech
That's super cool; would you mind sharing your folder?

~~~
stephengillie
[https://www.dropbox.com/sh/eftu4fak6efngfr/AAAWuj-
oJ5AmOn_O7...](https://www.dropbox.com/sh/eftu4fak6efngfr/AAAWuj-
oJ5AmOn_O7M7971Oda?dl=0)

------
Osmium
Very nice! Request: art gallery-like legends next to the artwork, with
title/artist/date (I imagine this would only work with a curated source of
art, but if I ever used something like this, I'd like to learn something too).

~~~
archagon
That was one of my original goals as well, but unfortunately there aren't many
(any?) sources of downloadable art tagged with metadata. Hence, just the
filename in the pop-up menu.

~~~
mcjiggerlog
I realised the same thing when building Artpip and built up a database of
~25000 images and ~5000 artists via wikimedia's extremely unfriendly API.

I've thought about creating an open dataset that is free to use/download
(everything is in the public domain anyway). The thing is, I have around 250GB
of images (all images available in 4k) and I'm put off by the cost of hosting.
If I were to just serve 2K images then the set would only be around 20GB.

Any suggestions for how to serve such a big file from a website?

I could just make it available as a dat
([https://datproject.org](https://datproject.org)), but it's not exactly a
widely used technology yet. Maybe I should just make a torrent? Ideally I
would be able to update the dataset in the future.

~~~
smsx
Can you distribute a torrent file?

------
nullicorn
I see these kind of projects often, and I’m not sure how I feel about them.
Art is more than just something nice to look at. By turning these pieces of
art into wallpapers, it feels like the meaning, context, and significance are
being stripped away. And you are missing the entire point. I could be entirely
wrong as I’m no art expert.

~~~
archagon
I've recently been entranced by the late works of Wayne Thiebaud[1], to the
point of checking out his collections at the library and meticulously scanning
them in at home. Reading about the context and inspiration behind some of his
pieces was illuminating, sure; but I still get the same feeling looking at his
art even with this new information as I did when it first caught my eye at
SFMOMA.

To me, the aesthetic and emotional impact of the art comes first, and
everything else is just a value-add.

[1]: [http://poulwebb.blogspot.com/2010/11/wayne-thiebaud-
cityscap...](http://poulwebb.blogspot.com/2010/11/wayne-thiebaud-
cityscapes.html)

~~~
nullicorn
I agree with you on the point that aesthetic and emotional impact of the art
is important, but I feel like having it as a wallpaper kind of takes that
experience away. I think one has to be in a particular mood and mindset to
really take that in. But having art as a wallpaper... I guess I am skeptical
that the times between switching apps is the right time to take that all in.

Thank you for sharing that link! I remember seeing his work before at de Young
museum and it brought back some memories :)

~~~
archagon
I guess I don't really see it as a wallpaper anymore, but an on-demand art
gallery that just happens to be built using the wallpaper cycling
functionality of macOS. My desktop is covered by windows 99% of the time
anyway!

------
eltoozero
GeekTool[0] natively supports a slideshow widget. Supports folders and URLs
for webcams and whatever else too.

Setup a folder full of stuff that reminds you not to stress.

[0]:
[https://www.tynsoe.org/v2/geektool/](https://www.tynsoe.org/v2/geektool/)

------
cfv
You know what I actually miss when I use OSX? An actual mspaint clone.

Not an ad-ridden or pay version, just a built in paint app I can doodle on
that's in there by default.

~~~
dobs_bob
I believe you can doodle on an image with Preview

~~~
sgt
Preview.app doesn't allow you to start off with a canvas of a specific size,
and then start doodling though. I really think they should add this feature,
because the Markup functionality in Preview is really good. What surprises me
is that a lot of people don't know that Preview is very powerful.

------
zzzmarcus
Nice! I've been using a similar app for years. Love it:
[http://www.artfulmac.com](http://www.artfulmac.com)

~~~
archagon
Yes, I even cite it as an inspiration for making Backgroundifier! I loved the
idea and execution, but I wanted to use my own art folders. It no longer
appears to be for sale, unfortunately.

------
rcarmo
I have a folder with 30 or so polygon patterns from
[https://trianglify.io/](https://trianglify.io/) that rotate every half an
hour on both Windows and the Mac.

This is a nice complement to it, especially since I can run this on my Mac and
share the generated wallpapers via OneDrive with Windows :)

------
codazoda
I was just hacking on something like this a few weeks ago. I was using
Imagemagick and a bash script. In the end I wasn't to happy with my results
and figured I was spending too much time. This looks great, I'm going to try
it out.

------
homeoffice1
That's a slick way to rotate images. Curious, can you name the paintings in
the video?

~~~
archagon
Lessee...

* "The Seasons: Autumn" — Alphonse Mucha

* "A Winding Road" — Sir Matthew Smith

* "Town View, Bogneux" — Anton Lindforss

* "Sea and Sky" — Rafael Martínez Padilla

* "The Ninth Wave" — Ivan Aivazovsky

* "Forever with Moscow. Forever with the Russian People" — Mikhail Khmelko

* "Tsar Dadon Before the Shemakha Queen" — Ivan Bilibin

* "Paysage" — Jean Metzinger

~~~
sgt
Are they bundled with the app when it is purchased via the App Store? If not,
I think that would be a good idea.

As for the app itself - it looks very good. Well done!

~~~
Johneric
I would also like to know this or if you can upload somewhere

------
whitehouse3
Only works on High Sierra. Any plans to add compatibility with prior OS's?

~~~
archagon
I can compile it to run with older macOS versions, but I won’t be able to test
it. What version are you running?

------
emgee_1
I don’t get it; if you work behind Your iMac you will never see the desktop?

