diff --git a/data/defaults_instances/neoLegacy.lce_inst b/data/defaults_instances/neoLegacy.lce_inst index da51ab2..73d4b02 100644 --- a/data/defaults_instances/neoLegacy.lce_inst +++ b/data/defaults_instances/neoLegacy.lce_inst @@ -1,12 +1,12 @@ { "$schema": "https://raw.githubusercontent.com/xgui4/LCE-Qt-Launcher/refs/heads/dev/schemas/x-application-lce_inst_config.json", "name": "neoStudiosLCE neoLegacy", - "instance_source": "InstanceSource.GITHUB_RELEASE", + "instance_source": "InstanceSource.REMOTE_GIT_SOURCE", "image": ":/assets/neoLegacy.png", - "archive_file": "neoLegacyWindows64.zip", + "archive_file": "none", "exe_name": "neoLegacyWindows64/Minecraft.Client.exe", - "news_feed": "https://github.com/neoStudiosLCE/neoLegacy/commits/main/", + "news_feed": "https://git.minecraftlegacy.com/backups/neoLegacy/commits/main/", "installation_path": "{appInstancePath}/.neoLegacy", - "repo_url": "https://github.com/neoStudiosLCE/neoLegacy", - "version": "Nightly" -} + "repo_url": "https://git.minecraftlegacy.com/backups/neoLegacy", + "version": "master" +} \ No newline at end of file diff --git a/lisezmoi.md b/lisezmoi.md index eed0ed6..fc96177 100644 --- a/lisezmoi.md +++ b/lisezmoi.md @@ -15,7 +15,7 @@ ## -> [!INFORMATION] +> [!NOTE] > La mise à jour et l'installation automatiques des fichiers du jeu sont instables et non viables. Il est recommandé d'avoir déjà installé le jeu. En effet, le mécanisme d'installation et de mise à jour nécessite un dépôt externe qui peut être fermé sans préavis. Je fais de mon mieux et les versions de développement sont généralement à jour, mais la version stable est parfois en retard et nécessite une intervention manuelle. ## À propos diff --git a/readme.md b/readme.md index 0c04af2..8335034 100644 --- a/readme.md +++ b/readme.md @@ -15,10 +15,10 @@ ## -> [!INFORMATION] +> [!NOTE] > The auto-update and installation of the game files is unstable and unviable, it is recommnend to have the game file already installation > as the installation and update mechanism require external repo that can be shutdown without previous notice. I do my best and the nightly build are often -> uptodae but the stable version sometime lack behind and require manual intervention. +> up to date but the stable version sometime lack behind and require manual intervention. ## About diff --git a/src/form.ui b/src/form.ui index 1a0e0c2..358ebbe 100644 --- a/src/form.ui +++ b/src/form.ui @@ -1124,7 +1124,7 @@ :/assets/neoLegacy.png:/assets/neoLegacy.png - Default (NeoLegacy) + NeoLegacy (Source Code) @@ -1133,7 +1133,7 @@ :/assets/mclce-ico.png:/assets/mclce-ico.png - MCLCE MinecraftConsoles + MCLCE MinecraftConsoles (Source Code) diff --git a/src/lce_qt_launcher/managers/instance_manager.py b/src/lce_qt_launcher/managers/instance_manager.py index 4d80cfb..b8bb592 100644 --- a/src/lce_qt_launcher/managers/instance_manager.py +++ b/src/lce_qt_launcher/managers/instance_manager.py @@ -83,17 +83,18 @@ def from_str_to_InstanceSource(string: str) -> InstanceSource: case _: raise RuntimeError(f"{string} is an Incorrect InstanceSource Type") + _DEFAULT_INST_NAME = "Default" _DEFAULT_INSTALLATION_PATH = "{appInstancePath}/default" _DEFAULT_USERNAME = "Steve" -_DEFAULT_ARCHIVE_FILE = "neoLegacyWindows64.zip" +_DEFAULT_ARCHIVE_FILE = "none" _DEFAULT_EXE_NAME = "neoLegacyWindows64/Minecraft.Client.exe" -_DEFAULT_REPO_URL = "https://github.com/neoStudiosLCE/neoLegacy" -_DEFAULT_INST_SOURCE = InstanceSource.GITHUB_RELEASE -_DEFAULT_INST_SOURCE_STRING = "InstanceSource.GITHUB_RELEASE" -_DEFAULT_IMAGE = ":/assets/minecrft.png" -_DEFAULT_NEWS_FEED = ":/websites/instance_news.html" -_DEFAULT_VERSION = "Nightly" +_DEFAULT_REPO_URL = "https://git.minecraftlegacy.com/backups/neoLegacy" +_DEFAULT_INST_SOURCE = InstanceSource.REMOTE_GIT_SOURCE +_DEFAULT_INST_SOURCE_STRING = "InstanceSource.REMOTE_GIT_SOURCE" +_DEFAULT_IMAGE = ":/assets/minecraft.png" +_DEFAULT_NEWS_FEED = "https://git.minecraftlegacy.com/backups/neoLegacy/commits/main/" +_DEFAULT_VERSION = "master" class Instance(QObject): @@ -142,7 +143,7 @@ class Instance(QObject): self.archive_file = inst_dict.get("archive_file", _DEFAULT_ARCHIVE_FILE) self.repo_url = inst_dict.get("repo_url", _DEFAULT_REPO_URL) self.instance_source = from_str_to_InstanceSource( - inst_dict.get("instances_source", _DEFAULT_INST_SOURCE_STRING) + inst_dict.get("instance_source", _DEFAULT_INST_SOURCE_STRING) ) self.image = inst_dict.get("image", _DEFAULT_IMAGE) self.news_feed = inst_dict.get("news_feed", _DEFAULT_NEWS_FEED) @@ -199,17 +200,17 @@ class Instance(QObject): def display(self) -> None: term_service.print_pretty(f""" -[bold yellow]Name : {self.name} -=============================[/bold yellow] +[bold yellow]Name : "{self.name}"[/bold yellow] +============================= [bold yellow]installation path[/bold yellow] : {self.installation_path} -[bold yellow]username[/bold yellow] : {self.username} +[bold yellow]username[/bold yellow] : "{self.username}" [bold yellow]executable name[/bold yellow] : {self.exe_name} [bold yellow]archive file[/bold yellow] : {self.archive_file} [bold yellow]repo url[/bold yellow] : {self.repo_url} [bold yellow]image[/bold yellow] : {self.image} -[bold yellow]instance source[/bold yellow] : {self.instance_source.value} +[bold yellow]instance source[/bold yellow] : "{self.instance_source.value}" [bold yellow]news_feed[/bold yellow] : {self.news_feed} -[bold yellow]version[/bold yellow] : {self.version} +[bold yellow]version[/bold yellow] : "{self.version}" [bold yellow]steam link[/bold yellow] : {self.steam_link} """) diff --git a/src/lce_qt_launcher/views/launcher.py b/src/lce_qt_launcher/views/launcher.py index 0e35d91..fc90000 100644 --- a/src/lce_qt_launcher/views/launcher.py +++ b/src/lce_qt_launcher/views/launcher.py @@ -298,8 +298,7 @@ class LauncherView(QMainWindow): self.ui.actionReport_a_Bugs_or_Sugess_a_feature.triggered.connect(openGitHubIssuesCommand) self.ui.actionLoadDefaultInstance.triggered.connect(loadDefaultInstanceCommand) - self.ui.actionLoadmclceInstance.setEnabled(False) - self.ui.actionLoadmclceInstance.setText("MCLCE Source Code Backup (Remote Git Not supported yet)") + self.ui.actionLoadmclceInstance.setText("MCLCE Source Code Backup") mclceJson = QFile(":/instances/mclce.lce_inst") if not mclceJson.open(QIODevice.OpenModeFlag.ReadOnly): @@ -340,6 +339,19 @@ class LauncherView(QMainWindow): lambda: self.loadInstanceData(data_aether, instanceManager, appContext) ) + mclceJson = QFile(":/instances/mclce.lce_inst") + if not mclceJson.open(QIODevice.OpenModeFlag.ReadOnly): + term_service.print_error("Cannot found or open MCLCE Instance") + self.ui.actionLoadmclceInstance.setEnabled(False) + return None + else: + raw_text_mcleJson = bytes(mclceJson.readAll().data()).decode("utf-8") + data_mclce = json.loads(raw_text_mcleJson) + + self.ui.actionLoadAetherInstance.triggered.connect( + lambda: self.loadInstanceData(data_mclce, instanceManager, appContext) + ) + self.setup_web_engine() self.versionLabel: QLabel = QLabel(f"Version {version_type_str} {version_str}") diff --git a/www/assets/favicon.png b/www/assets/favicon.png new file mode 100644 index 0000000..e6210fe Binary files /dev/null and b/www/assets/favicon.png differ diff --git a/www/css/style.css b/www/css/style.css new file mode 100644 index 0000000..dcce90a --- /dev/null +++ b/www/css/style.css @@ -0,0 +1,46 @@ +:root { + --clr-primary : #f8f8f2; + --clr-title : #ff79c6; + --clr-subtitle: #f1fa8c; + --clr-bg: #282a36; + --clr-menu-link: #8be9fd; + --clr-slate: #f8f8f2; + --clr-green: #50fa7b; + --clr-error: #ff5555; +} + +body { + background-color: var(--clr-bg); + color : var(--clr-primary); + font-family: "Hack Nerd Font"; +} + +a { + color : var(--clr-menu-link) +} + +.navbar .nav-link { + margin: 20px; + text-decoration: none; +} + +.active{ + color: var(--clr-slate); + text-decoration: solid; +} + +md-block { + color : var(--clr-slate); +} + +h1 { + color : var(--clr-title); +} + +h2 { + color : var(--clr-subtitle); +} + +h3 { + color : var(--clr-green); +} \ No newline at end of file diff --git a/www/download.html b/www/download.html new file mode 100644 index 0000000..1d84ccd --- /dev/null +++ b/www/download.html @@ -0,0 +1,74 @@ + + + + + + + + Download Center + + +
+ +
+
+

