Go to file
Luis Ángel San Martín 6cc92a260c
Merge pull request #346 from YACReader/develop
9.10 release
2022-10-30 08:43:40 +01:00
ci/win Codesign only on master/develop and pull requests 2022-09-16 10:28:20 +02:00
common Extract function 2022-10-29 11:07:10 +02:00
compressed_archive Add message output when using 7zip in windows 2022-08-31 09:32:23 +02:00
custom_widgets Mention the new webui page in what's new 2022-10-30 08:00:36 +01:00
dependencies Enable the usage of pkg-config by MinGW builds 2021-11-02 11:02:32 +01:00
files Include links to discord in the about pages 2022-10-25 10:10:45 +02:00
images Update context menu(s) icons to svg 2022-10-23 14:36:11 +02:00
release/server Web UI status page: Add YACReader svg 2022-10-23 20:02:12 +02:00
shortcuts_management Add a new action to scan the xml info from a folder 2022-10-29 11:07:57 +02:00
tests Add libarchive decompression backend 2022-08-31 09:32:23 +02:00
third_party Update QtWebApp to v1.8.6 2022-10-08 13:38:52 +02:00
YACReader Fix Qt5 compilation in macos 2022-10-23 16:37:54 +02:00
YACReaderLibrary Update UI strings 2022-10-29 11:09:00 +02:00
YACReaderLibraryServer Format 2022-10-29 11:25:21 +02:00
.clang-format Remove comment pragmas 2019-05-31 19:43:54 +02:00
.editorconfig Add .editorconfig to prevent whitespace conflicts 2019-04-19 15:02:34 +00:00
.gitattributes Exclude openssl an 7zip from git export so they don't pollute our source tarballs 2020-04-11 21:26:19 +02:00
.gitignore ignore qm files 2022-10-12 19:40:02 +02:00
azure-pipelines-build-number.yml Properly date+revision calculation 2019-08-24 11:11:57 +02:00
azure-pipelines-windows-template-qt6.yml Do not codesign PRs 2022-09-17 17:58:45 +02:00
azure-pipelines-windows-template.yml Do not codesign PRs 2022-09-17 17:58:45 +02:00
azure-pipelines.yml Fix typo in Linux dependencies 2022-10-08 20:47:04 +02:00
background.png Headless server: simplify system config logger 2018-01-28 13:32:56 +01:00
background@2x.png Add @2x background image for macos dmg 2019-09-01 13:31:54 +02:00
CHANGELOG.md Set 9.10 changelog 2022-10-30 08:40:34 +01:00
cleanOSX.sh Headless server: simplify system config logger 2018-01-28 13:32:56 +01:00
compileOSX.sh Enable hardened runtime 2022-09-14 17:34:10 +02:00
config.pri Copy qm files manually after linking to the output folder 2022-10-16 17:25:20 +02:00
COPYING.txt Headless server: simplify system config logger 2018-01-28 13:32:56 +01:00
dmg.json Title can't be more than 27 characters 2022-09-12 21:10:44 +02:00
icon.icns Headless server: simplify system config logger 2018-01-28 13:32:56 +01:00
INSTALL.md Update build instructions 2021-05-09 15:48:33 +02:00
mktarball.sh Update mktarball.sh for git usage (needs .gitattributes). 2018-06-06 13:46:24 +02:00
README.md Merge pull request #326 from nayeems3c/patch-2 2022-10-08 09:02:54 +02:00
signapps.sh Keep track about codesign in the logs 2019-09-18 23:26:13 +02:00
YACReader.1 Headless server: simplify system config logger 2018-01-28 13:32:56 +01:00
YACReader.desktop Add updated mime-types to YACReader.desktop 2021-11-10 19:21:39 +01:00
YACReader.pro tests: add the first Qt Test - ConcurrentQueueTest 2021-12-29 09:36:44 +01:00
YACReader.svg Headless server: simplify system config logger 2018-01-28 13:32:56 +01:00
YACReaderLibrary.1 Headless server: simplify system config logger 2018-01-28 13:32:56 +01:00
YACReaderLibrary.desktop Headless server: simplify system config logger 2018-01-28 13:32:56 +01:00
YACReaderLibrary.svg Headless server: simplify system config logger 2018-01-28 13:32:56 +01:00

Build Master Develop
Code Validation Build Status Build Status
Linux Build Status Build Status
Windows x86 Build Status Build Status
Windows x64 Build Status Build Status
MacOS Build Status Build Status
Publish Build Build Status

YACReader

"Yet another comic reader"

License

This software has been developed by Luis Ángel San Martín Rodríguez (luisangelsm@gmail.com) under GPL v3 license (see COPYING.txt).

Getting YACReader

Official releases:

https://github.com/YACReader/yacreader/releases

As a package:

Packaging status

From OBS build service:

Building from source:

See INSTALL.md

Contact

If you need help or have any suggestion, please, send me an e-mail.

Contributing

If you are interested in contributing to the project the first step should be to contact me so we can plan together the best approach, you can send an e-mail or just open an issue in this repo. For small bug fixes it is usually ok to open a PR directly.

Contributions are not restricted to coding; you can help the project by bringing new UI/UX ideas, designing new assets, writing manuals or tutorials, translating the apps, etc. If you are interested in DevOps, YACReader uses Azure Pipelines for CI/CD, any improvements in that area are welcome. Testing pre-releases is also really appreciated.

Dev Setup

YACReader is developed in c++/Qt, so the first thing you need to do is to install a C++ compiler or environment that supports at least C++17 and Qt. In Windows I use Visual Studio Community Edition 2019 as build system and in macos I use Xcode, but I do all the coding using QtCreator. The project is adding support to Qt6 and it already compiles under it but it is not ready to ship, so you need to make sure that everything works in both Qt5 and Qt6, you only need to install Qt5 for now and CI will check that everything builds with Qt6.

The repo includes binaries for the dependencies needed for Windows (MSVC compiler) and macos (clang) but you need to configure 7zip/p7zip dependency manually, please take a look at compressed_archive/README_7zip.txt.

Running and debugging

YACReader needs to find its dependencies at runtime, make sure that Qt binaries are in your PATH and the third-party binaries are next to the executable. The best way to make sure you have all the third-party binaries in place is to check YACReader installation and copy the binaries in your output folder.

If you have the time and the energy, please open a PR with a script that automatizes any of these manual processes.

Code Format

YACReader uses clang-format to ensure a common style and avoid deviances from it. CI checks this and will fail if the correct format is not used. clang-format needs to be called recursively in all the folders because some of them have their own .clang-format file, mainly to exclude changing the format in third-party libraries which are included in the source code. I recommend configuring your development tools to use clang-format, you can try to use it manually, but please, do it always before committing changes. I recommend using QtCreator configured properly, you can find a tutorial here.

CI/CD

Any PR will be validated through CI, and it will not be merged if CI fails.

Pull Requests

The base and target branch for any PR should always be develop.

Donations

YACReader is free but it needs money to keep being alive, so please, if you like YACReader, visit the home page and make a donation.

Hacktoberfest

If you are interested in YACReader, please contact me so we can discuss your next steps.