Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revamped documentation #407

Merged
merged 11 commits into from
Jul 8, 2020
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
105 changes: 105 additions & 0 deletions INSTALL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
# Installation

## Table of contents

- [Arch-based distributions](#arch-based-distributions)
- [Debian](#debian)
- [Fedora](#fedora)
- [OpenMandriva](#openmandriva)
- [openSUSE](#opensuse)
- [Pop!_OS](#pop_os)
- [Ubuntu-based distributions](#ubuntu-based-distributions)
- [AppImage](#appimage)
- [Flatpak](#flatpak)
- [Prebuilt releases](#prebuilt-releases)
- [Source](#source)
- [Building](#building)
- [Installing](#installing)

## Arch-based distributions
[`gamehub-git`](https://aur.archlinux.org/packages/gamehub-git/) and [`gamehub`](https://aur.archlinux.org/packages/gamehub/) are available in AUR.

## Debian
Unfortunately, there is no package available in the Debian repository, so it will be required to run the [`/scripts/build.sh build_deb`](../scripts/build.sh#L171-L210) script. The script will install the dependencies and GameHub.
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I haven't actually tried it on Debian, but I think packages for Ubuntu should install on Debian if dependencies are available in repos.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

that may be true, but PPAs have been prone to break in Debian since they were made specifically for Ubuntu. i wouldn't recommend adding PPAs if you are risking breakage

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should be possible to just download prebuilt .deb from releases page and install it on Debian without adding any repos (if all of dependencies are actually available in Debian repos).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i'll install a Debian VM and will test. hope it works

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's taking a while to install

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sad. seems like Debian doesn't want to boot after waiting an hour and half of installing

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tried a livecd, it doesn't boot either. i can't really test

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I haven't actually tried it on Debian, but I think packages for Ubuntu should install on Debian if dependencies are available in repos.

i would suggest we can add a warning that the .deb hasn't been tested in Debian, so users may experience issues

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can test
Gimme a few mins

Copy link
Contributor

@Scupake Scupake Jul 8, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Used the PPA, nothing broke, the commands are different though. I think that the granite package could cause some packages to break, not sure though. (btw I have no idea how to do the suggestions thing lol)

Debian

sudo apt install dirmngr
sudo sh -c "echo 'deb http://ppa.launchpad.net/tkashkin/gamehub/ubuntu focal main' > /etc/apt/sources.list.d/gamehub-ppa.list
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 5B63B42CE14BA47CC1B69E7C32B600D632AF380D
sudo apt install com.github.tkashkin.gamehub


**Build dependencies**
* `meson`
* `valac`
* `libgtk-3-dev`
* `libglib2.0-dev`
* `libwebkit2gtk-4.0-dev`
* `libjson-glib-dev`
* `libgee-0.8-dev`
* `libsoup2.4-dev`
* `libsqlite3-dev`
* `libxml2-dev`
* `libpolkit-gobject-1-dev`
* `libunity-dev` (optional, required for launcher icon quicklist, progress indicator and counter; pass `-Duse_libunity=true` to `meson` to use)
* `libmanette-0.2-dev`, `libx11-dev`, `libxtst-dev` (optional, required for gamepad support)
TheEvilSkeleton marked this conversation as resolved.
Show resolved Hide resolved

```bash
git clone https://github.com/tkashkin/GameHub.git
cd GameHub
scripts/build.sh build_deb
```

## Fedora
```bash
sudo dnf install gamehub
```

## OpenMandriva
[`gamehub`](https://abf.openmandriva.org/openmandriva/gamehub/build_lists) is available in the OpenMandriva repository.

## openSUSE
```bash
sudo zypper install gamehub
```

## Pop!_OS

```bash
sudo apt install com.github.tkashkin.gamehub
```

## Ubuntu-based distributions
Install Debian package from the [releases page](https://github.com/tkashkin/GameHub/releases) or import the [PPA](https://launchpad.net/~tkashkin/+archive/ubuntu/gamehub):

**THIS EXCLUDES [POP!_OS](#pop_os)!**
TheEvilSkeleton marked this conversation as resolved.
Show resolved Hide resolved
```bash
# install if `add-apt-repository` is not available
sudo apt install --no-install-recommends software-properties-common

sudo add-apt-repository ppa:tkashkin/gamehub
sudo apt update
sudo apt install com.github.tkashkin.gamehub
```

## AppImage
AppImages can be found in the [releases page](https://github.com/tkashkin/GameHub/releases).

## Flatpak
Unfortunately, there is no package available in the Flathub repository, so it will be required to run the [`/scripts/build.sh build_flatpak`](../scripts/build.sh#L311-L334) script:
TheEvilSkeleton marked this conversation as resolved.
Show resolved Hide resolved

```bash
git clone https://github.com/tkashkin/GameHub.git
cd GameHub
scripts/build.sh build_flatpak
```

## Prebuilt releases
Prebuilt releases can be found in the [releases page](https://github.com/tkashkin/GameHub/releases).

## Source
### Building
```bash
git clone https://github.com/tkashkin/GameHub.git
cd GameHub
meson build --prefix=/usr --buildtype=debug
cd build
ninja
```
### Installing
```
sudo ninja install
```
116 changes: 28 additions & 88 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,100 +1,40 @@
# [GameHub](https://tkashkin.tk/projects/gamehub) [![Build status](https://ci.appveyor.com/api/projects/status/cgw5hc4kos4uvmy9/branch/master?svg=true)](https://ci.appveyor.com/project/tkashkin/gamehub/branch/master) [![Translation status](https://hosted.weblate.org/widgets/gamehub/-/translations/svg-badge.svg)](https://hosted.weblate.org/engage/gamehub/?utm_source=widget)
Mirrors: [GitHub](https://github.com/tkashkin/GameHub), [codeberg.org](https://codeberg.org/tkashkin/GameHub), [repo.or.cz](https://repo.or.cz/GameHub.git), [git.froggi.es](https://git.froggi.es/tkashkin/gamehub)

Unified library for all your games.
## Overview
GameHub is a unified library for all your games. It allows you to store your games from different platforms into one program to make it easier for you to manage your games.

### [Features](https://tkashkin.tk/projects/gamehub/#/features)
GameHub allows to view, download, install, run and uninstall games from [supported sources](#game-sources).

### [Games](https://tkashkin.tk/projects/gamehub/#/games)
GameHub supports non-native games as well as native games for Linux.

It supports multiple [compatibility layers](https://github.com/tkashkin/GameHub/wiki/Compatibility-layers) for non-native games:
* Wine / Proton
* DOSBox
* RetroArch
* ScummVM

It also allows to add custom emulators.

GameHub supports [WineWrap](https://www.gog.com/forum/general/adamhms_linux_wine_wrappers_news_faq_discussion/post1) — a set of preconfigured wrappers for [supported games](https://www.gog.com/forum/general/adamhms_linux_wine_wrappers_news_faq_discussion/post3).

### [Game sources](https://tkashkin.tk/projects/gamehub/#/sources)
GameHub supports multiple game sources and services:
* Steam
* GOG
* Humble Bundle
* Humble Trove

Locally installed games can also be added to GameHub.

### [Collection](https://tkashkin.tk/projects/gamehub/#/collection)
GameHub makes storing and managing your DRM-free game collection easier.

Download installers, DLCs and bonus content and GameHub will save your downloads according to settings.
With GameHub, you can:
- store your games in one place;
- view your games;
- login to multiple platforms;
- download and install games from the supported sources;
- [enable tweaks](https://github.com/tkashkin/GameHub/wiki/Tweaks);
- add new tweaks;
- download installers, DLCs and bonus contents;
- add custom emulators.

GameHub supports:
- native games for Linux;
- multiple [compatibility layers](https://github.com/tkashkin/GameHub/wiki/Compatibility-layers), such as:
- WINE / Proton;
- DOSBox;
- RetroArch;
- ScummVM;
- custom emulators.
- multiple game platforms, such as:
- Steam;
- GOG;
- Humble Bundle;
- Humble Trove;
- [WineWrap](https://www.gog.com/forum/general/adamhms_linux_wine_wrappers_news_faq_discussion/post1) — a set of preconfigured wrappers for [supported games](https://www.gog.com/forum/general/adamhms_linux_wine_wrappers_news_faq_discussion/post3).

## Installation
Prebuilt releases can be found on [releases page](https://github.com/tkashkin/GameHub/releases).

### Ubuntu-based distros
Install debian package from [releases page](https://github.com/tkashkin/GameHub/releases) or use [PPA](https://launchpad.net/~tkashkin/+archive/ubuntu/gamehub):
```bash
# install if `add-apt-repository` is not available
sudo apt install --no-install-recommends software-properties-common

sudo add-apt-repository ppa:tkashkin/gamehub
sudo apt update
sudo apt install com.github.tkashkin.gamehub
```

### Arch Linux
[gamehub-git](https://aur.archlinux.org/packages/gamehub-git/) and [gamehub](https://aur.archlinux.org/packages/gamehub/) are available in AUR.

### Other packages
See [this issue](https://github.com/tkashkin/GameHub/issues/156) for more information.
See [INSTALL.md](INSTALL.md).

## Building

### Debian/Ubuntu-based distros

#### Build dependencies
* `meson`
* `valac`
* `libgtk-3-dev`
* `libglib2.0-dev`
* `libwebkit2gtk-4.0-dev`
* `libjson-glib-dev`
* `libgee-0.8-dev`
* `libsoup2.4-dev`
* `libsqlite3-dev`
* `libxml2-dev`
* `libpolkit-gobject-1-dev`
* `libunity-dev` (optional, required for launcher icon quicklist, progress indicator and counter; pass `-Duse_libunity=true` to `meson` to use)
* `libmanette-0.2-dev`, `libx11-dev`, `libxtst-dev` (optional, required for gamepad support)

#### Building
```bash
git clone https://github.com/tkashkin/GameHub.git
cd GameHub
scripts/build.sh build_deb
```

### Any distro, without package manager
```bash
git clone https://github.com/tkashkin/GameHub.git
cd GameHub
meson build --prefix=/usr --buildtype=debug
cd build
ninja
sudo ninja install
```

### flatpak
```bash
git clone https://github.com/tkashkin/GameHub.git
cd GameHub
scripts/build.sh build_flatpak
```
See [INSTALL.md#Source](INSTALL.md#source).

## [Screenshots](https://tkashkin.tk/projects/gamehub/#/screenshots)
<p align="center"><img src="data/screenshots/light/welcome.png?raw=true" width="49%" /> <img src="data/screenshots/dark/grid.png?raw=true" width="49%" /><img src="data/screenshots/dark/list.png?raw=true" width="49%" /> <img src="data/screenshots/light/grid_controller.png?raw=true" width="49%" /><img src="data/screenshots/light/details.png?raw=true" width="49%" /> <img src="data/screenshots/dark/settings_collection.png?raw=true" width="49%" /><img src="data/screenshots/dark/overlays.png?raw=true" width="49%" /> <img src="data/screenshots/light/install.png?raw=true" width="49%" /><img src="data/screenshots/light/properties.png?raw=true" width="49%" /> <img src="data/screenshots/dark/install_compat.png?raw=true" width="49%" /></p>