LCE Qt Launcher - Download Center

+ +

Compiling

+ +

See docs/en/COMPILING.md

+ +

Running/Debugging

+ +

See docs/en/RUNNING.md

+ +

How to get

+ +

Tag Release

+ +

In the GitHub Release page of this repo page you + will found tagged Release like Beta + 0.0.1.1.

+ +

Flatpak (Coming Soon)

+ +

Coming Soon (Delayed due to technical issues)

+ +

FreeBSD Port (Experimental)

+ +

See my FreeBSD Port Overlay to installing + games/lce-qt-laucher (py{python version}-lce-qt-launcher) port.

+ +

Nigthly Build

+ +
+

[!NOTE]
+ This branch is not stable and changes are made almost daily so this branch can sometimes break. Also, MacOS + is not avaiable in the Nigthly Build due to Apple restriction and that I do now own a mac.

+
+ +

In this GitHub Release page you will + found Nighly Build which are made automatically via GitHub Action when change are made in the dev branch

+ +

AppImage and Others Linux Packages

+ +

Aavailable in nightly build and + tagged version (Coming soon!) (Note : currently the AppImage and Arch Package atomatic build is broken)

+ +

Via Git

+ +

You can also, downloading this repo with the command + git clone https://github.com/xgui4/lce-qt-launcher.git and then compiling (see + docs/en/COMPILING.md for more info how) anually or running in a .venv (see + docs/en/RUNNING.md for more info how).

