wishthis

wishthis is a self-hosted platform to create, manage and view your wishes for any kind of occasion.


Note

For this guide you should be familiar with the basic concepts of

Prerequisites

We’re using PHP in the stable version 8.2:

[isabell@stardust ~]$ uberspace tools version use php 8.2
Selected PHP version 8.2
[isabell@stardust ~]$

You’ll need your MySQL credentials. Get them with my_print_defaults:

[isabell@stardust ~]$ my_print_defaults client
--default-character-set=utf8mb4
--user=isabell
--password=MySuperSecretPassword
[isabell@stardust ~]$

Your website domain needs to be set up:

[isabell@stardust ~]$ uberspace web domain list
isabell.uber.space
[isabell@stardust ~]$

Installation

Note

Make sure wishthis is setup via a domain directly and not running inside a sub-folder.

cd to your DocumentRoot, then clone the wishthis repository. You can find the latest stable version on the release notes.

[isabell@stardust ~]$ cd /var/www/virtual/$USER/html
[isabell@stardust html]$ rm -f nocontent.html
[isabell@stardust html]$ git clone -b stable https://github.com/wishthis/wishthis.git .
[isabell@stardust html]$

After cloning the repository, you need to create an additional folder:

[isabell@stardust ~]$ cd /var/www/virtual/$USER/html/src/
[isabell@stardust src]$ mkdir cache
[isabell@stardust src]$

Create database

While not technically necessary, it is recommended to create a single-purpose MySQL database for whishthis:

[isabell@stardust ~]$ mysql --verbose --execute="CREATE DATABASE ${USER}_wishthis"
--------------
CREATE DATABASE isabell_wishthis
--------------

[isabell@stardust ~]$

Finishing installation

Point your browser to https://isabell.uber.space/ The built-in setup should start. Follow the instructions, enter your database credentials and the name of the database you just created, and register your user account.

Updates

Note

Check the release notes regularly to stay informed about the newest version.

Run git pull in the wishthis directory to pull the latest changes from upstream.

[isabell@stardust ~]$ cd ~/html
[isabell@stardust html]$ git pull origin stable
[isabell@stardust html]$

Optional steps

Disabling registration

By default, registration is open to anyone. If you have registered an account for yourself and want to disable registration, you need to change the value in the config file:

[isabell@stardust ~]$ nano ~/html/src/config/config.php
[isabell@stardust config]$
/**
 * Miscellaneous
 */
define('DISABLE_USER_REGISTRATION', true);

Acknowledgements

Warning

wishthis v.1.1.1 still has a bug where German special letters (umlauts) are not correctly displayed: https://github.com/wishthis/wishthis/issues/80

This guide is based on the official wishthis readme.


Tested with wishthis v1.1.1 and Uberspace 7.15.14

Written by: Kevin Jost <https://github.com/systemsemaphore>