From cd3cd65cc8482d4e9f619184acbfcaf59090a77b Mon Sep 17 00:00:00 2001 From: Iam Bot Date: Tue, 30 Oct 2018 02:41:34 +0200 Subject: [PATCH] Snap: Added README for snap, played around with snapcraft.yaml and updated root README with snapcraft status --- README.md | 39 +++++++++++++++++++++------------------ snap/README.md | 41 +++++++++++++++++++++++++++++++++++++++++ snap/snapcraft.yaml | 13 +++++++++++-- 3 files changed, 73 insertions(+), 20 deletions(-) create mode 100644 snap/README.md diff --git a/README.md b/README.md index 3151a96bb..dba20da38 100644 --- a/README.md +++ b/README.md @@ -1,19 +1,18 @@ +[![Snap Status](https://build.snapcraft.io/badge/reicast/reicast-emulator.svg)](https://build.snapcraft.io/user/reicast/reicast-emulator) + reicast =========== -reicast is a multi-platform Sega Dreamcast emulator. +**reicast** is a multi-platform Sega Dreamcast emulator. This is a developer-oriented resource, if you just want bins head over to http://reicast.com/ For development discussion, join [#reicast in freenode](https://webchat.freenode.net/?channels=reicast) or stop by the [reicast Discord server](http://discord.gg/Hc6CF72) -Caution -------- -The source is a mess, and dragons might eat your cat when you clone this project. We're working on cleaning things up, but don't hold your breath. Why don't you lend a hand? - Rebranding/(hard)forks ---------------- -If you are interested into further porting/adapting/whatever, *please* don't fork off. I hate that. Really. +If you are interested into further porting/adapting/whatever, *please* do not fork off. +We hate that. **Really**. Let's try to keep everything under a single project :) @@ -28,7 +27,8 @@ Bugs that do not include a form may be closed until it is filled out. Contributing ------------ -For small/one-off fixes a PR from a github fork is alright. For longer term collaboration we prefer to use namespaced branches in the form of `/` in the main repo. +- For small/one-off fixes, a PR from a GitHub fork is alright. +- For longer term collaboration, we prefer to use namespaced branches in the form of `/` in the main repo. Before you work on something major, make sure to check the issue tracker to coordinate with other contributors, and open an issue to get feedback before doing big changes/PRs. It is always polite to check the history of the code you're working on and collaborate with the people that have worked on it. You can introduce yourself in [Meet the team](https://github.com/reicast/reicast-emulator/issues/1113). @@ -109,23 +109,26 @@ Or open the .xcodeproj in Xcode and hit "Build". Building for Linux ------------------ -Requirements: -* build-essential -* libasound2 -* libegl1-mesa-dev -* libgles2-mesa-dev -* libasound2-dev -* mesa-common-dev -* libgl1-mesa-dev - -From project root directory: +### Using traditional make +- Requirements: + * build-essential + * libasound2 + * libegl1-mesa-dev + * libgles2-mesa-dev + * libasound2-dev + * mesa-common-dev + * libgl1-mesa-dev +- From project root directory: ``` cd shell/linux make ``` +### Using snap +- Refer to our [snap README](https:github.com/reicast/reicast-emulator/snap/README.md) + Translations ------------ New and updated translations are always appreciated! @@ -178,7 +181,6 @@ Our IRC channel is [#reicast @ chat.freenode.net](irc://chat.freenode.net/reicas The original reicast team consisted of drk||Raziel (mostly just writing code), PsyMan (debugging/testing and everything else) and a little bit of gb_away - Special thanks -------------- In previous iterations a lot of people have worked on this, notably David @@ -186,3 +188,4 @@ Miller (aka, ZeZu), the nullDC team, friends from #pcsx2 and all over the world [![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/reicast/reicast-emulator/trend.png)](https://bitdeli.com/free "Bitdeli Badge") + diff --git a/snap/README.md b/snap/README.md new file mode 100644 index 000000000..c36fee0b7 --- /dev/null +++ b/snap/README.md @@ -0,0 +1,41 @@ +[![Snap Status](https://build.snapcraft.io/badge/reicast/reicast-emulator.svg)](https://build.snapcraft.io/user/reicast/reicast-emulator) + +# General Notes +--- +Snap is a **squashfs** used to distribute applications on Linux targets in a +**secure**, **easy** and **maintainable** fashion. + +[Snap commands official reference](https://docs.snapcraft.io/reference/snap-command) + +# Installation +--- +### Installing snap +- Info on installing snap can be found at: [The official snap installation guide](https://docs.snapcraft.io/core/install) +- For more info check: [Complete snap usage article](https://itsfoss.com/use-snap-packages-ubuntu-16-04/) + +- Most Linux distros are covered there. If you encounter a problem contact us @ + lx0@emudev.org. + +### Installing reicast +- To install **reicast** (after having snap setup), simply run: + +```bash +snap install reicast --edge +``` +- This will get the latest master build for **reicast**. +- _If it fails_, run it with **sudo**. + +# Developer Notes +--- +- snap and snapcraft info: + * Snapcraft is a command line tool used to build snaps. + * For now, all snaps should be built to run against the ‘Series 16’ core. + * Snaps are built to run against a base snap containing a minimal common runtime environment. + * The best experience is generally to use a clean Ubuntu 16.04.3 LTS system or LXD containers or VM running Ubuntu 16.04.3. + * Snapcraft is itself available as a snap. + * Snapcraft builds on top of tools like autotools, make, and cmake to create snaps for people to install on Linux. + +- Additional Links: + * [The snapcraft syntax](https://docs.snapcraft.io/build-snaps/syntax#parts) + * [Snapcraft commands reference](https://docs.snapcraft.io/reference/snapcraft-command) + * [Snapcraft plugins reference](https://docs.snapcraft.io/reference/plugins/) diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 96e7a6aae..5d70e5503 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -1,12 +1,13 @@ name: reicast version: git -summary: Reicast +summary: Reicast -- The fastest Dreamcast Emulator description: | - Reicast is a Sega Dreamcast emulator. It is designed to run dreamcast games + Reicast is a Sega Dreamcast emulator. It is designed to run Dreamcast games and homebrew in x86, x64 and aarch64 based platforms. grade: stable icon: shell/linux/reicast.png confinement: strict +# architectures: all apps: reicast: @@ -41,3 +42,11 @@ parts: stage-packages: - libevdev2 after: [desktop-gtk2, alsa] + + # use prime to select specific packages + +# TODOS: +# * have to setup docker image to test on clean environment for further customization +# * add a stable channel and all the specific releases +# * research on cmake usage with snapcraft +# * research on gradle integration for android testing