+
+ + \ No newline at end of file diff --git a/www/index.html b/www/index.html index a03cd30..d19ca42 100644 --- a/www/index.html +++ b/www/index.html @@ -1,11 +1,255 @@ + + + LCE Qt Launcher - Home + - +
+ +
+
+

LCE Qt Launcher

+

French Version

+

Screnshot of the launcher in version 0.0.20a0 of the launcher)

+ + + +
+

[!WARNING]
+ This launcher is work in progress and its feature could be changes or remove at any time.
+ PR are more than welcome to fix or add features. Just be compliant with the GPLv3 + license and the Code of Respect

+
+ +

+ +
+

[!INFORMATION]
+ The auto-update and installation of the game files is unstable and unviable, it is recommnend to have + the + game file already installation
+ as the installation and update mechanism require external repo that can be shutdown without previous + notice. + I do my best and the nightly build are often
+ uptodae but the stable version sometime lack behind and require manual intervention.

+
+ +

About

+ +

This is a custom Minecraft LCE Launcher written with PySide6 (Qt6 for Python) with Freedom and with GNU/Linux + support in mind.

+ +

Why LCE Qt Launcher ?

+ + + +

Features

+ + + +

Long Term Goal / Roadmap

+ + + +

Software Requirement

+ + + +

Software recommendations

+ + + +

Python Library and Tools Used

+ + + +

Compatible Operating System

+ +

Golden Support

+ +
+

[!NOTE]
+ Platform Tested Regurlaly and with completed implemation/patch

+
+ + + +

Experimental Support

+ +
+

[!NOTE]
+ Plattform tested with work in progress implemation

+
+ + + +

Upcoming Platform

+ +
+

[!NOTE]
+ Platform not tested yet, but with implementation

+
+ + + +

Unsupported OS

+ +
+

[!NOTE]
+ These platform are not tested and may work or not at all

+
+ + + +

Special Thank to

+ + + +

Code of Respect

+ + + +

License

+ +

GPLV3

+
+ \ No newline at end of file diff --git a/www/instance_news.html b/www/instance_news.html index fcb8e1e..c1e2650 100644 --- a/www/instance_news.html +++ b/www/instance_news.html @@ -3,9 +3,14 @@ - Default Instance News + + + LCE Qt Launcher - Default Instance News -

This Repo was recently dmca, you must have the files or use a other instance like revelation

+
+

NeoLegacy was the default instance but is no longer avalaible

+

as it was dmca, so news are not available, but can still be launched if already installed

+
\ No newline at end of file diff --git a/www/marketplace.html b/www/marketplace.html index 07681ad..13264ca 100644 --- a/www/marketplace.html +++ b/www/marketplace.html @@ -3,9 +3,22 @@ - Marketplace + + + LCE Qt Launcher - Marketplace - +
+ +
+
+
\ No newline at end of file diff --git a/www/news.html b/www/news.html new file mode 100644 index 0000000..7b063ba --- /dev/null +++ b/www/news.html @@ -0,0 +1,25 @@ + + + + + + + + LCE Qt Launcher - News + + +
+ +
+
+ +
+ + \ No newline at end of file diff --git a/www/skins.html b/www/skins.html index 000cfc2..332ef36 100644 --- a/www/skins.html +++ b/www/skins.html @@ -3,9 +3,23 @@ - Skin Manager/Viewer + + + LCE Qt Launcher - Skin Manager/Viewer +
+ +
+
+
\ No newline at end of file