You are troddingin a mine field.
When you start a GUI program from the background (cron or other), there is no guarantee whatsoever that a GUI is running in the first place (or do you expect the background program to start X (when not running) and then log in in the Display Manager?).
OTOH there may be already a running GUI session, but there may even be more then one. So which one to choose? You tried to solve that by specifying the session to be used (DISPLAY=:0), but are you sure that session is the correct one? In any case your program (luckybackup) can not “lnow this”.
And even when all this is by incident working together, the owner of the running session on DISPLAY=:0 has the final saying. You can not without approval og the owner of a session open windows on a session from outside. That would be a huge security hole. that would e.g.allow anybody to trace all keyboard srokes from outside (remember that basically that outside program may even run on another system and try to use the GUI session over the network).
For that the GUI session owner can allow outside host/user combinations to use his GUI. Earlier there was the tool xhosts for this, but it isn’t available in todays openSUSE. Most probably because of security.
I think you should think over the implications of what you want: allowing a program to open a window on a session where that program is not running from, on in a multi-user and multi-session operating system like Linux.