Go to file
lambdcalculus ef1a8ddb92
More Linux integration (#1085)
* Add integration shell scripts for linux!

These shell scripts (one for appimage and one for dynamic) both should:
1: Move the program files to ~/.local/Attorney_Online
2: Create a .desktop file (which is what applications on Linux use to know to be interacted with) in the ~/.local/share/applications folder (where all other user applications tend to go), with at current a temporary logo until the logo file is parsed out from the xapplication window.
3: open the application, assuming the necessary dependencies are fulfilled
Dynamic required some further support due to the startup shell command working correctly when you click it manually, but struggling on the .desktop folder, so it has the additional step of recreating the current launch.sh command, which still functions if you go to the folder to click it, or if you open the program before integration to test things.

Both sh commands open AO2-Client at completion time. I hope this will help newer Linux users, or older Linux users who normally wouldn't bother, to bring AO into their normal day to day experience.

This has been tested on (by me):
Fedora 40 Workstation (Gnome)
Arch Linux KDE Plasma 6
Ubuntu Unity 24.10 aka Oracular Oriole
Debian 13 Trixie (Before it's freeze, marking date February 9th 2025)

Thank you for reading, have a wonderful day!

* linux CI tweaks

* remove the need for `launch.sh`
* add git hash as appimage version
* bit of reorganization

* add linux install scripts to CI

* tweak linux install scripts to add install scripts
* remove `launch.sh` (as per previous commit)
* add instructions in README_LINUX

* include icon in linux install

* fix install script

and fix typo

* add exec path to desktop files

* why would freedesktop.org do this to me

---------

Co-authored-by: OrioleNix <163466443+OrioleNix@users.noreply.github.com>
2025-03-17 10:32:11 +01:00
.github More Linux integration (#1085) 2025-03-17 10:32:11 +01:00
android 2.10.1 Changes (#888) 2023-05-31 20:17:30 +02:00
bin Removed theme submodule, ... 2024-05-23 00:02:07 +02:00
data enable external links in server descriptions (#1059) 2024-12-13 09:44:30 +01:00
lib adjusted gitignore files 2018-12-26 18:11:08 +01:00
scripts More Linux integration (#1085) 2025-03-17 10:32:11 +01:00
src Fix crashes related to music list context menu (#1088) 2025-03-14 08:22:00 -05:00
test Clarified test message builder 2024-05-18 03:09:39 +02:00
.clang-format Ported to CMake, ... 2024-05-15 00:04:16 +02:00
.gitignore Universal configure script (#1022) 2024-07-31 13:40:43 +02:00
CMakeLists.txt V2.11.0 rc1 fixes (#1029) 2024-07-31 11:55:25 +02:00
configure.sh Update clone target in configure.sh (#1077) 2025-01-29 21:03:04 +01:00
data.qrc Add playerlist widget element (#996) 2024-07-12 11:48:01 +02:00
LICENSE.GPLv3 Relicense/dual-license under MIT 2018-03-15 20:38:58 -05:00
LICENSE.MIT Update readme and license 2018-12-06 14:38:02 -06:00
README_LINUX.md More Linux integration (#1085) 2025-03-17 10:32:11 +01:00
README.md Update readme content link (#1062) 2024-12-22 08:54:07 -06:00

Attorney Online

CI build license contributors

Attorney Online is a world-renowned courtroom drama simulator that allows you to create and play out cases in an off-the-cuff format.

Refer to the docs for more information.

Setting up for development

Prerequisites

Unix-like systems will expect a C toolchain, installed using eg.:

Ubuntu: sudo apt install build-essential
macOS: xcode-select --install

You may also need openGL libraries to compile QApng, eg:

Ubuntu: sudo apt install libgl1-mesa-dev
macOS: brew install glfw glew

Setup

This program's main dependency is Qt and the currently recommended version for development is 6.5.3. See this link on how to install Qt. You will need to check off the following under "Additional Libraries":

  • Qt Image formats
  • Qt WebSockets

Under "Developer and Designer tools", you may also want to check off:

  • CMake
  • Ninja
  • If you're on Windows, a toolchain (MinGW)

Assuming all this is in place, you should be able to run configure.sh to generate the necessary build files. This also compiles the program and shows a cmake command that can be used to recreate the build files.

Content

To test key features, you may need the vanilla base content, which is not included in this repository. You can get it from https://ao-dl.b-cdn.net/vanilla_full_2024_8_2.zip

This should be put in ./bin/base

Formatting

All code should be formatted according to the .clang-format file. This will be checked by CI and will fail if the code is not formatted correctly.

Running Tests

Running tests requires Catch2 and cmake

mkdir cbuild && cd cbuild
cmake ..
make test

# usage: run all tests
./test/test

# usage: Optionally specify tests and success verbosity
./test/test [bass] --success

[noci] tag is used to disable a test on GitHub actions

Credits

The original Attorney Online client was created by FanatSors.

This is an open-source remake of that client created by OmniTroid.

The logo (logo.png and logo.ico) was designed by Lucas Carbí. The characters depicted in the logo are owned by Capcom.

The project is dual-licensed; you are free to copy, modify and distribute AO2 under the GPLv3 or the MIT license.

Copyright (c) 2016-2018 OmniTroid

Modifications copyright (c) 2017-2018 oldmud0

Case Café additions copyright (c) 2018 Cerapter

Killing Fever Online additions copyright (c) 2019 Crystalwarrior

Contact

You can find us in the official Attorney Online Discord server: https://discord.gg/wWvQ3pw