1
0
mirror of https://gitlab.com/kelteseth/ScreenPlay.git synced 2024-09-14 22:42:34 +02:00
ScreenPlay/README.md

163 lines
7.3 KiB
Markdown
Raw Normal View History

2018-12-04 13:40:26 +01:00
<div>
<img width="100%" height="93" src=".gitlab/media/logo_gitlab_fullwidth.svg">
2018-12-04 12:52:01 +01:00
</div>
2018-12-04 12:45:17 +01:00
2018-12-04 13:57:54 +01:00
<div align="center">
2020-02-10 16:09:36 +01:00
ScreenPlay is an open source cross plattform app for displaying Wallpaper, Widgets and AppDrawer. It is written in modern C++17/Qt5/QML. Binaries with workshop support are available for Windows and soon Linux & MacOSX via <a href="https://store.steampowered.com/about/">Steam</a>. Join our community:
2020-02-10 16:10:54 +01:00
2020-02-10 16:11:37 +01:00
<h3><a href="https://screen-play.app/">Homepage</a> - <a href="https://forum.screen-play.app/">Forum</a> - <a href="https://discord.gg/3RygPHZ">🎉 Discord (Free Steam Key Here!)</a> - <a href="https://www.reddit.com/r/ScreenPlayApp/">Reddit</a></h3>
2019-11-15 19:28:30 +01:00
<!--<h4><a href="https://steamcommunity.com/app/672870/">Download ScreenPlay!</a></h4>-->
2018-12-04 13:57:54 +01:00
<br>
2019-08-28 16:33:21 +02:00
![Preview](.gitlab/media/preview.mp4)
2020-02-10 16:10:54 +01:00
<br> <h4><a href="https://kelteseth.gitlab.io/ScreenPlayDeveloperDocs/"> Developer C++ Classes Documentation</a> and <a href="https://kelteseth.gitlab.io/ScreenPlayDocs/">Wallpaper And Widgets Guide</a></h4>
2020-02-10 16:09:36 +01:00
</div>
2019-08-28 16:33:21 +02:00
2020-01-30 14:18:11 +01:00
# Platform support
* ❌ Not working/Not implemented
* ❓ Only partical implemented/Not tested
<div align="center">
| Feature | Windows | Linux | MacOS |
|------------------------ |--------- |------- |------- |
| __ScreenPlay Main App__ | ✔ | ✔ | ✔ |
2020-05-03 13:11:26 +02:00
| __Steam Binaries__ | ✔ | ❌ | ❌ |
| __Wallpaper__ | ✔ | ❌ Help Needed for Gnome/KDE/etc! | ✔ |
| __Widgets__ | ✔ | ❓ | ✔ |
| __Multilanguage (EN,DE,RU,FR,ES,KO🆕,VI🆕)__ | ✔ | ✔ | ✔ |
2020-01-30 14:18:11 +01:00
2020-01-30 14:32:37 +01:00
</div>
Because every operating system has his own version of desktop environment we need to adapt the ScreenPlayWindow for every platform seperate. The most feature complete for now is Windows 10. Windows 7 works but the wallpaper have the [worng coordinates](https://gitlab.com/kelteseth/ScreenPlay/issues/34). MacOS has some basic wallpaper functionality but no maintainer. For Linux we sadly have no support for any desktops environments at the moment.
__If you want to help and add new desktop environments look at ScreenPlayWallpaper/src folder__
* [BaseWindow](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/ScreenPlayWallpaper/src/basewindow.h) baseclass for:
* [LinuxWindow](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/ScreenPlayWallpaper/src/linuxwindow.h)
* [WinWindow](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/ScreenPlayWallpaper/src/winwindow.h)
* [MacWindow](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/ScreenPlayWallpaper/src/macwindow.h)
<div align="center">
| Plattform | Windows 7 | Windows 8/8.1 | Windows 10 | Gnome | KDE | XFCE | MacOS |
|------------------------ |--------- |------- |------- |--------- |------- |------- | ------- |
| __Wallpaper__ | ❓ Help Needed! | ❓ Help Needed! | ✔ | ❌ Help Needed! | ❌ Help Needed! |❌ Help Needed! | ❓ (Basic implementation) Help Needed! |
2020-01-30 14:18:11 +01:00
</div>
2020-05-03 13:11:26 +02:00
# Contributing
2018-12-04 13:40:26 +01:00
Everyone can contribute with code, design, documentation or translation. Visit our [contributing guide](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/CONTRIBUTING.md) for more informations.
2018-12-04 13:40:26 +01:00
2019-08-24 16:52:14 +02:00
* If you want to help [translate](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/CONTRIBUTING.md#translation)
* If you are a [programmer](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/CONTRIBUTING.md#development)
* If you are a [designer](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/CONTRIBUTING.md#design)
2019-09-05 13:12:45 +02:00
2018-12-04 18:13:44 +01:00
# Getting started
2018-12-04 14:13:02 +01:00
2018-12-04 18:13:44 +01:00
### Basic
2019-12-01 13:32:27 +01:00
1. Install latest [git + git-lfs](https://git-scm.com/)
2. Clone ScreenPlay
2018-12-04 14:13:02 +01:00
``` bash
2020-04-18 13:27:19 +02:00
git clone --recursive https://gitlab.com/kelteseth/ScreenPlay.git
2018-12-04 14:13:02 +01:00
```
2019-12-01 13:32:27 +01:00
3. Download the latest [__Qt 5.14__](https://www.qt.io/download-qt-installer). Earlier versions are not supported!
4. Start install-dependencies.bat to download dependencies into the Common/ folder
``` bash
//Windows
2019-12-01 13:32:27 +01:00
.\install-dependencies.bat
//Linux
2020-04-18 13:41:09 +02:00
sudo apt install git gcc cmake build-essential libgl1-mesa-dev
chmod +x install-dependencies.sh
.\install-dependencies.sh
2019-12-01 13:32:27 +01:00
```
* This will install these dependencies via __vcpkg__
* libzippp
* nlohmann-json
* openSSL 1.1.1d
2020-05-03 13:11:26 +02:00
* zlib& libzip
* breakpad
2019-12-01 13:32:27 +01:00
* Download these dependencies via __git submodules__
* stomt-qt-sdk
* qt-google-analytics
* qt-breakpad
5. **Follow the steps below for your OS**.
2020-05-14 11:16:44 +02:00
6. Open the CMakeLists.txt via QtCreator. **This can take some time until QtCreator parses all files!**
7. Add a second build step at: Projects -> Build -> Add Build Step -> Select Build -> Select "install" .
<div>
<img width="100%" height="auto" src=".gitlab/media/QtCreator_install.png">
</div>
8. Add CMake variables
2020-05-03 13:11:26 +02:00
* Add CMAKE_TOOLCHAIN_FILE and VCPKG_TARGET_TRIPLET
* Extras -> Tools -> Kits -> <Your Kit> -> CMake Configuration -> Append this:
2020-05-16 13:37:47 +02:00
* CMAKE_TOOLCHAIN_FILE:STRING=%{CurrentProject:Path}/Common/vcpkg/scripts/buildsystems/vcpkg.cmake
2020-05-03 13:11:26 +02:00
* VCPKG_TARGET_TRIPLET:STRING=x64-windows
* or Linux: x64-linux MacOSX: x64-osx
<div>
<img width="100%" height="auto" src=".gitlab/media/QtCreator_kit.png">
</div>
9. Check if Ninja is selected
* Extras -> Tools -> Kits -> <Your Kit> -> CMakeGenerator -> Change to:
* Generator: Ninja
* Extra Generator: CodeBlocks
10. Save and close the settings.
11. Press build (the big green play button). This will compile the project and copy all necessary files into your Qt installation.
2019-12-01 13:32:27 +01:00
2018-12-04 12:18:28 +01:00
### Windows
1. [Download and install MSVC 2019 Community](https://visualstudio.microsoft.com/vs/community/)
2020-05-03 13:11:26 +02:00
- Select "Desktop development with C++"
2. [Download and install Qt 5 binary installer from qt.io](https://www.qt.io/download-qt-installer)
- Install the Maintaince tool
2018-08-19 15:23:59 +02:00
- Select the following features to install:
2020-05-03 13:11:26 +02:00
- Qt 5.14.2
2018-08-19 15:21:34 +02:00
- MSVC 2017 64-bit
- Qt WebEngine
2020-05-03 13:11:26 +02:00
- Developer and Designer Tools
- Cmake
- Ninja
2018-12-04 12:18:28 +01:00
### Linux
1. Install dependencies for your distro:
``` bash
# Debian/Ubuntu
2020-05-03 13:11:26 +02:00
sudo apt install build-essential libgl1-mesa-dev lld ninja-build cmake
2018-08-19 15:23:59 +02:00
2018-12-04 12:18:28 +01:00
# Fedora/RHEL/CentOS (yum)
sudo yum groupinstall "C Development Tools and Libraries"
sudo yum install mesa-libGL-devel
2018-08-19 15:23:59 +02:00
2018-12-04 12:18:28 +01:00
# openSUSE (zypper)
sudo zypper install -t pattern devel_basis
```
2. [Download and install Qt 5 binary installer from qt.io](https://www.qt.io/download-qt-installer)
- Install the Maintaince tool
- Select the following features to install:
2020-05-03 13:11:26 +02:00
- Qt 5.14.2
2018-12-04 12:18:28 +01:00
- GCC
- Qt WebEngine
### OSX
2020-02-24 11:58:56 +01:00
1. [Download and install Qt 5 binary installer from qt.io](https://www.qt.io/download-qt-installer)
2018-12-04 12:18:28 +01:00
- Install the Maintaince tool
- Select the following features to install:
2020-05-03 13:11:26 +02:00
- Qt 5.14.2
2018-12-04 12:18:28 +01:00
- Qt WebEngine
- Developer and Designer Tools
- OpenSSL 1.1.1.c Toolkit
- OpenSSL 64-bit binaries
2020-05-03 13:11:26 +02:00
- Cmake
- Ninja
2020-02-24 11:58:56 +01:00
2. Install [homebrew](https://brew.sh/)
- Open a terminal and install clang -> brew install llvm
3. Change your default kit: QtCreator -> Options -> Kits -> Select your default kit (Desktop Qt 5.13.0) -> Change c and c++ Compiler to Apple Clang (x86_64)