Compare commits
17 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
882ed55cc6 | ||
|
|
7bbb9e564d | ||
|
|
ad7084410c | ||
|
|
ea0ecf4fb4 | ||
|
|
893b290a1e | ||
|
|
49769b7083 | ||
|
|
5fadaf8537 | ||
|
|
e804f8192e | ||
|
|
1311c53c3e | ||
|
|
6f69344a16 | ||
|
|
63951d76ac | ||
|
|
c045ad1f53 | ||
|
|
8a1e00883c | ||
|
|
620a094ff0 | ||
|
|
7b7232d741 | ||
|
|
4c1af9245f | ||
|
|
d05a03dee7 |
1
.github/ISSUE_TEMPLATE/bug_report.md
vendored
1
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@@ -26,6 +26,7 @@ If applicable, add screenshots to help explain your problem.
|
|||||||
**System (please complete the following information):**
|
**System (please complete the following information):**
|
||||||
- OS: [e.g. Fedora Linux]
|
- OS: [e.g. Fedora Linux]
|
||||||
- Installation method [e.g. Flatpak]
|
- Installation method [e.g. Flatpak]
|
||||||
|
- Cartridges version [e.g. 1.5.4]
|
||||||
|
|
||||||
**Additional context**
|
**Additional context**
|
||||||
Add any other context about the problem here.
|
Add any other context about the problem here.
|
||||||
|
|||||||
4
.github/workflows/flatpak-builder.yml
vendored
4
.github/workflows/flatpak-builder.yml
vendored
@@ -14,6 +14,6 @@ jobs:
|
|||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
- uses: flatpak/flatpak-github-actions/flatpak-builder@v6
|
- uses: flatpak/flatpak-github-actions/flatpak-builder@v6
|
||||||
with:
|
with:
|
||||||
bundle: hu.kramo.Cartridges.flatpak
|
bundle: hu.kramo.Cartridges.Devel.flatpak
|
||||||
manifest-path: hu.kramo.Cartridges.json
|
manifest-path: flatpak/hu.kramo.Cartridges.Devel.json
|
||||||
cache-key: flatpak-builder-${{ github.sha }}
|
cache-key: flatpak-builder-${{ github.sha }}
|
||||||
|
|||||||
4
.github/workflows/windows.yml
vendored
4
.github/workflows/windows.yml
vendored
@@ -24,9 +24,9 @@ jobs:
|
|||||||
pacman --noconfirm -Rs mingw-w64-ucrt-x86_64-desktop-file-utils mingw-w64-ucrt-x86_64-meson git
|
pacman --noconfirm -Rs mingw-w64-ucrt-x86_64-desktop-file-utils mingw-w64-ucrt-x86_64-meson git
|
||||||
find /ucrt64/share/locale/ -type f ! -name "*cartridges.mo" -delete
|
find /ucrt64/share/locale/ -type f ! -name "*cartridges.mo" -delete
|
||||||
- name: "Inno Setup"
|
- name: "Inno Setup"
|
||||||
run: iscc ".\.windows\Cartridges.iss"
|
run: iscc ".\windows\Cartridges.iss"
|
||||||
- name: "Upload Artifact"
|
- name: "Upload Artifact"
|
||||||
uses: actions/upload-artifact@v3
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: "Installer"
|
name: "Installer"
|
||||||
path: ".windows/Output/Cartridges Setup.exe"
|
path: "windows/Output/Cartridges Setup.exe"
|
||||||
@@ -53,15 +53,12 @@ For updates and questions, join our [Discord server][discord-url]!
|
|||||||
|
|
||||||
## Linux
|
## Linux
|
||||||
|
|
||||||
### Flathub (Recommended)
|
### Flathub
|
||||||
|
|
||||||
|
The app is available on Flathub.
|
||||||
|
|
||||||
<a href=https://flathub.org/apps/hu.kramo.Cartridges><img width='240' alt='Download on Flathub' src='https://dl.flathub.org/assets/badges/flathub-badge-en.png'/></a>
|
<a href=https://flathub.org/apps/hu.kramo.Cartridges><img width='240' alt='Download on Flathub' src='https://dl.flathub.org/assets/badges/flathub-badge-en.png'/></a>
|
||||||
|
|
||||||
### From Releases
|
|
||||||
|
|
||||||
1. Download the latest release from [Releases](https://github.com/kra-mo/cartridges/releases).
|
|
||||||
2. Install the downloaded file via GNOME Software or `flatpak install hu.kramo.Cartridges.flatpak`.
|
|
||||||
|
|
||||||
## Windows
|
## Windows
|
||||||
|
|
||||||
### From Releases
|
### From Releases
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<gresources>
|
<gresources>
|
||||||
<gresource prefix="/hu/kramo/Cartridges">
|
<gresource prefix="@PREFIX@">
|
||||||
<file preprocess="xml-stripblanks">gtk/window.ui</file>
|
<file preprocess="xml-stripblanks">gtk/window.ui</file>
|
||||||
<file preprocess="xml-stripblanks">gtk/help-overlay.ui</file>
|
<file preprocess="xml-stripblanks">gtk/help-overlay.ui</file>
|
||||||
<file preprocess="xml-stripblanks">gtk/game.ui</file>
|
<file preprocess="xml-stripblanks">gtk/game.ui</file>
|
||||||
@@ -18,7 +18,6 @@ Adw.StatusPage hidden_notice_no_results {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Adw.StatusPage notice_empty {
|
Adw.StatusPage notice_empty {
|
||||||
icon-name: "hu.kramo.Cartridges-symbolic";
|
|
||||||
title: _("No Games");
|
title: _("No Games");
|
||||||
description: _("Use the + button to add games.");
|
description: _("Use the + button to add games.");
|
||||||
vexpand: true;
|
vexpand: true;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ Name=Cartridges
|
|||||||
GenericName=Game Launcher
|
GenericName=Game Launcher
|
||||||
Comment=Launch all your games
|
Comment=Launch all your games
|
||||||
Exec=cartridges
|
Exec=cartridges
|
||||||
Icon=hu.kramo.Cartridges
|
Icon=@APP_ID@
|
||||||
Terminal=false
|
Terminal=false
|
||||||
Type=Application
|
Type=Application
|
||||||
Categories=GNOME;GTK;Game;
|
Categories=GNOME;GTK;Game;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<schemalist gettext-domain="cartridges">
|
<schemalist gettext-domain="cartridges">
|
||||||
<schema id="hu.kramo.Cartridges" path="/hu/kramo/Cartridges/">
|
<schema id="@APP_ID@" path="@PREFIX@/">
|
||||||
<key name="exit-after-launch" type="b">
|
<key name="exit-after-launch" type="b">
|
||||||
<default>false</default>
|
<default>false</default>
|
||||||
</key>
|
</key>
|
||||||
@@ -68,7 +68,7 @@
|
|||||||
<default>false</default>
|
<default>false</default>
|
||||||
</key>
|
</key>
|
||||||
</schema>
|
</schema>
|
||||||
<schema id="hu.kramo.Cartridges.State" path="/hu/kramo/Cartridges/State/">
|
<schema id="@APP_ID@.State" path="@PREFIX@/State/">
|
||||||
<key name="width" type="i">
|
<key name="width" type="i">
|
||||||
<default>1110</default>
|
<default>1110</default>
|
||||||
</key>
|
</key>
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<component type="desktop-application">
|
<component type="desktop-application">
|
||||||
<id>hu.kramo.Cartridges.desktop</id>
|
<id>@APP_ID@.desktop</id>
|
||||||
<metadata_license>CC0-1.0</metadata_license>
|
<metadata_license>CC0-1.0</metadata_license>
|
||||||
<project_license>GPL-3.0-or-later</project_license>
|
<project_license>GPL-3.0-or-later</project_license>
|
||||||
<name>Cartridges</name>
|
<name>Cartridges</name>
|
||||||
@@ -15,7 +15,7 @@
|
|||||||
<url type="vcs-browser">https://github.com/kra-mo/cartridges</url>
|
<url type="vcs-browser">https://github.com/kra-mo/cartridges</url>
|
||||||
<url type="contribute">https://github.com/kra-mo/cartridges/blob/main/CONTRIBUTING.md</url>
|
<url type="contribute">https://github.com/kra-mo/cartridges/blob/main/CONTRIBUTING.md</url>
|
||||||
<developer_name translatable="no">kramo</developer_name>
|
<developer_name translatable="no">kramo</developer_name>
|
||||||
<launchable type="desktop-id">hu.kramo.Cartridges.desktop</launchable>
|
<launchable type="desktop-id">@APP_ID@.desktop</launchable>
|
||||||
<supports>
|
<supports>
|
||||||
<control>pointing</control>
|
<control>pointing</control>
|
||||||
<control>keyboard</control>
|
<control>keyboard</control>
|
||||||
@@ -44,11 +44,10 @@
|
|||||||
</screenshots>
|
</screenshots>
|
||||||
<content_rating type="oars-1.1" />
|
<content_rating type="oars-1.1" />
|
||||||
<releases>
|
<releases>
|
||||||
<release version="1.5.2" date="2023-05-27">
|
<release version="1.5.6" date="2023-06-19">
|
||||||
<description translatable="no">
|
<description translatable="no">
|
||||||
<ul>
|
<ul>
|
||||||
<li>Fixes the app icon not displaying on the XFCE panel</li>
|
<li>Fixes an issue with importing Bottles games without covers</li>
|
||||||
<li>Fixes a bug with the Steam API</li>
|
|
||||||
<li>Translations since 1.5</li>
|
<li>Translations since 1.5</li>
|
||||||
</ul>
|
</ul>
|
||||||
</description>
|
</description>
|
||||||
|
|||||||
@@ -0,0 +1,85 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<linearGradient id="a" gradientUnits="userSpaceOnUse" x1="9" x2="119" y1="115" y2="115">
|
||||||
|
<stop offset="0" stop-color="#613583"/>
|
||||||
|
<stop offset="0.05" stop-color="#9141ac"/>
|
||||||
|
<stop offset="0.22" stop-color="#613583"/>
|
||||||
|
<stop offset="0.78" stop-color="#613583"/>
|
||||||
|
<stop offset="0.95" stop-color="#9141ac"/>
|
||||||
|
<stop offset="1" stop-color="#613583"/>
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient id="b" gradientUnits="userSpaceOnUse" x1="45" x2="45" y1="50" y2="82">
|
||||||
|
<stop offset="0" stop-color="#bdd0d5"/>
|
||||||
|
<stop offset="1" stop-color="#305749"/>
|
||||||
|
</linearGradient>
|
||||||
|
<clipPath id="c">
|
||||||
|
<rect height="128" width="128"/>
|
||||||
|
</clipPath>
|
||||||
|
<clipPath id="d">
|
||||||
|
<rect height="128" width="128"/>
|
||||||
|
</clipPath>
|
||||||
|
<filter id="e" height="100%" width="100%" x="0%" y="0%">
|
||||||
|
<feColorMatrix in="SourceGraphic" type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0"/>
|
||||||
|
</filter>
|
||||||
|
<mask id="f">
|
||||||
|
<g clip-path="url(#d)" filter="url(#e)">
|
||||||
|
<g clip-path="url(#c)">
|
||||||
|
<path d="m 111 29 h -94 c -4.417969 0 -8 3.582031 -8 8 v 70 c 0 4.417969 3.582031 8 8 8 h 94 c 4.417969 0 8 -3.582031 8 -8 v -70 c 0 -4.417969 -3.582031 -8 -8 -8 z m 0 0" fill="url(#a)"/>
|
||||||
|
<path d="m 111 29 h -94 c -4.417969 0 -8 3.679688 -8 8.222656 v 57.554688 c 0 4.539062 3.582031 8.222656 8 8.222656 h 94 c 4.417969 0 8 -3.679688 8 -8.222656 v -57.554688 c 0 -4.539062 -3.582031 -8.222656 -8 -8.222656 z m 0 0" fill="#c061cb"/>
|
||||||
|
<path d="m 84 42 h -40 c -2.210938 0 -4 1.789062 -4 4 v 40 c 0 2.210938 1.789062 4 4 4 h 40 c 2.210938 0 4 -1.789062 4 -4 v -40 c 0 -2.210938 -1.789062 -4 -4 -4 z m 0 0"/>
|
||||||
|
<path d="m 81 50 h -34 c -1.105469 0 -2 0.894531 -2 2 v 28 c 0 1.105469 0.894531 2 2 2 h 34 c 1.105469 0 2 -0.894531 2 -2 v -28 c 0 -1.105469 -0.894531 -2 -2 -2 z m 0 0" fill="url(#b)"/>
|
||||||
|
<path d="m 102 61 v -1 c 0 -2.761719 -2.238281 -5 -5 -5 s -5 2.238281 -5 5 v 1 c 0 2.761719 2.238281 5 5 5 s 5 -2.238281 5 -5 z m 12 -6 v -1 c 0 -2.761719 -2.238281 -5 -5 -5 s -5 2.238281 -5 5 v 1 c 0 2.761719 2.238281 5 5 5 s 5 -2.238281 5 -5 z m 0 0"/>
|
||||||
|
<path d="m 97 64 c 2.761719 0 5 -2.015625 5 -4.5 s -2.238281 -4.5 -5 -4.5 s -5 2.015625 -5 4.5 s 2.238281 4.5 5 4.5 z m 12 -6 c 2.761719 0 5 -2.015625 5 -4.5 s -2.238281 -4.5 -5 -4.5 s -5 2.015625 -5 4.5 s 2.238281 4.5 5 4.5 z m 0 0" fill="#3d3846"/>
|
||||||
|
<path d="m 29 56.5 c 0 -1.933594 -1.566406 -3.5 -3.5 -3.5 s -3.5 1.566406 -3.5 3.5 v 13 c 0 1.933594 1.566406 3.5 3.5 3.5 s 3.5 -1.566406 3.5 -3.5 z m 0 0"/>
|
||||||
|
<path d="m 33 58 h -15 c -1.65625 0 -3 1.34375 -3 3 v 2 c 0 1.65625 1.34375 3 3 3 h 15 c 1.65625 0 3 -1.34375 3 -3 v -2 c 0 -1.65625 -1.34375 -3 -3 -3 z m 0 0"/>
|
||||||
|
<path d="m 29 54.5 c 0 -1.933594 -1.566406 -3.5 -3.5 -3.5 s -3.5 1.566406 -3.5 3.5 v 13 c 0 1.933594 1.566406 3.5 3.5 3.5 s 3.5 -1.566406 3.5 -3.5 z m 0 0" fill="#3d3846"/>
|
||||||
|
<path d="m 33 58 h -15 c -1.65625 0 -3 1.34375 -3 3 s 1.34375 3 3 3 h 15 c 1.65625 0 3 -1.34375 3 -3 s -1.34375 -3 -3 -3 z m 0 0" fill="#3d3846"/>
|
||||||
|
<path d="m 71 109 c 0 -1.105469 0.894531 -2 2 -2 s 2 0.894531 2 2 s -0.894531 2 -2 2 s -2 -0.894531 -2 -2 z m 0 0"/>
|
||||||
|
<path d="m 71.0625 108.5 c 0.226562 0.882812 1.023438 1.503906 1.9375 1.503906 s 1.710938 -0.621094 1.9375 -1.503906 c 0.195312 0.757812 -0.066406 1.558594 -0.671875 2.050781 c -0.605469 0.492188 -1.445313 0.585938 -2.144531 0.242188 c -0.855469 -0.414063 -1.296875 -1.375 -1.058594 -2.292969 z m 0 0" fill="#9141ac"/>
|
||||||
|
<path d="m 66 107 h -10 c -1.105469 0 -2 0.894531 -2 2 s 0.894531 2 2 2 h 10 c 1.105469 0 2 -0.894531 2 -2 s -0.894531 -2 -2 -2 z m 0 0"/>
|
||||||
|
<path d="m 54.0625 108.5 c -0.152344 0.597656 -0.023438 1.234375 0.355469 1.726562 c 0.378906 0.488282 0.964843 0.773438 1.582031 0.773438 h 10 c 0.617188 0 1.203125 -0.285156 1.582031 -0.773438 c 0.378907 -0.492187 0.511719 -1.128906 0.355469 -1.726562 c -0.226562 0.882812 -1.023438 1.5 -1.9375 1.5 h -10 c -0.914062 0 -1.710938 -0.617188 -1.9375 -1.5 z m 0 0" fill="#9141ac"/>
|
||||||
|
<path d="m 110 74 h -14 c -0.550781 0 -1 0.449219 -1 1 s 0.449219 1 1 1 h 14 c 0.550781 0 1 -0.449219 1 -1 s -0.449219 -1 -1 -1 z m 0 5 h -14 c -0.550781 0 -1 0.449219 -1 1 s 0.449219 1 1 1 h 14 c 0.550781 0 1 -0.449219 1 -1 s -0.449219 -1 -1 -1 z m 0 5 h -14 c -0.550781 0 -1 0.449219 -1 1 s 0.449219 1 1 1 h 14 c 0.550781 0 1 -0.449219 1 -1 s -0.449219 -1 -1 -1 z m 0 0" fill="#613583"/>
|
||||||
|
<path d="m 21.5 79 h -3 c -1.378906 0 -2.5 1.121094 -2.5 2.5 s 1.121094 2.5 2.5 2.5 h 3 c 1.378906 0 2.5 -1.121094 2.5 -2.5 s -1.121094 -2.5 -2.5 -2.5 z m 11 0 h -3 c -1.378906 0 -2.5 1.121094 -2.5 2.5 s 1.121094 2.5 2.5 2.5 h 3 c 1.378906 0 2.5 -1.121094 2.5 -2.5 s -1.121094 -2.5 -2.5 -2.5 z m 0 0"/>
|
||||||
|
<path d="m 22 79 h -4 c -1.105469 0 -2 0.894531 -2 2 s 0.894531 2 2 2 h 4 c 1.105469 0 2 -0.894531 2 -2 s -0.894531 -2 -2 -2 z m 11 0 h -4 c -1.105469 0 -2 0.894531 -2 2 s 0.894531 2 2 2 h 4 c 1.105469 0 2 -0.894531 2 -2 s -0.894531 -2 -2 -2 z m 0 0" fill="#3d3846"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</mask>
|
||||||
|
<mask id="g">
|
||||||
|
<g filter="url(#e)">
|
||||||
|
<rect fill-opacity="0.8" height="128" width="128"/>
|
||||||
|
</g>
|
||||||
|
</mask>
|
||||||
|
<linearGradient id="h" gradientTransform="matrix(0 0.37 -0.98462 0 295.38501 -30.360001)" gradientUnits="userSpaceOnUse" x1="300" x2="428" y1="235" y2="235">
|
||||||
|
<stop offset="0" stop-color="#f9f06b"/>
|
||||||
|
<stop offset="1" stop-color="#f5c211"/>
|
||||||
|
</linearGradient>
|
||||||
|
<clipPath id="i">
|
||||||
|
<rect height="128" width="128"/>
|
||||||
|
</clipPath>
|
||||||
|
<clipPath id="j">
|
||||||
|
<rect height="128" width="128"/>
|
||||||
|
</clipPath>
|
||||||
|
<path d="m 111 29 h -94 c -4.417969 0 -8 3.582031 -8 8 v 70 c 0 4.417969 3.582031 8 8 8 h 94 c 4.417969 0 8 -3.582031 8 -8 v -70 c 0 -4.417969 -3.582031 -8 -8 -8 z m 0 0" fill="url(#a)"/>
|
||||||
|
<path d="m 111 29 h -94 c -4.417969 0 -8 3.679688 -8 8.222656 v 57.554688 c 0 4.539062 3.582031 8.222656 8 8.222656 h 94 c 4.417969 0 8 -3.679688 8 -8.222656 v -57.554688 c 0 -4.539062 -3.582031 -8.222656 -8 -8.222656 z m 0 0" fill="#c061cb"/>
|
||||||
|
<path d="m 84 42 h -40 c -2.210938 0 -4 1.789062 -4 4 v 40 c 0 2.210938 1.789062 4 4 4 h 40 c 2.210938 0 4 -1.789062 4 -4 v -40 c 0 -2.210938 -1.789062 -4 -4 -4 z m 0 0"/>
|
||||||
|
<path d="m 81 50 h -34 c -1.105469 0 -2 0.894531 -2 2 v 28 c 0 1.105469 0.894531 2 2 2 h 34 c 1.105469 0 2 -0.894531 2 -2 v -28 c 0 -1.105469 -0.894531 -2 -2 -2 z m 0 0" fill="url(#b)"/>
|
||||||
|
<path d="m 102 61 v -1 c 0 -2.761719 -2.238281 -5 -5 -5 s -5 2.238281 -5 5 v 1 c 0 2.761719 2.238281 5 5 5 s 5 -2.238281 5 -5 z m 12 -6 v -1 c 0 -2.761719 -2.238281 -5 -5 -5 s -5 2.238281 -5 5 v 1 c 0 2.761719 2.238281 5 5 5 s 5 -2.238281 5 -5 z m 0 0"/>
|
||||||
|
<path d="m 97 64 c 2.761719 0 5 -2.015625 5 -4.5 s -2.238281 -4.5 -5 -4.5 s -5 2.015625 -5 4.5 s 2.238281 4.5 5 4.5 z m 12 -6 c 2.761719 0 5 -2.015625 5 -4.5 s -2.238281 -4.5 -5 -4.5 s -5 2.015625 -5 4.5 s 2.238281 4.5 5 4.5 z m 0 0" fill="#3d3846"/>
|
||||||
|
<path d="m 29 56.5 c 0 -1.933594 -1.566406 -3.5 -3.5 -3.5 s -3.5 1.566406 -3.5 3.5 v 13 c 0 1.933594 1.566406 3.5 3.5 3.5 s 3.5 -1.566406 3.5 -3.5 z m 0 0"/>
|
||||||
|
<path d="m 33 58 h -15 c -1.65625 0 -3 1.34375 -3 3 v 2 c 0 1.65625 1.34375 3 3 3 h 15 c 1.65625 0 3 -1.34375 3 -3 v -2 c 0 -1.65625 -1.34375 -3 -3 -3 z m 0 0"/>
|
||||||
|
<path d="m 29 54.5 c 0 -1.933594 -1.566406 -3.5 -3.5 -3.5 s -3.5 1.566406 -3.5 3.5 v 13 c 0 1.933594 1.566406 3.5 3.5 3.5 s 3.5 -1.566406 3.5 -3.5 z m 0 0" fill="#3d3846"/>
|
||||||
|
<path d="m 33 58 h -15 c -1.65625 0 -3 1.34375 -3 3 s 1.34375 3 3 3 h 15 c 1.65625 0 3 -1.34375 3 -3 s -1.34375 -3 -3 -3 z m 0 0" fill="#3d3846"/>
|
||||||
|
<path d="m 71 109 c 0 -1.105469 0.894531 -2 2 -2 s 2 0.894531 2 2 s -0.894531 2 -2 2 s -2 -0.894531 -2 -2 z m 0 0"/>
|
||||||
|
<path d="m 71.0625 108.5 c 0.226562 0.882812 1.023438 1.503906 1.9375 1.503906 s 1.710938 -0.621094 1.9375 -1.503906 c 0.195312 0.757812 -0.066406 1.558594 -0.671875 2.050781 c -0.605469 0.492188 -1.445313 0.585938 -2.144531 0.242188 c -0.855469 -0.414063 -1.296875 -1.375 -1.058594 -2.292969 z m 0 0" fill="#9141ac"/>
|
||||||
|
<path d="m 66 107 h -10 c -1.105469 0 -2 0.894531 -2 2 s 0.894531 2 2 2 h 10 c 1.105469 0 2 -0.894531 2 -2 s -0.894531 -2 -2 -2 z m 0 0"/>
|
||||||
|
<path d="m 54.0625 108.5 c -0.152344 0.597656 -0.023438 1.234375 0.355469 1.726562 c 0.378906 0.488282 0.964843 0.773438 1.582031 0.773438 h 10 c 0.617188 0 1.203125 -0.285156 1.582031 -0.773438 c 0.378907 -0.492187 0.511719 -1.128906 0.355469 -1.726562 c -0.226562 0.882812 -1.023438 1.5 -1.9375 1.5 h -10 c -0.914062 0 -1.710938 -0.617188 -1.9375 -1.5 z m 0 0" fill="#9141ac"/>
|
||||||
|
<path d="m 110 74 h -14 c -0.550781 0 -1 0.449219 -1 1 s 0.449219 1 1 1 h 14 c 0.550781 0 1 -0.449219 1 -1 s -0.449219 -1 -1 -1 z m 0 5 h -14 c -0.550781 0 -1 0.449219 -1 1 s 0.449219 1 1 1 h 14 c 0.550781 0 1 -0.449219 1 -1 s -0.449219 -1 -1 -1 z m 0 5 h -14 c -0.550781 0 -1 0.449219 -1 1 s 0.449219 1 1 1 h 14 c 0.550781 0 1 -0.449219 1 -1 s -0.449219 -1 -1 -1 z m 0 0" fill="#613583"/>
|
||||||
|
<path d="m 21.5 79 h -3 c -1.378906 0 -2.5 1.121094 -2.5 2.5 s 1.121094 2.5 2.5 2.5 h 3 c 1.378906 0 2.5 -1.121094 2.5 -2.5 s -1.121094 -2.5 -2.5 -2.5 z m 11 0 h -3 c -1.378906 0 -2.5 1.121094 -2.5 2.5 s 1.121094 2.5 2.5 2.5 h 3 c 1.378906 0 2.5 -1.121094 2.5 -2.5 s -1.121094 -2.5 -2.5 -2.5 z m 0 0"/>
|
||||||
|
<path d="m 22 79 h -4 c -1.105469 0 -2 0.894531 -2 2 s 0.894531 2 2 2 h 4 c 1.105469 0 2 -0.894531 2 -2 s -0.894531 -2 -2 -2 z m 11 0 h -4 c -1.105469 0 -2 0.894531 -2 2 s 0.894531 2 2 2 h 4 c 1.105469 0 2 -0.894531 2 -2 s -0.894531 -2 -2 -2 z m 0 0" fill="#3d3846"/>
|
||||||
|
<g clip-path="url(#j)" mask="url(#f)">
|
||||||
|
<g clip-path="url(#i)" mask="url(#g)">
|
||||||
|
<path d="m 128 80.640625 v 47.359375 h -128 v -47.359375 z m 0 0" fill="url(#h)"/>
|
||||||
|
<path d="m 13.308594 80.640625 l 47.355468 47.359375 h 21.214844 l -47.359375 -47.359375 z m 42.421875 0 l 47.363281 47.359375 h 21.214844 l -47.363282 -47.359375 z m 42.429687 0 l 29.839844 29.839844 v -21.210938 l -8.628906 -8.628906 z m -98.160156 7.90625 v 21.214844 l 18.238281 18.238281 h 21.214844 z m 0 0"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 10 KiB |
@@ -0,0 +1,3 @@
|
|||||||
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M3 3C1.89543 3 1 3.89543 1 5V11C1 12.1046 1.89543 13 3 13H13C14.1046 13 15 12.1046 15 11V5C15 3.89543 14.1046 3 13 3H3ZM6 5C5.44772 5 5 5.44772 5 6V10C5 10.5523 5.44772 11 6 11H10C10.5523 11 11 10.5523 11 10V6C11 5.44772 10.5523 5 10 5H6ZM12 8C12 7.44772 12.4477 7 13 7C13.5523 7 14 7.44772 14 8C14 8.55228 13.5523 9 13 9C12.4477 9 12 8.55228 12 8ZM3 7C2.44772 7 2 7.44772 2 8C2 8.55228 2.44772 9 3 9C3.55228 9 4 8.55228 4 8C4 7.44772 3.55228 7 3 7Z" fill="black"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 618 B |
@@ -1,13 +1,11 @@
|
|||||||
application_id = 'hu.kramo.Cartridges'
|
|
||||||
|
|
||||||
scalable_dir = join_paths('hicolor', 'scalable', 'apps')
|
scalable_dir = join_paths('hicolor', 'scalable', 'apps')
|
||||||
install_data(
|
install_data(
|
||||||
join_paths(scalable_dir, ('@0@.svg').format(application_id)),
|
join_paths(scalable_dir, ('@0@.svg').format(app_id)),
|
||||||
install_dir: join_paths(get_option('datadir'), 'icons', scalable_dir)
|
install_dir: join_paths(get_option('datadir'), 'icons', scalable_dir)
|
||||||
)
|
)
|
||||||
|
|
||||||
symbolic_dir = join_paths('hicolor', 'symbolic', 'apps')
|
symbolic_dir = join_paths('hicolor', 'symbolic', 'apps')
|
||||||
install_data(
|
install_data(
|
||||||
join_paths(symbolic_dir, ('@0@-symbolic.svg').format(application_id)),
|
join_paths(symbolic_dir, ('@0@-symbolic.svg').format(app_id)),
|
||||||
install_dir: join_paths(get_option('datadir'), 'icons', symbolic_dir)
|
install_dir: join_paths(get_option('datadir'), 'icons', symbolic_dir)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -11,7 +11,11 @@ blueprints = custom_target('blueprints',
|
|||||||
)
|
)
|
||||||
|
|
||||||
gnome.compile_resources('cartridges',
|
gnome.compile_resources('cartridges',
|
||||||
'cartridges.gresource.xml',
|
configure_file(
|
||||||
|
input: 'cartridges.gresource.xml.in',
|
||||||
|
output: 'cartridges.gresource.xml',
|
||||||
|
configuration: conf
|
||||||
|
),
|
||||||
gresource_bundle: true,
|
gresource_bundle: true,
|
||||||
install: true,
|
install: true,
|
||||||
install_dir: pkgdatadir,
|
install_dir: pkgdatadir,
|
||||||
@@ -19,8 +23,12 @@ gnome.compile_resources('cartridges',
|
|||||||
)
|
)
|
||||||
|
|
||||||
desktop_file = i18n.merge_file(
|
desktop_file = i18n.merge_file(
|
||||||
|
input: configure_file(
|
||||||
input: 'hu.kramo.Cartridges.desktop.in',
|
input: 'hu.kramo.Cartridges.desktop.in',
|
||||||
output: 'hu.kramo.Cartridges.desktop',
|
output: app_id + '.desktop.in',
|
||||||
|
configuration: conf
|
||||||
|
),
|
||||||
|
output: app_id + '.desktop',
|
||||||
type: 'desktop',
|
type: 'desktop',
|
||||||
po_dir: '../po',
|
po_dir: '../po',
|
||||||
install: true,
|
install: true,
|
||||||
@@ -33,8 +41,12 @@ if desktop_utils.found()
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
appstream_file = i18n.merge_file(
|
appstream_file = i18n.merge_file(
|
||||||
|
input: configure_file(
|
||||||
input: 'hu.kramo.Cartridges.metainfo.xml.in',
|
input: 'hu.kramo.Cartridges.metainfo.xml.in',
|
||||||
output: 'hu.kramo.Cartridges.metainfo.xml',
|
output: app_id + '.metainfo.xml.in',
|
||||||
|
configuration: conf
|
||||||
|
),
|
||||||
|
output: app_id + '.metainfo.xml',
|
||||||
po_dir: '../po',
|
po_dir: '../po',
|
||||||
install: true,
|
install: true,
|
||||||
install_dir: join_paths(get_option('datadir'), 'metainfo')
|
install_dir: join_paths(get_option('datadir'), 'metainfo')
|
||||||
@@ -45,7 +57,12 @@ if appstream_util.found()
|
|||||||
test('Validate appstream file', appstream_util, args: ['validate', appstream_file])
|
test('Validate appstream file', appstream_util, args: ['validate', appstream_file])
|
||||||
endif
|
endif
|
||||||
|
|
||||||
install_data('hu.kramo.Cartridges.gschema.xml',
|
install_data(
|
||||||
|
configure_file(
|
||||||
|
input: 'hu.kramo.Cartridges.gschema.xml.in',
|
||||||
|
output: app_id + '.gschema.xml',
|
||||||
|
configuration: conf
|
||||||
|
),
|
||||||
install_dir: join_paths(get_option('datadir'), 'glib-2.0/schemas')
|
install_dir: join_paths(get_option('datadir'), 'glib-2.0/schemas')
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"id" : "hu.kramo.Cartridges",
|
"id" : "hu.kramo.Cartridges.Devel",
|
||||||
"runtime" : "org.gnome.Platform",
|
"runtime" : "org.gnome.Platform",
|
||||||
"runtime-version" : "44",
|
"runtime-version" : "44",
|
||||||
"sdk" : "org.gnome.Sdk",
|
"sdk" : "org.gnome.Sdk",
|
||||||
@@ -117,10 +117,13 @@
|
|||||||
"name" : "cartridges",
|
"name" : "cartridges",
|
||||||
"builddir" : true,
|
"builddir" : true,
|
||||||
"buildsystem" : "meson",
|
"buildsystem" : "meson",
|
||||||
|
"config-opts": [
|
||||||
|
"-Dprofile=development"
|
||||||
|
],
|
||||||
"sources" : [
|
"sources" : [
|
||||||
{
|
{
|
||||||
"type" : "dir",
|
"type" : "dir",
|
||||||
"path" : "."
|
"path" : ".."
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
20
meson.build
20
meson.build
@@ -1,14 +1,32 @@
|
|||||||
project('cartridges',
|
project('cartridges',
|
||||||
version: '1.5.2',
|
version: '1.5.6',
|
||||||
meson_version: '>= 0.59.0',
|
meson_version: '>= 0.59.0',
|
||||||
default_options: [ 'warning_level=2', 'werror=false', ],
|
default_options: [ 'warning_level=2', 'werror=false', ],
|
||||||
)
|
)
|
||||||
|
|
||||||
i18n = import('i18n')
|
i18n = import('i18n')
|
||||||
gnome = import('gnome')
|
gnome = import('gnome')
|
||||||
|
python = import('python')
|
||||||
|
|
||||||
pkgdatadir = join_paths(get_option('prefix'), get_option('datadir'), meson.project_name())
|
pkgdatadir = join_paths(get_option('prefix'), get_option('datadir'), meson.project_name())
|
||||||
|
|
||||||
|
profile = get_option('profile')
|
||||||
|
if profile == 'development'
|
||||||
|
app_id = 'hu.kramo.Cartridges.Devel'
|
||||||
|
prefix = '/hu/kramo/Cartridges/Devel'
|
||||||
|
elif profile == 'release'
|
||||||
|
app_id = 'hu.kramo.Cartridges'
|
||||||
|
prefix = '/hu/kramo/Cartridges'
|
||||||
|
endif
|
||||||
|
|
||||||
|
conf = configuration_data()
|
||||||
|
conf.set('PYTHON', python.find_installation('python3').full_path())
|
||||||
|
conf.set('APP_ID', app_id)
|
||||||
|
conf.set('PREFIX', prefix)
|
||||||
|
conf.set('VERSION', meson.project_version())
|
||||||
|
conf.set('localedir', join_paths(get_option('prefix'), get_option('localedir')))
|
||||||
|
conf.set('pkgdatadir', pkgdatadir)
|
||||||
|
|
||||||
subdir('data')
|
subdir('data')
|
||||||
subdir('src')
|
subdir('src')
|
||||||
subdir('po')
|
subdir('po')
|
||||||
|
|||||||
9
meson_options.txt
Normal file
9
meson_options.txt
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
option(
|
||||||
|
'profile',
|
||||||
|
type: 'combo',
|
||||||
|
choices: [
|
||||||
|
'release',
|
||||||
|
'development',
|
||||||
|
],
|
||||||
|
value: 'release'
|
||||||
|
)
|
||||||
@@ -18,3 +18,4 @@ fa
|
|||||||
pl
|
pl
|
||||||
sv
|
sv
|
||||||
tr
|
tr
|
||||||
|
el
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
data/hu.kramo.Cartridges.desktop.in
|
data/hu.kramo.Cartridges.desktop.in
|
||||||
data/hu.kramo.Cartridges.gschema.xml
|
data/hu.kramo.Cartridges.gschema.xml.in
|
||||||
data/hu.kramo.Cartridges.metainfo.xml.in
|
data/hu.kramo.Cartridges.metainfo.xml.in
|
||||||
|
|
||||||
data/gtk/details_window.blp
|
data/gtk/details_window.blp
|
||||||
|
|||||||
577
po/el.po
Normal file
577
po/el.po
Normal file
@@ -0,0 +1,577 @@
|
|||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# Copyright (C) YEAR kramo
|
||||||
|
# This file is distributed under the same license as the Cartridges package.
|
||||||
|
# yiannis ioannides <sub@wai.ai>, 2023.
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: Cartridges\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
||||||
|
"PO-Revision-Date: 2023-05-29 18:48+0000\n"
|
||||||
|
"Last-Translator: yiannis ioannides <sub@wai.ai>\n"
|
||||||
|
"Language-Team: Greek <https://hosted.weblate.org/projects/cartridges/"
|
||||||
|
"cartridges/el/>\n"
|
||||||
|
"Language: el\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||||
|
"X-Generator: Weblate 4.18-dev\n"
|
||||||
|
|
||||||
|
#: data/hu.kramo.Cartridges.desktop.in:3
|
||||||
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:6 data/gtk/window.blp:48
|
||||||
|
#: src/main.py:109
|
||||||
|
msgid "Cartridges"
|
||||||
|
msgstr "Κασέτες"
|
||||||
|
|
||||||
|
#: data/hu.kramo.Cartridges.desktop.in:4
|
||||||
|
msgid "Game Launcher"
|
||||||
|
msgstr "Πρόγραμμα Εκκίνησης Παιχνιδιών"
|
||||||
|
|
||||||
|
#: data/hu.kramo.Cartridges.desktop.in:5
|
||||||
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:7
|
||||||
|
msgid "Launch all your games"
|
||||||
|
msgstr "Εκκινήστε όλα σας τα παιχνίδια"
|
||||||
|
|
||||||
|
#: data/hu.kramo.Cartridges.desktop.in:11
|
||||||
|
msgid "gaming;launcher;steam;lutris;heroic;bottles;itch;"
|
||||||
|
msgstr "gaming;εκκινητής;steam;lutris;heroic;bottles;itch;"
|
||||||
|
|
||||||
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:9
|
||||||
|
msgid ""
|
||||||
|
"Cartridges is a simple game launcher for all of your games. It has support "
|
||||||
|
"for importing games from Steam, Lutris, Heroic and more with no login "
|
||||||
|
"necessary. You can sort and hide games or download cover art from "
|
||||||
|
"SteamGridDB."
|
||||||
|
msgstr ""
|
||||||
|
"Οι Κασέτες είναι ένας απλός εκκινητής παιχνιδιών για όλα σας τα παιχνίδια. "
|
||||||
|
"Υποστηρίζει την εισαγωγή παιχνιδιών από το Steam, Heroic και άλλες "
|
||||||
|
"πλατφόρμες χωρίς σύνδεση να είναι απαραίτητη. Μπορείτε να ταξινομήσετε και "
|
||||||
|
"να κρύψετε τα παιχνίδια σας, καθώς και να κατεβάσετε τα εξώφυλλα τους από το "
|
||||||
|
"SteamGridDB."
|
||||||
|
|
||||||
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:30
|
||||||
|
msgid "Library"
|
||||||
|
msgstr "Βιβλιοθήκη"
|
||||||
|
|
||||||
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:34 src/details_window.py:66
|
||||||
|
msgid "Edit Game Details"
|
||||||
|
msgstr "Επεξεργασία Λεπτομερειών Παιχνιδιού"
|
||||||
|
|
||||||
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:38 data/gtk/window.blp:72
|
||||||
|
msgid "Game Details"
|
||||||
|
msgstr "Λεπτομέρειες Παιχνιδιού"
|
||||||
|
|
||||||
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:42 data/gtk/window.blp:417
|
||||||
|
#: src/utils/importer.py:92 src/utils/importer.py:124
|
||||||
|
#: src/utils/steamgriddb.py:115
|
||||||
|
msgid "Preferences"
|
||||||
|
msgstr "Προτιμήσεις"
|
||||||
|
|
||||||
|
#: data/gtk/details_window.blp:25
|
||||||
|
msgid "Cancel"
|
||||||
|
msgstr "Ακύρωση"
|
||||||
|
|
||||||
|
#: data/gtk/details_window.blp:57
|
||||||
|
msgid "New Cover"
|
||||||
|
msgstr "Νέο Εξώφυλλο"
|
||||||
|
|
||||||
|
#: data/gtk/details_window.blp:75
|
||||||
|
msgid "Delete Cover"
|
||||||
|
msgstr "Διαγραφή Εξώφυλλου"
|
||||||
|
|
||||||
|
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
||||||
|
#: data/gtk/game.blp:80
|
||||||
|
msgid "Title"
|
||||||
|
msgstr "Τίτλος"
|
||||||
|
|
||||||
|
#: data/gtk/details_window.blp:102
|
||||||
|
msgid "The title of the game"
|
||||||
|
msgstr "Τίτλος Παιχνιδιού"
|
||||||
|
|
||||||
|
#: data/gtk/details_window.blp:112 data/gtk/details_window.blp:117
|
||||||
|
msgid "Developer"
|
||||||
|
msgstr "Προγραμματιστής"
|
||||||
|
|
||||||
|
#: data/gtk/details_window.blp:113
|
||||||
|
msgid "The developer or publisher (optional)"
|
||||||
|
msgstr "Προγραμματιστής ή Εκδότης (προαιρετικό)"
|
||||||
|
|
||||||
|
#: data/gtk/details_window.blp:123 data/gtk/details_window.blp:153
|
||||||
|
msgid "Executable"
|
||||||
|
msgstr "Πρόγραμμα"
|
||||||
|
|
||||||
|
#: data/gtk/details_window.blp:124
|
||||||
|
msgid "File to open or command to run when launching the game"
|
||||||
|
msgstr "Αρχείο προς άνοιγμα ή εντολή προς εκτέλεση κατά την εκκίνηση παιχνιδιού"
|
||||||
|
|
||||||
|
#: data/gtk/details_window.blp:130
|
||||||
|
msgid "More Info"
|
||||||
|
msgstr "Περισσότερες Πληροφορίες"
|
||||||
|
|
||||||
|
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
||||||
|
msgid "Edit"
|
||||||
|
msgstr "Επεξεργασία"
|
||||||
|
|
||||||
|
#: data/gtk/game.blp:107 src/window.py:205
|
||||||
|
msgid "Hide"
|
||||||
|
msgstr "Απόκρυψη"
|
||||||
|
|
||||||
|
#: data/gtk/game.blp:112 data/gtk/game.blp:131 data/gtk/preferences.blp:56
|
||||||
|
#: data/gtk/window.blp:210
|
||||||
|
msgid "Remove"
|
||||||
|
msgstr "Αφαίρεση"
|
||||||
|
|
||||||
|
#: data/gtk/game.blp:126 src/window.py:207
|
||||||
|
msgid "Unhide"
|
||||||
|
msgstr "Φανέρωση"
|
||||||
|
|
||||||
|
#: data/gtk/help-overlay.blp:11 data/gtk/preferences.blp:9
|
||||||
|
msgid "General"
|
||||||
|
msgstr "Γενικά"
|
||||||
|
|
||||||
|
#: data/gtk/help-overlay.blp:14
|
||||||
|
msgid "Quit"
|
||||||
|
msgstr "Κλείσιμο"
|
||||||
|
|
||||||
|
#: data/gtk/help-overlay.blp:19 data/gtk/window.blp:218 data/gtk/window.blp:258
|
||||||
|
#: data/gtk/window.blp:324
|
||||||
|
msgid "Search"
|
||||||
|
msgstr "Εύρεση"
|
||||||
|
|
||||||
|
#: data/gtk/help-overlay.blp:24
|
||||||
|
msgid "Show preferences"
|
||||||
|
msgstr "Εμφάνιση προτιμήσεων"
|
||||||
|
|
||||||
|
#: data/gtk/help-overlay.blp:29
|
||||||
|
msgid "Shortcuts"
|
||||||
|
msgstr "Συντομεύσεις"
|
||||||
|
|
||||||
|
#: data/gtk/help-overlay.blp:34 src/game.py:169 src/preferences.py:98
|
||||||
|
msgid "Undo"
|
||||||
|
msgstr "Αναίρεση"
|
||||||
|
|
||||||
|
#: data/gtk/help-overlay.blp:39
|
||||||
|
msgid "Open menu"
|
||||||
|
msgstr "Άνοιγμα μενού"
|
||||||
|
|
||||||
|
#: data/gtk/help-overlay.blp:45
|
||||||
|
msgid "Games"
|
||||||
|
msgstr "Παιχνίδια"
|
||||||
|
|
||||||
|
#: data/gtk/help-overlay.blp:48
|
||||||
|
msgid "Add new game"
|
||||||
|
msgstr "Πρόσθεση νέου παιχνιδιού"
|
||||||
|
|
||||||
|
#: data/gtk/help-overlay.blp:53
|
||||||
|
msgid "Import games"
|
||||||
|
msgstr "Εισαγωγή παιχνιδιών"
|
||||||
|
|
||||||
|
#: data/gtk/help-overlay.blp:58
|
||||||
|
msgid "Show hidden games"
|
||||||
|
msgstr "Εμφάνιση κρυμμένων παιχνιδιών"
|
||||||
|
|
||||||
|
#: data/gtk/help-overlay.blp:63
|
||||||
|
msgid "Remove game"
|
||||||
|
msgstr "Αφαίρεση παιχνιδιού"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:13 data/gtk/preferences.blp:206
|
||||||
|
msgid "Behavior"
|
||||||
|
msgstr "Συμπεριφορά"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:16
|
||||||
|
msgid "Exit After Launching Games"
|
||||||
|
msgstr "Έξοδος μετά την εκκίνηση παιχνιδιών"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:25
|
||||||
|
msgid "Cover Image Launches Game"
|
||||||
|
msgstr "Εξώφυλλο εκκινεί το παιχνίδι"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:26
|
||||||
|
msgid "Swaps the behavior of the cover image and the play button"
|
||||||
|
msgstr "Αντικατάσταση συμπεριφοράς εξωφύλλου και του κουμπιού αναπαραγωγής"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:36 src/details_window.py:84
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Εικόνες"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:39
|
||||||
|
msgid "High Quality Images"
|
||||||
|
msgstr "Εικόνες Υψηλής Ποιότητας"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:40
|
||||||
|
msgid "Save game covers losslessly at the cost of storage"
|
||||||
|
msgstr ""
|
||||||
|
"Αποθήκευση εξωφύλλου παιχνιδιού σε υψηλή ευκρίνεια, με κόστος τη χωρητικότητα"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:50
|
||||||
|
msgid "Danger Zone"
|
||||||
|
msgstr "Επικίνδυνη Ζώνη"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:53
|
||||||
|
msgid "Remove All Games"
|
||||||
|
msgstr "Αφαίρεση Όλων Των Παιχνιδιών"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:69 data/gtk/window.blp:28 data/gtk/window.blp:443
|
||||||
|
msgid "Import"
|
||||||
|
msgstr "Εισαγωγή"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:73
|
||||||
|
msgid "Sources"
|
||||||
|
msgstr "Πηγές"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:76
|
||||||
|
msgid "Steam"
|
||||||
|
msgstr "Steam"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:80
|
||||||
|
msgid "Steam Install Location"
|
||||||
|
msgstr "Τοποθεσία Εγκατάστασης Steam"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:90
|
||||||
|
msgid "Lutris"
|
||||||
|
msgstr "Lutris"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:94
|
||||||
|
msgid "Lutris Install Location"
|
||||||
|
msgstr "Τοποθεσία Εγκατάστασης Lutris"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:103
|
||||||
|
msgid "Lutris Cache Location"
|
||||||
|
msgstr "Τοποθεσία cache του Lutris"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:112
|
||||||
|
msgid "Import Steam Games"
|
||||||
|
msgstr "Εισαγωγή Παιχνιδιών Steam"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:122
|
||||||
|
msgid "Heroic"
|
||||||
|
msgstr "Heroic"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:126
|
||||||
|
msgid "Heroic Install Location"
|
||||||
|
msgstr "Τοποθεσία Εγκατάστασης Heroic"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:135
|
||||||
|
msgid "Import Epic Games"
|
||||||
|
msgstr "Εισαγωγή Παιχνιδιών Epic"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:144
|
||||||
|
msgid "Import GOG Games"
|
||||||
|
msgstr "Εισαγωγή Παιχνιδιών GOG"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:153
|
||||||
|
msgid "Import Sideloaded Games"
|
||||||
|
msgstr "Εισαγωγή Παιχνιδιών Μέσω Sideloading"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:163
|
||||||
|
msgid "Bottles"
|
||||||
|
msgstr "Bottles"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:167
|
||||||
|
msgid "Bottles Install Location"
|
||||||
|
msgstr "Τοποθεσία Εγκατάστασης Bottles"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:177
|
||||||
|
msgid "itch"
|
||||||
|
msgstr "itch"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:181
|
||||||
|
msgid "itch Install Location"
|
||||||
|
msgstr "Τοποθεσία Εγκατάστασης itch"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:194
|
||||||
|
msgid "SteamGridDB"
|
||||||
|
msgstr "SteamGridDB"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:198
|
||||||
|
msgid "Authentication"
|
||||||
|
msgstr "Επιβεβαίωση"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:201
|
||||||
|
msgid "API Key"
|
||||||
|
msgstr "Κλειδί API"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:209
|
||||||
|
msgid "Use SteamGridDB"
|
||||||
|
msgstr "Χρήση SteamGridDB"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:210
|
||||||
|
msgid "Download images when adding or importing games"
|
||||||
|
msgstr "Λήψη εικόνων κατά τη διάρκεια πρόσθεσης ή εισαγωγής παιχνιδιών"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:219
|
||||||
|
msgid "Prefer Over Official Images"
|
||||||
|
msgstr "Προτίμηση Επίσημων Εικόνων"
|
||||||
|
|
||||||
|
#: data/gtk/preferences.blp:228
|
||||||
|
msgid "Prefer Animated Images"
|
||||||
|
msgstr "Προτίμηση Κινούμενων Εικόνων"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:6 data/gtk/window.blp:14
|
||||||
|
msgid "No Games Found"
|
||||||
|
msgstr "Δεν Βρέθηκαν Παιχνίδια"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:7 data/gtk/window.blp:15
|
||||||
|
msgid "Try a different search."
|
||||||
|
msgstr "Δοκιμάστε μια διαφορετική αναζήτηση."
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:22
|
||||||
|
msgid "No Games"
|
||||||
|
msgstr "Δίχως Παιχνίδια"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:23
|
||||||
|
msgid "Use the + button to add games."
|
||||||
|
msgstr "Χρησιμοποιήστε το κουμπί + για να προσθέσετε παιχνίδια."
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:41
|
||||||
|
msgid "No Hidden Games"
|
||||||
|
msgstr "Δεν υπάρχουν κρυφά παιχνίδια"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:42
|
||||||
|
msgid "Games you hide will appear here."
|
||||||
|
msgstr "Τα παιχνίδια που κρύβετε θα εμφανίζονται εδώ."
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:65 data/gtk/window.blp:305
|
||||||
|
msgid "Back"
|
||||||
|
msgstr "Πίσω"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:122
|
||||||
|
msgid "Game Title"
|
||||||
|
msgstr "Τίτλος παιχνιδιού"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:177
|
||||||
|
msgid "Play"
|
||||||
|
msgstr "Παίξτε"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:244 data/gtk/window.blp:436
|
||||||
|
msgid "Add Game"
|
||||||
|
msgstr "Προσθήκη παιχνιδιού"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:251 data/gtk/window.blp:317
|
||||||
|
msgid "Main Menu"
|
||||||
|
msgstr "Κύριο μενού"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:312
|
||||||
|
msgid "Hidden Games"
|
||||||
|
msgstr "Κρυμμένα παιχνίδια"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:375
|
||||||
|
msgid "Sort"
|
||||||
|
msgstr "Ταξινόμηση"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:378
|
||||||
|
msgid "A-Z"
|
||||||
|
msgstr "Α-Ζ"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:384
|
||||||
|
msgid "Z-A"
|
||||||
|
msgstr "Ζ-Α"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:390
|
||||||
|
msgid "Newest"
|
||||||
|
msgstr "Νεότερο"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:396
|
||||||
|
msgid "Oldest"
|
||||||
|
msgstr "Παλαιότερο"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:402
|
||||||
|
msgid "Last Played"
|
||||||
|
msgstr "Τελευταία αναπαραγωγή"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:409
|
||||||
|
msgid "Show Hidden"
|
||||||
|
msgstr "Εμφάνιση Κρυφών"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:422
|
||||||
|
msgid "Keyboard Shortcuts"
|
||||||
|
msgstr "Συντομεύσεις Πληκτρολογίου"
|
||||||
|
|
||||||
|
#: data/gtk/window.blp:427
|
||||||
|
msgid "About Cartridges"
|
||||||
|
msgstr "Σχετικά με τις Κασέτες"
|
||||||
|
|
||||||
|
#. Translators: Replace this with your name for it to show up in the about window
|
||||||
|
#: src/main.py:127
|
||||||
|
msgid "translator_credits"
|
||||||
|
msgstr "Yiannis Ioannides"
|
||||||
|
|
||||||
|
#: src/window.py:187
|
||||||
|
msgid "Today"
|
||||||
|
msgstr "Σήμερα"
|
||||||
|
|
||||||
|
#: src/window.py:189
|
||||||
|
msgid "Yesterday"
|
||||||
|
msgstr "Χθες"
|
||||||
|
|
||||||
|
#. The variable is the date when the game was added
|
||||||
|
#: src/window.py:228
|
||||||
|
msgid "Added: {}"
|
||||||
|
msgstr "Προστέθηκε: {}"
|
||||||
|
|
||||||
|
#: src/window.py:231
|
||||||
|
msgid "Never"
|
||||||
|
msgstr "Ποτέ"
|
||||||
|
|
||||||
|
#. The variable is the date when the game was last played
|
||||||
|
#: src/window.py:235
|
||||||
|
msgid "Last played: {}"
|
||||||
|
msgstr "Τελευταία αναπαραγωγή: {}"
|
||||||
|
|
||||||
|
#: src/details_window.py:75
|
||||||
|
msgid "Apply"
|
||||||
|
msgstr "Εφαρμογή"
|
||||||
|
|
||||||
|
#: src/details_window.py:81
|
||||||
|
msgid "Add New Game"
|
||||||
|
msgstr "Προσθήκη νέου παιχνιδιού"
|
||||||
|
|
||||||
|
#: src/details_window.py:82
|
||||||
|
msgid "Confirm"
|
||||||
|
msgstr "Επιβεβαίωση"
|
||||||
|
|
||||||
|
#. Translate this string as you would translate "file"
|
||||||
|
#: src/details_window.py:94
|
||||||
|
msgid "file.txt"
|
||||||
|
msgstr "αρχειο.txt"
|
||||||
|
|
||||||
|
#. As in software
|
||||||
|
#: src/details_window.py:96
|
||||||
|
msgid "program"
|
||||||
|
msgstr "Πρόγραμμα"
|
||||||
|
|
||||||
|
#. Translate this string as you would translate "path to {}"
|
||||||
|
#: src/details_window.py:101 src/details_window.py:103
|
||||||
|
msgid "C:\\path\\to\\{}"
|
||||||
|
msgstr "C:\\προς\\φάκελο\\{}"
|
||||||
|
|
||||||
|
#. Translate this string as you would translate "path to {}"
|
||||||
|
#: src/details_window.py:107 src/details_window.py:109
|
||||||
|
msgid "/path/to/{}"
|
||||||
|
msgstr "/προς/φάκελο/{}"
|
||||||
|
|
||||||
|
#: src/details_window.py:113
|
||||||
|
msgid ""
|
||||||
|
"To launch the executable \"{}\", use the command:\n"
|
||||||
|
"\n"
|
||||||
|
"<tt>\"{}\"</tt>\n"
|
||||||
|
"\n"
|
||||||
|
"To open the file \"{}\" with the default application, use:\n"
|
||||||
|
"\n"
|
||||||
|
"<tt>{} \"{}\"</tt>\n"
|
||||||
|
"\n"
|
||||||
|
"If the path contains spaces, make sure to wrap it in double quotes!"
|
||||||
|
msgstr ""
|
||||||
|
"Για να εκτελέσετε την εφαρμογή \"{}\", χρησιμοποιήστε την εντολή:\n"
|
||||||
|
"\n"
|
||||||
|
"<tt>\"{}\"</tt>\n"
|
||||||
|
"\n"
|
||||||
|
"Για να ανοίξετε το αρχείο \"{}\" με την προεπιλεγμένη εφαρμογή, "
|
||||||
|
"χρησιμοποιήστε:\n"
|
||||||
|
"\n"
|
||||||
|
"<tt>{} \"{}\"</tt>\n"
|
||||||
|
"\n"
|
||||||
|
"Αν η διεύθυνση φακέλου περιέχει κενά, φροντίστε να την περικλείσετε σε διπλά "
|
||||||
|
"εισαγωγικά!"
|
||||||
|
|
||||||
|
#: src/details_window.py:143 src/details_window.py:149
|
||||||
|
msgid "Couldn't Add Game"
|
||||||
|
msgstr "Αδυναμία προσθήκης παιχνιδιού"
|
||||||
|
|
||||||
|
#: src/details_window.py:143 src/details_window.py:176
|
||||||
|
msgid "Game title cannot be empty."
|
||||||
|
msgstr "Ο τίτλος παιχνιδιού δεν μπορεί να είναι κενός."
|
||||||
|
|
||||||
|
#: src/details_window.py:149 src/details_window.py:184
|
||||||
|
msgid "Executable cannot be empty."
|
||||||
|
msgstr "Η εφαρμογή δεν μπορεί να είναι κενή."
|
||||||
|
|
||||||
|
#: src/details_window.py:175 src/details_window.py:183
|
||||||
|
msgid "Couldn't Apply Preferences"
|
||||||
|
msgstr "Αδυναμία Εφαρμογής Προτιμήσεων"
|
||||||
|
|
||||||
|
#. The variable is the title of the game
|
||||||
|
#: src/game.py:208
|
||||||
|
msgid "{} launched"
|
||||||
|
msgstr "{} εκκινήθη"
|
||||||
|
|
||||||
|
#. The variable is the title of the game
|
||||||
|
#: src/game.py:220
|
||||||
|
msgid "{} hidden"
|
||||||
|
msgstr "{} αποκρύφθηκε"
|
||||||
|
|
||||||
|
#: src/game.py:220
|
||||||
|
msgid "{} unhidden"
|
||||||
|
msgstr "{} φανερώθηκε"
|
||||||
|
|
||||||
|
#. The variable is the title of the game
|
||||||
|
#: src/game.py:233
|
||||||
|
msgid "{} removed"
|
||||||
|
msgstr "{} αφαιρέθηκε"
|
||||||
|
|
||||||
|
#: src/preferences.py:97
|
||||||
|
msgid "All games removed"
|
||||||
|
msgstr "Όλα τα παιχνίδια αφαιρέθηκαν"
|
||||||
|
|
||||||
|
#: src/preferences.py:136
|
||||||
|
msgid "Cache Not Found"
|
||||||
|
msgstr "Τα cache δεν βρέθηκαν"
|
||||||
|
|
||||||
|
#: src/preferences.py:137
|
||||||
|
msgid "Select the Lutris cache directory."
|
||||||
|
msgstr "Επιλέξτε τη τοποθεσία cache του Lutris."
|
||||||
|
|
||||||
|
#: src/preferences.py:139 src/preferences.py:292
|
||||||
|
msgid "Set Location"
|
||||||
|
msgstr "Ορίστε Τοποθεσία"
|
||||||
|
|
||||||
|
#: src/preferences.py:166
|
||||||
|
msgid ""
|
||||||
|
"An API key is required to use SteamGridDB. You can generate one {}here{}."
|
||||||
|
msgstr ""
|
||||||
|
"Για τη χρήση του SteamGridDB απαιτείται ένα κλειδί API. Μπορείτε να "
|
||||||
|
"δημιουργήσετε ένα {}εδώ{}."
|
||||||
|
|
||||||
|
#: src/preferences.py:286
|
||||||
|
msgid "Installation Not Found"
|
||||||
|
msgstr "Η εγκατάσταση δεν βρέθηκε"
|
||||||
|
|
||||||
|
#. The variable is the name of the game launcher
|
||||||
|
#: src/preferences.py:288
|
||||||
|
msgid "Select the {} configuration directory."
|
||||||
|
msgstr "Επιλέξτε τον κατάλογο διαμόρφωσης {}."
|
||||||
|
|
||||||
|
#. The variable is the name of the game launcher
|
||||||
|
#: src/preferences.py:290
|
||||||
|
msgid "Select the {} data directory."
|
||||||
|
msgstr "Επιλέξτε τον κατάλογο δεδομένων {}."
|
||||||
|
|
||||||
|
#: src/utils/create_dialog.py:25
|
||||||
|
msgid "Dismiss"
|
||||||
|
msgstr "Απόρριψη"
|
||||||
|
|
||||||
|
#: src/utils/importer.py:41
|
||||||
|
msgid "Importing Games…"
|
||||||
|
msgstr "Εισαγωγή παιχνιδιών…"
|
||||||
|
|
||||||
|
#: src/utils/importer.py:76
|
||||||
|
msgid "Importing Covers…"
|
||||||
|
msgstr "Εισαγωγή εξώφυλλων…"
|
||||||
|
|
||||||
|
#: src/utils/importer.py:91
|
||||||
|
msgid "No new games found"
|
||||||
|
msgstr "Δεν βρέθηκαν νέα παιχνίδια"
|
||||||
|
|
||||||
|
#: src/utils/importer.py:98
|
||||||
|
msgid "1 game imported"
|
||||||
|
msgstr "1 παιχνίδι εισήχθη"
|
||||||
|
|
||||||
|
#. The variable is the number of games
|
||||||
|
#: src/utils/importer.py:104
|
||||||
|
msgid "{} games imported"
|
||||||
|
msgstr "{} παιχνίδια εισήχθησαν"
|
||||||
|
|
||||||
|
#: src/utils/importer.py:121 src/utils/steamgriddb.py:112
|
||||||
|
msgid "Couldn't Connect to SteamGridDB"
|
||||||
|
msgstr "Η σύνδεση στο SteamGridDB δεν μπόρεσε να πραγματοποιηθεί"
|
||||||
24
po/es.po
24
po/es.po
@@ -9,7 +9,7 @@ msgstr ""
|
|||||||
"Project-Id-Version: cartridges\n"
|
"Project-Id-Version: cartridges\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
||||||
"PO-Revision-Date: 2023-04-14 12:29+0000\n"
|
"PO-Revision-Date: 2023-05-28 10:11+0000\n"
|
||||||
"Last-Translator: gallegonovato <fran-carro@hotmail.es>\n"
|
"Last-Translator: gallegonovato <fran-carro@hotmail.es>\n"
|
||||||
"Language-Team: Spanish <https://hosted.weblate.org/projects/cartridges/"
|
"Language-Team: Spanish <https://hosted.weblate.org/projects/cartridges/"
|
||||||
"cartridges/es/>\n"
|
"cartridges/es/>\n"
|
||||||
@@ -18,7 +18,7 @@ msgstr ""
|
|||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||||
"X-Generator: Weblate 4.17-dev\n"
|
"X-Generator: Weblate 4.18-dev\n"
|
||||||
|
|
||||||
#: data/hu.kramo.Cartridges.desktop.in:3
|
#: data/hu.kramo.Cartridges.desktop.in:3
|
||||||
#: data/hu.kramo.Cartridges.metainfo.xml.in:6 data/gtk/window.blp:48
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:6 data/gtk/window.blp:48
|
||||||
@@ -37,7 +37,7 @@ msgstr "Lance todos sus juegos"
|
|||||||
|
|
||||||
#: data/hu.kramo.Cartridges.desktop.in:11
|
#: data/hu.kramo.Cartridges.desktop.in:11
|
||||||
msgid "gaming;launcher;steam;lutris;heroic;bottles;itch;"
|
msgid "gaming;launcher;steam;lutris;heroic;bottles;itch;"
|
||||||
msgstr ""
|
msgstr "gaming;launcher;steam;lutris;heroic;bottles;itch;"
|
||||||
|
|
||||||
#: data/hu.kramo.Cartridges.metainfo.xml.in:9
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:9
|
||||||
msgid ""
|
msgid ""
|
||||||
@@ -75,11 +75,11 @@ msgstr "Cancelar"
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:57
|
#: data/gtk/details_window.blp:57
|
||||||
msgid "New Cover"
|
msgid "New Cover"
|
||||||
msgstr ""
|
msgstr "Nueva caratula"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:75
|
#: data/gtk/details_window.blp:75
|
||||||
msgid "Delete Cover"
|
msgid "Delete Cover"
|
||||||
msgstr ""
|
msgstr "Borrar la caratula"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
||||||
#: data/gtk/game.blp:80
|
#: data/gtk/game.blp:80
|
||||||
@@ -108,7 +108,7 @@ msgstr "Archivo a abrir o comando a ejecutar al iniciar el juego"
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:130
|
#: data/gtk/details_window.blp:130
|
||||||
msgid "More Info"
|
msgid "More Info"
|
||||||
msgstr ""
|
msgstr "Más información"
|
||||||
|
|
||||||
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
||||||
msgid "Edit"
|
msgid "Edit"
|
||||||
@@ -559,23 +559,17 @@ msgid "Importing Covers…"
|
|||||||
msgstr "Importando las portadas…"
|
msgstr "Importando las portadas…"
|
||||||
|
|
||||||
#: src/utils/importer.py:91
|
#: src/utils/importer.py:91
|
||||||
#, fuzzy
|
|
||||||
#| msgid "No Games Found"
|
|
||||||
msgid "No new games found"
|
msgid "No new games found"
|
||||||
msgstr "No se han encontrado juegos"
|
msgstr "No se encontraron juegos nuevos"
|
||||||
|
|
||||||
#: src/utils/importer.py:98
|
#: src/utils/importer.py:98
|
||||||
#, fuzzy
|
|
||||||
#| msgid "Game Imported"
|
|
||||||
msgid "1 game imported"
|
msgid "1 game imported"
|
||||||
msgstr "Juego importado"
|
msgstr "1 juego importado"
|
||||||
|
|
||||||
#. The variable is the number of games
|
#. The variable is the number of games
|
||||||
#: src/utils/importer.py:104
|
#: src/utils/importer.py:104
|
||||||
#, fuzzy
|
|
||||||
#| msgid "Games Imported"
|
|
||||||
msgid "{} games imported"
|
msgid "{} games imported"
|
||||||
msgstr "Juegos importados"
|
msgstr "0 juegos importados"
|
||||||
|
|
||||||
#: src/utils/importer.py:121 src/utils/steamgriddb.py:112
|
#: src/utils/importer.py:121 src/utils/steamgriddb.py:112
|
||||||
msgid "Couldn't Connect to SteamGridDB"
|
msgid "Couldn't Connect to SteamGridDB"
|
||||||
|
|||||||
8
po/fr.po
8
po/fr.po
@@ -11,7 +11,7 @@ msgstr ""
|
|||||||
"Project-Id-Version: cartridges\n"
|
"Project-Id-Version: cartridges\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
||||||
"PO-Revision-Date: 2023-05-24 20:27+0000\n"
|
"PO-Revision-Date: 2023-05-28 10:11+0000\n"
|
||||||
"Last-Translator: rene-coty <irenee.thirion@e.email>\n"
|
"Last-Translator: rene-coty <irenee.thirion@e.email>\n"
|
||||||
"Language-Team: French <https://hosted.weblate.org/projects/cartridges/"
|
"Language-Team: French <https://hosted.weblate.org/projects/cartridges/"
|
||||||
"cartridges/fr/>\n"
|
"cartridges/fr/>\n"
|
||||||
@@ -77,11 +77,11 @@ msgstr "Annuler"
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:57
|
#: data/gtk/details_window.blp:57
|
||||||
msgid "New Cover"
|
msgid "New Cover"
|
||||||
msgstr ""
|
msgstr "Nouvelle couverture"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:75
|
#: data/gtk/details_window.blp:75
|
||||||
msgid "Delete Cover"
|
msgid "Delete Cover"
|
||||||
msgstr ""
|
msgstr "Supprimer la couverture"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
||||||
#: data/gtk/game.blp:80
|
#: data/gtk/game.blp:80
|
||||||
@@ -110,7 +110,7 @@ msgstr "Fichier à ouvrir ou commande à exécuter au lancement du jeu"
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:130
|
#: data/gtk/details_window.blp:130
|
||||||
msgid "More Info"
|
msgid "More Info"
|
||||||
msgstr ""
|
msgstr "Plus d’informations"
|
||||||
|
|
||||||
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
||||||
msgid "Edit"
|
msgid "Edit"
|
||||||
|
|||||||
24
po/nl.po
24
po/nl.po
@@ -8,7 +8,7 @@ msgstr ""
|
|||||||
"Project-Id-Version: cartridges\n"
|
"Project-Id-Version: cartridges\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
||||||
"PO-Revision-Date: 2023-04-14 12:29+0000\n"
|
"PO-Revision-Date: 2023-05-29 18:48+0000\n"
|
||||||
"Last-Translator: Philip Goto <philip.goto@gmail.com>\n"
|
"Last-Translator: Philip Goto <philip.goto@gmail.com>\n"
|
||||||
"Language-Team: Dutch <https://hosted.weblate.org/projects/cartridges/"
|
"Language-Team: Dutch <https://hosted.weblate.org/projects/cartridges/"
|
||||||
"cartridges/nl/>\n"
|
"cartridges/nl/>\n"
|
||||||
@@ -17,7 +17,7 @@ msgstr ""
|
|||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||||
"X-Generator: Weblate 4.17-dev\n"
|
"X-Generator: Weblate 4.18-dev\n"
|
||||||
|
|
||||||
#: data/hu.kramo.Cartridges.desktop.in:3
|
#: data/hu.kramo.Cartridges.desktop.in:3
|
||||||
#: data/hu.kramo.Cartridges.metainfo.xml.in:6 data/gtk/window.blp:48
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:6 data/gtk/window.blp:48
|
||||||
@@ -37,6 +37,8 @@ msgstr "Start al uw games op"
|
|||||||
#: data/hu.kramo.Cartridges.desktop.in:11
|
#: data/hu.kramo.Cartridges.desktop.in:11
|
||||||
msgid "gaming;launcher;steam;lutris;heroic;bottles;itch;"
|
msgid "gaming;launcher;steam;lutris;heroic;bottles;itch;"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"gaming;launcher;steam;lutris;heroic;bottles;itch;spelen;games;starten;opstart"
|
||||||
|
"en;"
|
||||||
|
|
||||||
#: data/hu.kramo.Cartridges.metainfo.xml.in:9
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:9
|
||||||
msgid ""
|
msgid ""
|
||||||
@@ -74,11 +76,11 @@ msgstr "Annuleren"
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:57
|
#: data/gtk/details_window.blp:57
|
||||||
msgid "New Cover"
|
msgid "New Cover"
|
||||||
msgstr ""
|
msgstr "Nieuwe cover"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:75
|
#: data/gtk/details_window.blp:75
|
||||||
msgid "Delete Cover"
|
msgid "Delete Cover"
|
||||||
msgstr ""
|
msgstr "Cover verwijderen"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
||||||
#: data/gtk/game.blp:80
|
#: data/gtk/game.blp:80
|
||||||
@@ -108,7 +110,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:130
|
#: data/gtk/details_window.blp:130
|
||||||
msgid "More Info"
|
msgid "More Info"
|
||||||
msgstr ""
|
msgstr "Meer info"
|
||||||
|
|
||||||
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
||||||
msgid "Edit"
|
msgid "Edit"
|
||||||
@@ -561,23 +563,17 @@ msgid "Importing Covers…"
|
|||||||
msgstr "Covers importeren…"
|
msgstr "Covers importeren…"
|
||||||
|
|
||||||
#: src/utils/importer.py:91
|
#: src/utils/importer.py:91
|
||||||
#, fuzzy
|
|
||||||
#| msgid "No Games Found"
|
|
||||||
msgid "No new games found"
|
msgid "No new games found"
|
||||||
msgstr "Geen games gevonden"
|
msgstr "Geen nieuwe games gevonden"
|
||||||
|
|
||||||
#: src/utils/importer.py:98
|
#: src/utils/importer.py:98
|
||||||
#, fuzzy
|
|
||||||
#| msgid "Game Imported"
|
|
||||||
msgid "1 game imported"
|
msgid "1 game imported"
|
||||||
msgstr "Game geïmporteerd"
|
msgstr "1 game geïmporteerd"
|
||||||
|
|
||||||
#. The variable is the number of games
|
#. The variable is the number of games
|
||||||
#: src/utils/importer.py:104
|
#: src/utils/importer.py:104
|
||||||
#, fuzzy
|
|
||||||
#| msgid "Games Imported"
|
|
||||||
msgid "{} games imported"
|
msgid "{} games imported"
|
||||||
msgstr "Games geïmporteerd"
|
msgstr "{} games geïmporteerd"
|
||||||
|
|
||||||
#: src/utils/importer.py:121 src/utils/steamgriddb.py:112
|
#: src/utils/importer.py:121 src/utils/steamgriddb.py:112
|
||||||
msgid "Couldn't Connect to SteamGridDB"
|
msgid "Couldn't Connect to SteamGridDB"
|
||||||
|
|||||||
9
po/pl.po
9
po/pl.po
@@ -2,13 +2,14 @@
|
|||||||
# Copyright (C) YEAR kramo
|
# Copyright (C) YEAR kramo
|
||||||
# This file is distributed under the same license as the Cartridges package.
|
# This file is distributed under the same license as the Cartridges package.
|
||||||
# Artur Wróblewski <krypalkora1984@gmail.com>, 2023.
|
# Artur Wróblewski <krypalkora1984@gmail.com>, 2023.
|
||||||
|
# Kshyso <Kshysio@protonmail.com>, 2023.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Cartridges\n"
|
"Project-Id-Version: Cartridges\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
||||||
"PO-Revision-Date: 2023-05-07 15:38+0000\n"
|
"PO-Revision-Date: 2023-06-10 16:48+0000\n"
|
||||||
"Last-Translator: Artur Wróblewski <krypalkora1984@gmail.com>\n"
|
"Last-Translator: Kshyso <Kshysio@protonmail.com>\n"
|
||||||
"Language-Team: Polish <https://hosted.weblate.org/projects/cartridges/"
|
"Language-Team: Polish <https://hosted.weblate.org/projects/cartridges/"
|
||||||
"cartridges/pl/>\n"
|
"cartridges/pl/>\n"
|
||||||
"Language: pl\n"
|
"Language: pl\n"
|
||||||
@@ -73,11 +74,11 @@ msgstr "Anuluj"
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:57
|
#: data/gtk/details_window.blp:57
|
||||||
msgid "New Cover"
|
msgid "New Cover"
|
||||||
msgstr ""
|
msgstr "Nowa Okładka"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:75
|
#: data/gtk/details_window.blp:75
|
||||||
msgid "Delete Cover"
|
msgid "Delete Cover"
|
||||||
msgstr ""
|
msgstr "Usuń Okładkę"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
||||||
#: data/gtk/game.blp:80
|
#: data/gtk/game.blp:80
|
||||||
|
|||||||
45
po/pt.po
45
po/pt.po
@@ -4,13 +4,14 @@
|
|||||||
# Pedro Sader Azevedo <pedro.saderazevedo@protonmail.com>, 2023.
|
# Pedro Sader Azevedo <pedro.saderazevedo@protonmail.com>, 2023.
|
||||||
# kramo <contact@kramo.hu>, 2023.
|
# kramo <contact@kramo.hu>, 2023.
|
||||||
# Henrique Machado <henriquecamposrj@gmail.com>, 2023.
|
# Henrique Machado <henriquecamposrj@gmail.com>, 2023.
|
||||||
|
# João Alves <joao.2003.couto@gmail.com>, 2023.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: cartridges\n"
|
"Project-Id-Version: cartridges\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
||||||
"PO-Revision-Date: 2023-04-18 22:49+0000\n"
|
"PO-Revision-Date: 2023-06-04 22:47+0000\n"
|
||||||
"Last-Translator: Henrique Machado <henriquecamposrj@gmail.com>\n"
|
"Last-Translator: João Alves <joao.2003.couto@gmail.com>\n"
|
||||||
"Language-Team: Portuguese <https://hosted.weblate.org/projects/cartridges/"
|
"Language-Team: Portuguese <https://hosted.weblate.org/projects/cartridges/"
|
||||||
"cartridges/pt/>\n"
|
"cartridges/pt/>\n"
|
||||||
"Language: pt\n"
|
"Language: pt\n"
|
||||||
@@ -24,7 +25,7 @@ msgstr ""
|
|||||||
#: data/hu.kramo.Cartridges.metainfo.xml.in:6 data/gtk/window.blp:48
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:6 data/gtk/window.blp:48
|
||||||
#: src/main.py:109
|
#: src/main.py:109
|
||||||
msgid "Cartridges"
|
msgid "Cartridges"
|
||||||
msgstr "Cartuchos"
|
msgstr "Cartridges"
|
||||||
|
|
||||||
#: data/hu.kramo.Cartridges.desktop.in:4
|
#: data/hu.kramo.Cartridges.desktop.in:4
|
||||||
msgid "Game Launcher"
|
msgid "Game Launcher"
|
||||||
@@ -37,7 +38,7 @@ msgstr "Inicie todos os seus jogos"
|
|||||||
|
|
||||||
#: data/hu.kramo.Cartridges.desktop.in:11
|
#: data/hu.kramo.Cartridges.desktop.in:11
|
||||||
msgid "gaming;launcher;steam;lutris;heroic;bottles;itch;"
|
msgid "gaming;launcher;steam;lutris;heroic;bottles;itch;"
|
||||||
msgstr ""
|
msgstr "gaming;iniciador;steam;lutris;heroic;bottles;itch;"
|
||||||
|
|
||||||
#: data/hu.kramo.Cartridges.metainfo.xml.in:9
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:9
|
||||||
msgid ""
|
msgid ""
|
||||||
@@ -46,10 +47,10 @@ msgid ""
|
|||||||
"necessary. You can sort and hide games or download cover art from "
|
"necessary. You can sort and hide games or download cover art from "
|
||||||
"SteamGridDB."
|
"SteamGridDB."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Cartuchos é um iniciador de jogos simples. Ele tem suporte para importação "
|
"Cartridges é um lançador de jogos simples para todos os seus jogos. Tem "
|
||||||
"de jogos da Steam, Lutris, Heroic, e etc. sem precisar fazer login. E pode "
|
"suporte para importar jogos do Steam, Lutris, Heroic e muito mais, sem "
|
||||||
"organizar e esconder jogos ou baixar imagens das capas dos jogos a partir do "
|
"necessidade de login. Você pode classificar e ocultar jogos ou baixar a capa "
|
||||||
"SteamGridDB."
|
"do SteamGridDB."
|
||||||
|
|
||||||
#: data/hu.kramo.Cartridges.metainfo.xml.in:30
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:30
|
||||||
msgid "Library"
|
msgid "Library"
|
||||||
@@ -75,11 +76,11 @@ msgstr "Cancelar"
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:57
|
#: data/gtk/details_window.blp:57
|
||||||
msgid "New Cover"
|
msgid "New Cover"
|
||||||
msgstr ""
|
msgstr "Nova capa"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:75
|
#: data/gtk/details_window.blp:75
|
||||||
msgid "Delete Cover"
|
msgid "Delete Cover"
|
||||||
msgstr ""
|
msgstr "Apagar capa"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
||||||
#: data/gtk/game.blp:80
|
#: data/gtk/game.blp:80
|
||||||
@@ -108,7 +109,7 @@ msgstr "Arquivo a ser aberto ou comando a ser executado ao iniciar o jogo"
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:130
|
#: data/gtk/details_window.blp:130
|
||||||
msgid "More Info"
|
msgid "More Info"
|
||||||
msgstr ""
|
msgstr "Mais informação"
|
||||||
|
|
||||||
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
||||||
msgid "Edit"
|
msgid "Edit"
|
||||||
@@ -174,7 +175,7 @@ msgstr "Exibir jogos ocultados"
|
|||||||
|
|
||||||
#: data/gtk/help-overlay.blp:63
|
#: data/gtk/help-overlay.blp:63
|
||||||
msgid "Remove game"
|
msgid "Remove game"
|
||||||
msgstr "Remove o jogo"
|
msgstr "Remover jogo"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:13 data/gtk/preferences.blp:206
|
#: data/gtk/preferences.blp:13 data/gtk/preferences.blp:206
|
||||||
msgid "Behavior"
|
msgid "Behavior"
|
||||||
@@ -182,11 +183,11 @@ msgstr "Comportamento"
|
|||||||
|
|
||||||
#: data/gtk/preferences.blp:16
|
#: data/gtk/preferences.blp:16
|
||||||
msgid "Exit After Launching Games"
|
msgid "Exit After Launching Games"
|
||||||
msgstr "Fechar Cartuchos ao iniciar um jogo"
|
msgstr "Fechar Cartridges ao iniciar um jogo"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:25
|
#: data/gtk/preferences.blp:25
|
||||||
msgid "Cover Image Launches Game"
|
msgid "Cover Image Launches Game"
|
||||||
msgstr "Clicar na capa para iniciar o jogo"
|
msgstr "Clicar na capa inicia o jogo"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:26
|
#: data/gtk/preferences.blp:26
|
||||||
msgid "Swaps the behavior of the cover image and the play button"
|
msgid "Swaps the behavior of the cover image and the play button"
|
||||||
@@ -206,11 +207,11 @@ msgstr "Salva imagens das capas sem perda, consumindo mais armazenamento"
|
|||||||
|
|
||||||
#: data/gtk/preferences.blp:50
|
#: data/gtk/preferences.blp:50
|
||||||
msgid "Danger Zone"
|
msgid "Danger Zone"
|
||||||
msgstr "Atenção"
|
msgstr "Zona de perigo"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:53
|
#: data/gtk/preferences.blp:53
|
||||||
msgid "Remove All Games"
|
msgid "Remove All Games"
|
||||||
msgstr "Remove todos os jogos"
|
msgstr "Remover todos os jogos"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:69 data/gtk/window.blp:28 data/gtk/window.blp:443
|
#: data/gtk/preferences.blp:69 data/gtk/window.blp:28 data/gtk/window.blp:443
|
||||||
msgid "Import"
|
msgid "Import"
|
||||||
@@ -558,23 +559,17 @@ msgid "Importing Covers…"
|
|||||||
msgstr "Importando capas…"
|
msgstr "Importando capas…"
|
||||||
|
|
||||||
#: src/utils/importer.py:91
|
#: src/utils/importer.py:91
|
||||||
#, fuzzy
|
|
||||||
#| msgid "No Games Found"
|
|
||||||
msgid "No new games found"
|
msgid "No new games found"
|
||||||
msgstr "Nenhum jogo encontrado"
|
msgstr "Nenhum jogo novo encontrado"
|
||||||
|
|
||||||
#: src/utils/importer.py:98
|
#: src/utils/importer.py:98
|
||||||
#, fuzzy
|
|
||||||
#| msgid "Game Imported"
|
|
||||||
msgid "1 game imported"
|
msgid "1 game imported"
|
||||||
msgstr "Jogo importado"
|
msgstr "1 jogo importado"
|
||||||
|
|
||||||
#. The variable is the number of games
|
#. The variable is the number of games
|
||||||
#: src/utils/importer.py:104
|
#: src/utils/importer.py:104
|
||||||
#, fuzzy
|
|
||||||
#| msgid "Games Imported"
|
|
||||||
msgid "{} games imported"
|
msgid "{} games imported"
|
||||||
msgstr "Jogos importados"
|
msgstr "{} jogos importados"
|
||||||
|
|
||||||
#: src/utils/importer.py:121 src/utils/steamgriddb.py:112
|
#: src/utils/importer.py:121 src/utils/steamgriddb.py:112
|
||||||
msgid "Couldn't Connect to SteamGridDB"
|
msgid "Couldn't Connect to SteamGridDB"
|
||||||
|
|||||||
89
po/pt_BR.po
89
po/pt_BR.po
@@ -2,13 +2,14 @@
|
|||||||
# Copyright (C) YEAR kramo
|
# Copyright (C) YEAR kramo
|
||||||
# This file is distributed under the same license as the Cartridges package.
|
# This file is distributed under the same license as the Cartridges package.
|
||||||
# Henrique Machado <henriquecamposrj@gmail.com>, 2023.
|
# Henrique Machado <henriquecamposrj@gmail.com>, 2023.
|
||||||
|
# Vinícius Gama Santos <vinny.stalck@protonmail.com>, 2023.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Cartridges\n"
|
"Project-Id-Version: Cartridges\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
||||||
"PO-Revision-Date: 2023-04-19 17:50+0000\n"
|
"PO-Revision-Date: 2023-06-02 15:40+0000\n"
|
||||||
"Last-Translator: Henrique Machado <henriquecamposrj@gmail.com>\n"
|
"Last-Translator: Vinícius Gama Santos <vinny.stalck@protonmail.com>\n"
|
||||||
"Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/"
|
"Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/"
|
||||||
"cartridges/cartridges/pt_BR/>\n"
|
"cartridges/cartridges/pt_BR/>\n"
|
||||||
"Language: pt_BR\n"
|
"Language: pt_BR\n"
|
||||||
@@ -35,7 +36,7 @@ msgstr "Inicie todos os seus jogos"
|
|||||||
|
|
||||||
#: data/hu.kramo.Cartridges.desktop.in:11
|
#: data/hu.kramo.Cartridges.desktop.in:11
|
||||||
msgid "gaming;launcher;steam;lutris;heroic;bottles;itch;"
|
msgid "gaming;launcher;steam;lutris;heroic;bottles;itch;"
|
||||||
msgstr ""
|
msgstr "jogos;gaming;launcher;steam;lutris;heroic;bottles;itch;"
|
||||||
|
|
||||||
#: data/hu.kramo.Cartridges.metainfo.xml.in:9
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:9
|
||||||
msgid ""
|
msgid ""
|
||||||
@@ -44,10 +45,10 @@ msgid ""
|
|||||||
"necessary. You can sort and hide games or download cover art from "
|
"necessary. You can sort and hide games or download cover art from "
|
||||||
"SteamGridDB."
|
"SteamGridDB."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Cartuchos é um iniciador de jogos simples. Ele tem suporte para importação "
|
"Cartuchos é um simples iniciador de jogos para todos os seus jogos. Ele tem "
|
||||||
"de jogos da Steam, Lutris, Heroic, e etc. sem precisar fazer login. E pode "
|
"suporte para importar jogos do Steam, Lutris, Heroic e outros, sem "
|
||||||
"organizar e esconder jogos ou baixar imagens das capas dos jogos a partir do "
|
"necessidade de login. Você pode ordenar e esconder jogos ou baixar arte de "
|
||||||
"SteamGridDB."
|
"capa do SteamGridDB."
|
||||||
|
|
||||||
#: data/hu.kramo.Cartridges.metainfo.xml.in:30
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:30
|
||||||
msgid "Library"
|
msgid "Library"
|
||||||
@@ -73,11 +74,11 @@ msgstr "Cancelar"
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:57
|
#: data/gtk/details_window.blp:57
|
||||||
msgid "New Cover"
|
msgid "New Cover"
|
||||||
msgstr ""
|
msgstr "Nova capa"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:75
|
#: data/gtk/details_window.blp:75
|
||||||
msgid "Delete Cover"
|
msgid "Delete Cover"
|
||||||
msgstr ""
|
msgstr "Excluir capa"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
||||||
#: data/gtk/game.blp:80
|
#: data/gtk/game.blp:80
|
||||||
@@ -106,7 +107,7 @@ msgstr "Arquivo a ser aberto ou comando a ser executado ao iniciar o jogo"
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:130
|
#: data/gtk/details_window.blp:130
|
||||||
msgid "More Info"
|
msgid "More Info"
|
||||||
msgstr ""
|
msgstr "Mais informações"
|
||||||
|
|
||||||
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
||||||
msgid "Edit"
|
msgid "Edit"
|
||||||
@@ -114,7 +115,7 @@ msgstr "Editar"
|
|||||||
|
|
||||||
#: data/gtk/game.blp:107 src/window.py:205
|
#: data/gtk/game.blp:107 src/window.py:205
|
||||||
msgid "Hide"
|
msgid "Hide"
|
||||||
msgstr "Ocultar"
|
msgstr "Esconder"
|
||||||
|
|
||||||
#: data/gtk/game.blp:112 data/gtk/game.blp:131 data/gtk/preferences.blp:56
|
#: data/gtk/game.blp:112 data/gtk/game.blp:131 data/gtk/preferences.blp:56
|
||||||
#: data/gtk/window.blp:210
|
#: data/gtk/window.blp:210
|
||||||
@@ -168,11 +169,11 @@ msgstr "Importar jogos"
|
|||||||
|
|
||||||
#: data/gtk/help-overlay.blp:58
|
#: data/gtk/help-overlay.blp:58
|
||||||
msgid "Show hidden games"
|
msgid "Show hidden games"
|
||||||
msgstr "Exibir jogos ocultados"
|
msgstr "Exibir jogos ocultos"
|
||||||
|
|
||||||
#: data/gtk/help-overlay.blp:63
|
#: data/gtk/help-overlay.blp:63
|
||||||
msgid "Remove game"
|
msgid "Remove game"
|
||||||
msgstr "Remove o jogo"
|
msgstr "Remover jogo"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:13 data/gtk/preferences.blp:206
|
#: data/gtk/preferences.blp:13 data/gtk/preferences.blp:206
|
||||||
msgid "Behavior"
|
msgid "Behavior"
|
||||||
@@ -180,15 +181,15 @@ msgstr "Comportamento"
|
|||||||
|
|
||||||
#: data/gtk/preferences.blp:16
|
#: data/gtk/preferences.blp:16
|
||||||
msgid "Exit After Launching Games"
|
msgid "Exit After Launching Games"
|
||||||
msgstr "Fechar Cartuchos ao iniciar um jogo"
|
msgstr "Fechar ao iniciar jogos"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:25
|
#: data/gtk/preferences.blp:25
|
||||||
msgid "Cover Image Launches Game"
|
msgid "Cover Image Launches Game"
|
||||||
msgstr "Clicar na capa para iniciar o jogo"
|
msgstr "Imagem da capa inicia o jogo"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:26
|
#: data/gtk/preferences.blp:26
|
||||||
msgid "Swaps the behavior of the cover image and the play button"
|
msgid "Swaps the behavior of the cover image and the play button"
|
||||||
msgstr "Troca o comportamento de clicar na capa do jogo e do botão Jogar"
|
msgstr "Troca o comportamento da imagem da capa e do botão jogar"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:36 src/details_window.py:84
|
#: data/gtk/preferences.blp:36 src/details_window.py:84
|
||||||
msgid "Images"
|
msgid "Images"
|
||||||
@@ -200,15 +201,15 @@ msgstr "Imagens de alta qualidade"
|
|||||||
|
|
||||||
#: data/gtk/preferences.blp:40
|
#: data/gtk/preferences.blp:40
|
||||||
msgid "Save game covers losslessly at the cost of storage"
|
msgid "Save game covers losslessly at the cost of storage"
|
||||||
msgstr "Salva imagens das capas sem perda, consumindo mais armazenamento"
|
msgstr "Salva capas de jogos sem perdas, consumindo mais armazenamento"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:50
|
#: data/gtk/preferences.blp:50
|
||||||
msgid "Danger Zone"
|
msgid "Danger Zone"
|
||||||
msgstr "Atenção"
|
msgstr "Zona de Perigo"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:53
|
#: data/gtk/preferences.blp:53
|
||||||
msgid "Remove All Games"
|
msgid "Remove All Games"
|
||||||
msgstr "Remove todos os jogos"
|
msgstr "Remover todos os jogos"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:69 data/gtk/window.blp:28 data/gtk/window.blp:443
|
#: data/gtk/preferences.blp:69 data/gtk/window.blp:28 data/gtk/window.blp:443
|
||||||
msgid "Import"
|
msgid "Import"
|
||||||
@@ -224,7 +225,7 @@ msgstr "Steam"
|
|||||||
|
|
||||||
#: data/gtk/preferences.blp:80
|
#: data/gtk/preferences.blp:80
|
||||||
msgid "Steam Install Location"
|
msgid "Steam Install Location"
|
||||||
msgstr "Local de instalação da Steam"
|
msgstr "Local de instalação do Steam"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:90
|
#: data/gtk/preferences.blp:90
|
||||||
msgid "Lutris"
|
msgid "Lutris"
|
||||||
@@ -240,7 +241,7 @@ msgstr "Local do cache do Lutris"
|
|||||||
|
|
||||||
#: data/gtk/preferences.blp:112
|
#: data/gtk/preferences.blp:112
|
||||||
msgid "Import Steam Games"
|
msgid "Import Steam Games"
|
||||||
msgstr "Importar jogos da Steam"
|
msgstr "Importar jogos do Steam"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:122
|
#: data/gtk/preferences.blp:122
|
||||||
msgid "Heroic"
|
msgid "Heroic"
|
||||||
@@ -264,11 +265,11 @@ msgstr "Importar jogos adicionados manualmente"
|
|||||||
|
|
||||||
#: data/gtk/preferences.blp:163
|
#: data/gtk/preferences.blp:163
|
||||||
msgid "Bottles"
|
msgid "Bottles"
|
||||||
msgstr "Bottles"
|
msgstr "Garrafas"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:167
|
#: data/gtk/preferences.blp:167
|
||||||
msgid "Bottles Install Location"
|
msgid "Bottles Install Location"
|
||||||
msgstr "Local de instalação do Bottles"
|
msgstr "Local de instalação do Garrafas"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:177
|
#: data/gtk/preferences.blp:177
|
||||||
msgid "itch"
|
msgid "itch"
|
||||||
@@ -296,7 +297,7 @@ msgstr "Usar SteamGridDB"
|
|||||||
|
|
||||||
#: data/gtk/preferences.blp:210
|
#: data/gtk/preferences.blp:210
|
||||||
msgid "Download images when adding or importing games"
|
msgid "Download images when adding or importing games"
|
||||||
msgstr "Baixa imagens ao adicionar ou importar jogos"
|
msgstr "Baixar imagens ao adicionar ou importar jogos"
|
||||||
|
|
||||||
#: data/gtk/preferences.blp:219
|
#: data/gtk/preferences.blp:219
|
||||||
msgid "Prefer Over Official Images"
|
msgid "Prefer Over Official Images"
|
||||||
@@ -312,7 +313,7 @@ msgstr "Nenhum jogo encontrado"
|
|||||||
|
|
||||||
#: data/gtk/window.blp:7 data/gtk/window.blp:15
|
#: data/gtk/window.blp:7 data/gtk/window.blp:15
|
||||||
msgid "Try a different search."
|
msgid "Try a different search."
|
||||||
msgstr "Tente outra pesquisa."
|
msgstr "Tente uma busca diferente."
|
||||||
|
|
||||||
#: data/gtk/window.blp:22
|
#: data/gtk/window.blp:22
|
||||||
msgid "No Games"
|
msgid "No Games"
|
||||||
@@ -324,11 +325,11 @@ msgstr "Use o botão + para adicionar jogos."
|
|||||||
|
|
||||||
#: data/gtk/window.blp:41
|
#: data/gtk/window.blp:41
|
||||||
msgid "No Hidden Games"
|
msgid "No Hidden Games"
|
||||||
msgstr "Sem jogos ocultados"
|
msgstr "Sem jogos ocultos"
|
||||||
|
|
||||||
#: data/gtk/window.blp:42
|
#: data/gtk/window.blp:42
|
||||||
msgid "Games you hide will appear here."
|
msgid "Games you hide will appear here."
|
||||||
msgstr "Jogos ocultados vão aparecer aqui."
|
msgstr "Os jogos ocultos aparecerão aqui."
|
||||||
|
|
||||||
#: data/gtk/window.blp:65 data/gtk/window.blp:305
|
#: data/gtk/window.blp:65 data/gtk/window.blp:305
|
||||||
msgid "Back"
|
msgid "Back"
|
||||||
@@ -348,11 +349,11 @@ msgstr "Adicionar jogo"
|
|||||||
|
|
||||||
#: data/gtk/window.blp:251 data/gtk/window.blp:317
|
#: data/gtk/window.blp:251 data/gtk/window.blp:317
|
||||||
msgid "Main Menu"
|
msgid "Main Menu"
|
||||||
msgstr "Menu principal"
|
msgstr "Menu Principal"
|
||||||
|
|
||||||
#: data/gtk/window.blp:312
|
#: data/gtk/window.blp:312
|
||||||
msgid "Hidden Games"
|
msgid "Hidden Games"
|
||||||
msgstr "Jogos ocultados"
|
msgstr "Jogos ocultos"
|
||||||
|
|
||||||
#: data/gtk/window.blp:375
|
#: data/gtk/window.blp:375
|
||||||
msgid "Sort"
|
msgid "Sort"
|
||||||
@@ -393,7 +394,7 @@ msgstr "Sobre o Cartuchos"
|
|||||||
#. Translators: Replace this with your name for it to show up in the about window
|
#. Translators: Replace this with your name for it to show up in the about window
|
||||||
#: src/main.py:127
|
#: src/main.py:127
|
||||||
msgid "translator_credits"
|
msgid "translator_credits"
|
||||||
msgstr "Pedro Sader Azevedo"
|
msgstr "Pedro Sader Azevedo, Vinícius \"Stalck\""
|
||||||
|
|
||||||
#: src/window.py:187
|
#: src/window.py:187
|
||||||
msgid "Today"
|
msgid "Today"
|
||||||
@@ -415,7 +416,7 @@ msgstr "Nunca"
|
|||||||
#. The variable is the date when the game was last played
|
#. The variable is the date when the game was last played
|
||||||
#: src/window.py:235
|
#: src/window.py:235
|
||||||
msgid "Last played: {}"
|
msgid "Last played: {}"
|
||||||
msgstr "Última vez jogado"
|
msgstr "Jogado pela última vez: {}"
|
||||||
|
|
||||||
#: src/details_window.py:75
|
#: src/details_window.py:75
|
||||||
msgid "Apply"
|
msgid "Apply"
|
||||||
@@ -495,11 +496,11 @@ msgstr "{} iniciado"
|
|||||||
#. The variable is the title of the game
|
#. The variable is the title of the game
|
||||||
#: src/game.py:220
|
#: src/game.py:220
|
||||||
msgid "{} hidden"
|
msgid "{} hidden"
|
||||||
msgstr "{} está oculto"
|
msgstr "{} ocultado"
|
||||||
|
|
||||||
#: src/game.py:220
|
#: src/game.py:220
|
||||||
msgid "{} unhidden"
|
msgid "{} unhidden"
|
||||||
msgstr "{} está exposto"
|
msgstr "{} exibido"
|
||||||
|
|
||||||
#. The variable is the title of the game
|
#. The variable is the title of the game
|
||||||
#: src/game.py:233
|
#: src/game.py:233
|
||||||
@@ -526,8 +527,8 @@ msgstr "Definir local"
|
|||||||
msgid ""
|
msgid ""
|
||||||
"An API key is required to use SteamGridDB. You can generate one {}here{}."
|
"An API key is required to use SteamGridDB. You can generate one {}here{}."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Uma chave da API é necessária para usar a SteamGridDB. Você pode gerar uma "
|
"Uma chave de API é necessária para utilizar o SteamGridDB. Você pode gerar "
|
||||||
"chave {}aqui{}."
|
"uma {}aqui{}."
|
||||||
|
|
||||||
#: src/preferences.py:286
|
#: src/preferences.py:286
|
||||||
msgid "Installation Not Found"
|
msgid "Installation Not Found"
|
||||||
@@ -536,12 +537,12 @@ msgstr "Instalação não encontrada"
|
|||||||
#. The variable is the name of the game launcher
|
#. The variable is the name of the game launcher
|
||||||
#: src/preferences.py:288
|
#: src/preferences.py:288
|
||||||
msgid "Select the {} configuration directory."
|
msgid "Select the {} configuration directory."
|
||||||
msgstr "Selecione o diretório de configuração de {}."
|
msgstr "Selecione o diretório de configuração do(a) {}."
|
||||||
|
|
||||||
#. The variable is the name of the game launcher
|
#. The variable is the name of the game launcher
|
||||||
#: src/preferences.py:290
|
#: src/preferences.py:290
|
||||||
msgid "Select the {} data directory."
|
msgid "Select the {} data directory."
|
||||||
msgstr "Selecione o diretório de informações de {}."
|
msgstr "Selecione o diretório de dados do(a) {}."
|
||||||
|
|
||||||
#: src/utils/create_dialog.py:25
|
#: src/utils/create_dialog.py:25
|
||||||
msgid "Dismiss"
|
msgid "Dismiss"
|
||||||
@@ -556,27 +557,21 @@ msgid "Importing Covers…"
|
|||||||
msgstr "Importando capas…"
|
msgstr "Importando capas…"
|
||||||
|
|
||||||
#: src/utils/importer.py:91
|
#: src/utils/importer.py:91
|
||||||
#, fuzzy
|
|
||||||
#| msgid "No Games Found"
|
|
||||||
msgid "No new games found"
|
msgid "No new games found"
|
||||||
msgstr "Nenhum jogo encontrado"
|
msgstr "Nenhum jogo novo encontrado"
|
||||||
|
|
||||||
#: src/utils/importer.py:98
|
#: src/utils/importer.py:98
|
||||||
#, fuzzy
|
|
||||||
#| msgid "Game Imported"
|
|
||||||
msgid "1 game imported"
|
msgid "1 game imported"
|
||||||
msgstr "Jogo importado"
|
msgstr "1 jogo importado"
|
||||||
|
|
||||||
#. The variable is the number of games
|
#. The variable is the number of games
|
||||||
#: src/utils/importer.py:104
|
#: src/utils/importer.py:104
|
||||||
#, fuzzy
|
|
||||||
#| msgid "Games Imported"
|
|
||||||
msgid "{} games imported"
|
msgid "{} games imported"
|
||||||
msgstr "Jogos importados"
|
msgstr "{} jogos importados"
|
||||||
|
|
||||||
#: src/utils/importer.py:121 src/utils/steamgriddb.py:112
|
#: src/utils/importer.py:121 src/utils/steamgriddb.py:112
|
||||||
msgid "Couldn't Connect to SteamGridDB"
|
msgid "Couldn't Connect to SteamGridDB"
|
||||||
msgstr "Não foi possível conectar à SteamGridDB"
|
msgstr "Não foi possível conectar-se ao SteamGridDB"
|
||||||
|
|
||||||
#~ msgid "Directory to use when importing games"
|
#~ msgid "Directory to use when importing games"
|
||||||
#~ msgstr "Diretório para usar ao importar jogos"
|
#~ msgstr "Diretório para usar ao importar jogos"
|
||||||
|
|||||||
12
po/ru.po
12
po/ru.po
@@ -8,7 +8,7 @@ msgstr ""
|
|||||||
"Project-Id-Version: cartridges\n"
|
"Project-Id-Version: cartridges\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
||||||
"PO-Revision-Date: 2023-05-24 20:27+0000\n"
|
"PO-Revision-Date: 2023-05-28 10:11+0000\n"
|
||||||
"Last-Translator: Сергей <asvmail.as@gmail.com>\n"
|
"Last-Translator: Сергей <asvmail.as@gmail.com>\n"
|
||||||
"Language-Team: Russian <https://hosted.weblate.org/projects/cartridges/"
|
"Language-Team: Russian <https://hosted.weblate.org/projects/cartridges/"
|
||||||
"cartridges/ru/>\n"
|
"cartridges/ru/>\n"
|
||||||
@@ -16,8 +16,8 @@ msgstr ""
|
|||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
|
||||||
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||||
"X-Generator: Weblate 4.18-dev\n"
|
"X-Generator: Weblate 4.18-dev\n"
|
||||||
|
|
||||||
#: data/hu.kramo.Cartridges.desktop.in:3
|
#: data/hu.kramo.Cartridges.desktop.in:3
|
||||||
@@ -75,11 +75,11 @@ msgstr "Отменить"
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:57
|
#: data/gtk/details_window.blp:57
|
||||||
msgid "New Cover"
|
msgid "New Cover"
|
||||||
msgstr ""
|
msgstr "Новая обложка"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:75
|
#: data/gtk/details_window.blp:75
|
||||||
msgid "Delete Cover"
|
msgid "Delete Cover"
|
||||||
msgstr ""
|
msgstr "Удалить обложку"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
||||||
#: data/gtk/game.blp:80
|
#: data/gtk/game.blp:80
|
||||||
@@ -108,7 +108,7 @@ msgstr "Файл для открытия или команда для запус
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:130
|
#: data/gtk/details_window.blp:130
|
||||||
msgid "More Info"
|
msgid "More Info"
|
||||||
msgstr ""
|
msgstr "Дополнительная информация"
|
||||||
|
|
||||||
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
||||||
msgid "Edit"
|
msgid "Edit"
|
||||||
|
|||||||
8
po/sv.po
8
po/sv.po
@@ -8,7 +8,7 @@ msgstr ""
|
|||||||
"Project-Id-Version: Cartridges\n"
|
"Project-Id-Version: Cartridges\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
||||||
"PO-Revision-Date: 2023-05-24 20:27+0000\n"
|
"PO-Revision-Date: 2023-06-02 15:40+0000\n"
|
||||||
"Last-Translator: micke <micke@users.noreply.hosted.weblate.org>\n"
|
"Last-Translator: micke <micke@users.noreply.hosted.weblate.org>\n"
|
||||||
"Language-Team: Swedish <https://hosted.weblate.org/projects/cartridges/"
|
"Language-Team: Swedish <https://hosted.weblate.org/projects/cartridges/"
|
||||||
"cartridges/sv/>\n"
|
"cartridges/sv/>\n"
|
||||||
@@ -73,11 +73,11 @@ msgstr "Avbryt"
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:57
|
#: data/gtk/details_window.blp:57
|
||||||
msgid "New Cover"
|
msgid "New Cover"
|
||||||
msgstr ""
|
msgstr "Nytt omslag"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:75
|
#: data/gtk/details_window.blp:75
|
||||||
msgid "Delete Cover"
|
msgid "Delete Cover"
|
||||||
msgstr ""
|
msgstr "Ta bort omslag"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
||||||
#: data/gtk/game.blp:80
|
#: data/gtk/game.blp:80
|
||||||
@@ -106,7 +106,7 @@ msgstr "Fil som ska öppnas eller kommando som ska köras när spelet startas"
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:130
|
#: data/gtk/details_window.blp:130
|
||||||
msgid "More Info"
|
msgid "More Info"
|
||||||
msgstr ""
|
msgstr "Mer info"
|
||||||
|
|
||||||
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
||||||
msgid "Edit"
|
msgid "Edit"
|
||||||
|
|||||||
8
po/ta.po
8
po/ta.po
@@ -9,7 +9,7 @@ msgstr ""
|
|||||||
"Project-Id-Version: Cartridges\n"
|
"Project-Id-Version: Cartridges\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
||||||
"PO-Revision-Date: 2023-05-24 20:27+0000\n"
|
"PO-Revision-Date: 2023-05-29 18:48+0000\n"
|
||||||
"Last-Translator: \"K.B.Dharun Krishna\" <kbdharunkrishna@gmail.com>\n"
|
"Last-Translator: \"K.B.Dharun Krishna\" <kbdharunkrishna@gmail.com>\n"
|
||||||
"Language-Team: Tamil <https://hosted.weblate.org/projects/cartridges/"
|
"Language-Team: Tamil <https://hosted.weblate.org/projects/cartridges/"
|
||||||
"cartridges/ta/>\n"
|
"cartridges/ta/>\n"
|
||||||
@@ -76,11 +76,11 @@ msgstr "ரத்துசெய்"
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:57
|
#: data/gtk/details_window.blp:57
|
||||||
msgid "New Cover"
|
msgid "New Cover"
|
||||||
msgstr ""
|
msgstr "புதிய அட்டை"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:75
|
#: data/gtk/details_window.blp:75
|
||||||
msgid "Delete Cover"
|
msgid "Delete Cover"
|
||||||
msgstr ""
|
msgstr "அட்டையை நீக்கு"
|
||||||
|
|
||||||
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
#: data/gtk/details_window.blp:101 data/gtk/details_window.blp:106
|
||||||
#: data/gtk/game.blp:80
|
#: data/gtk/game.blp:80
|
||||||
@@ -109,7 +109,7 @@ msgstr "விளையாட்டைத் தொடங்கும் போ
|
|||||||
|
|
||||||
#: data/gtk/details_window.blp:130
|
#: data/gtk/details_window.blp:130
|
||||||
msgid "More Info"
|
msgid "More Info"
|
||||||
msgstr ""
|
msgstr "மேலும் தகவல்"
|
||||||
|
|
||||||
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
#: data/gtk/game.blp:102 data/gtk/game.blp:121 data/gtk/window.blp:196
|
||||||
msgid "Edit"
|
msgid "Edit"
|
||||||
|
|||||||
12
po/uk.po
12
po/uk.po
@@ -9,8 +9,8 @@ msgstr ""
|
|||||||
"Project-Id-Version: cartridges\n"
|
"Project-Id-Version: cartridges\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
"POT-Creation-Date: 2023-05-25 17:48+0200\n"
|
||||||
"PO-Revision-Date: 2023-05-26 18:10+0000\n"
|
"PO-Revision-Date: 2023-06-03 18:51+0000\n"
|
||||||
"Last-Translator: Dan <denqwerta@gmail.com>\n"
|
"Last-Translator: Вова Смірнов <vovasmirnon5895@gmail.com>\n"
|
||||||
"Language-Team: Ukrainian <https://hosted.weblate.org/projects/cartridges/"
|
"Language-Team: Ukrainian <https://hosted.weblate.org/projects/cartridges/"
|
||||||
"cartridges/uk/>\n"
|
"cartridges/uk/>\n"
|
||||||
"Language: uk\n"
|
"Language: uk\n"
|
||||||
@@ -25,7 +25,7 @@ msgstr ""
|
|||||||
#: data/hu.kramo.Cartridges.metainfo.xml.in:6 data/gtk/window.blp:48
|
#: data/hu.kramo.Cartridges.metainfo.xml.in:6 data/gtk/window.blp:48
|
||||||
#: src/main.py:109
|
#: src/main.py:109
|
||||||
msgid "Cartridges"
|
msgid "Cartridges"
|
||||||
msgstr "Cartridges"
|
msgstr "Картриджі"
|
||||||
|
|
||||||
#: data/hu.kramo.Cartridges.desktop.in:4
|
#: data/hu.kramo.Cartridges.desktop.in:4
|
||||||
msgid "Game Launcher"
|
msgid "Game Launcher"
|
||||||
@@ -47,7 +47,7 @@ msgid ""
|
|||||||
"necessary. You can sort and hide games or download cover art from "
|
"necessary. You can sort and hide games or download cover art from "
|
||||||
"SteamGridDB."
|
"SteamGridDB."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Cartridges - це простий лаунчер для всіх ваших ігор. Він підтримує імпорт "
|
"Картриджі - це простий лаунчер для всіх ваших ігор. Він підтримує імпорт "
|
||||||
"ігор з Steam, Lutris, Heroic тощо без необхідності входу в систему. Ви "
|
"ігор з Steam, Lutris, Heroic тощо без необхідності входу в систему. Ви "
|
||||||
"можете сортувати та приховувати ігри або завантажувати обкладинки з "
|
"можете сортувати та приховувати ігри або завантажувати обкладинки з "
|
||||||
"SteamGridDB."
|
"SteamGridDB."
|
||||||
@@ -391,7 +391,7 @@ msgstr "Комбінації клавіш"
|
|||||||
|
|
||||||
#: data/gtk/window.blp:427
|
#: data/gtk/window.blp:427
|
||||||
msgid "About Cartridges"
|
msgid "About Cartridges"
|
||||||
msgstr "Про Cartridges"
|
msgstr "Про Картриджі"
|
||||||
|
|
||||||
#. Translators: Replace this with your name for it to show up in the about window
|
#. Translators: Replace this with your name for it to show up in the about window
|
||||||
#: src/main.py:127
|
#: src/main.py:127
|
||||||
@@ -418,7 +418,7 @@ msgstr "Ніколи"
|
|||||||
#. The variable is the date when the game was last played
|
#. The variable is the date when the game was last played
|
||||||
#: src/window.py:235
|
#: src/window.py:235
|
||||||
msgid "Last played: {}"
|
msgid "Last played: {}"
|
||||||
msgstr "Останній раз грали: {}"
|
msgstr "Востаннє грали: {}"
|
||||||
|
|
||||||
#: src/details_window.py:75
|
#: src/details_window.py:75
|
||||||
msgid "Apply"
|
msgid "Apply"
|
||||||
|
|||||||
1
src/__builtins__.pyi
Normal file
1
src/__builtins__.pyi
Normal file
@@ -0,0 +1 @@
|
|||||||
|
def _(_msg: str, /) -> str: ...
|
||||||
@@ -32,7 +32,7 @@ from .save_cover import resize_cover, save_cover
|
|||||||
from .steamgriddb import SGDBSave
|
from .steamgriddb import SGDBSave
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path="/hu/kramo/Cartridges/gtk/details_window.ui")
|
@Gtk.Template(resource_path=shared.PREFIX + "/gtk/details_window.ui")
|
||||||
class DetailsWindow(Adw.Window):
|
class DetailsWindow(Adw.Window):
|
||||||
__gtype_name__ = "DetailsWindow"
|
__gtype_name__ = "DetailsWindow"
|
||||||
|
|
||||||
|
|||||||
10
src/game.py
10
src/game.py
@@ -24,13 +24,13 @@ import subprocess
|
|||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from time import time
|
from time import time
|
||||||
|
|
||||||
from gi.repository import Adw, Gio, Gtk
|
from gi.repository import Adw, Gtk
|
||||||
|
|
||||||
from . import shared
|
from . import shared
|
||||||
from .game_cover import GameCover
|
from .game_cover import GameCover
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path="/hu/kramo/Cartridges/gtk/game.ui")
|
@Gtk.Template(resource_path=shared.PREFIX + "/gtk/game.ui")
|
||||||
class Game(Gtk.Box):
|
class Game(Gtk.Box):
|
||||||
__gtype_name__ = "Game"
|
__gtype_name__ = "Game"
|
||||||
|
|
||||||
@@ -65,7 +65,7 @@ class Game(Gtk.Box):
|
|||||||
|
|
||||||
self.win = shared.win
|
self.win = shared.win
|
||||||
self.app = self.win.get_application()
|
self.app = self.win.get_application()
|
||||||
self.version = shared.spec_version
|
self.version = shared.SPEC_VERSION
|
||||||
|
|
||||||
self.update_values(data)
|
self.update_values(data)
|
||||||
|
|
||||||
@@ -189,7 +189,7 @@ class Game(Gtk.Box):
|
|||||||
|
|
||||||
args = (
|
args = (
|
||||||
"flatpak-spawn --host /bin/sh -c " + shlex.quote(string) # Flatpak
|
"flatpak-spawn --host /bin/sh -c " + shlex.quote(string) # Flatpak
|
||||||
if os.getenv("FLATPAK_ID") == "hu.kramo.Cartridges"
|
if os.getenv("FLATPAK_ID") == shared.APP_ID
|
||||||
else string # Others
|
else string # Others
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -201,7 +201,7 @@ class Game(Gtk.Box):
|
|||||||
creationflags=subprocess.CREATE_NEW_PROCESS_GROUP if os.name == "nt" else 0,
|
creationflags=subprocess.CREATE_NEW_PROCESS_GROUP if os.name == "nt" else 0,
|
||||||
)
|
)
|
||||||
|
|
||||||
if Gio.Settings.new("hu.kramo.Cartridges").get_boolean("exit-after-launch"):
|
if shared.schema.get_boolean("exit-after-launch"):
|
||||||
self.app.quit()
|
self.app.quit()
|
||||||
|
|
||||||
# The variable is the title of the game
|
# The variable is the title of the game
|
||||||
|
|||||||
@@ -20,6 +20,8 @@
|
|||||||
from gi.repository import GdkPixbuf, Gio, GLib
|
from gi.repository import GdkPixbuf, Gio, GLib
|
||||||
from PIL import Image, ImageFilter, ImageStat
|
from PIL import Image, ImageFilter, ImageStat
|
||||||
|
|
||||||
|
from . import shared
|
||||||
|
|
||||||
|
|
||||||
class GameCover:
|
class GameCover:
|
||||||
pixbuf = None
|
pixbuf = None
|
||||||
@@ -30,7 +32,7 @@ class GameCover:
|
|||||||
anim_iter = None
|
anim_iter = None
|
||||||
|
|
||||||
placeholder_pixbuf = GdkPixbuf.Pixbuf.new_from_resource_at_scale(
|
placeholder_pixbuf = GdkPixbuf.Pixbuf.new_from_resource_at_scale(
|
||||||
"/hu/kramo/Cartridges/library_placeholder.svg", 400, 600, False
|
shared.PREFIX + "/library_placeholder.svg", 400, 600, False
|
||||||
)
|
)
|
||||||
|
|
||||||
def __init__(self, pictures, path=None):
|
def __init__(self, pictures, path=None):
|
||||||
@@ -91,7 +93,7 @@ class GameCover:
|
|||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
self.blurred = GdkPixbuf.Pixbuf.new_from_resource_at_scale(
|
self.blurred = GdkPixbuf.Pixbuf.new_from_resource_at_scale(
|
||||||
"/hu/kramo/Cartridges/library_placeholder.svg", 2, 2, False
|
shared.PREFIX + "/library_placeholder.svg", 2, 2, False
|
||||||
)
|
)
|
||||||
|
|
||||||
self.luminance = (0.1, 0.8)
|
self.luminance = (0.1, 0.8)
|
||||||
|
|||||||
@@ -28,16 +28,13 @@ from .check_install import check_install
|
|||||||
|
|
||||||
def bottles_installed(path=None):
|
def bottles_installed(path=None):
|
||||||
location_key = "bottles-location"
|
location_key = "bottles-location"
|
||||||
bottles_dir = (
|
|
||||||
path if path else Path(shared.schema.get_string(location_key)).expanduser()
|
|
||||||
)
|
|
||||||
check = "library.yml"
|
check = "library.yml"
|
||||||
|
|
||||||
if not (bottles_dir / check).is_file():
|
|
||||||
locations = (
|
locations = (
|
||||||
(Path(),)
|
(path,)
|
||||||
if path
|
if path
|
||||||
else (
|
else (
|
||||||
|
Path(shared.schema.get_string(location_key)).expanduser(),
|
||||||
Path.home() / ".var/app/com.usebottles.bottles/data/bottles",
|
Path.home() / ".var/app/com.usebottles.bottles/data/bottles",
|
||||||
shared.data_dir / "bottles",
|
shared.data_dir / "bottles",
|
||||||
)
|
)
|
||||||
@@ -86,15 +83,26 @@ def bottles_importer():
|
|||||||
values["added"] = current_time
|
values["added"] = current_time
|
||||||
values["last_played"] = 0
|
values["last_played"] = 0
|
||||||
|
|
||||||
importer.save_game(
|
# This will not work if both Cartridges and Bottles are installed via Flatpak
|
||||||
values,
|
# as Cartridges can't access directories picked via Bottles' file picker portal
|
||||||
(
|
try:
|
||||||
bottles_dir
|
bottles_location = Path(
|
||||||
/ "bottles"
|
yaml.safe_load((bottles_dir / "data.yml").read_text("utf-8"))[
|
||||||
|
"custom_bottles_path"
|
||||||
|
]
|
||||||
|
)
|
||||||
|
except (FileNotFoundError, KeyError):
|
||||||
|
bottles_location = bottles_dir / "bottles"
|
||||||
|
|
||||||
|
if game["thumbnail"]:
|
||||||
|
grid_path = (
|
||||||
|
bottles_location
|
||||||
/ game["bottle"]["path"]
|
/ game["bottle"]["path"]
|
||||||
/ "grids"
|
/ "grids"
|
||||||
/ game["thumbnail"].split(":")[1]
|
/ game["thumbnail"].split(":")[1]
|
||||||
)
|
)
|
||||||
if game["thumbnail"]
|
|
||||||
else None,
|
importer.save_game(
|
||||||
|
values,
|
||||||
|
grid_path if game["thumbnail"] and grid_path.is_file() else None,
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -29,16 +29,13 @@ from .check_install import check_install
|
|||||||
|
|
||||||
def heroic_installed(path=None):
|
def heroic_installed(path=None):
|
||||||
location_key = "heroic-location"
|
location_key = "heroic-location"
|
||||||
heroic_dir = (
|
|
||||||
path if path else Path(shared.schema.get_string(location_key)).expanduser()
|
|
||||||
)
|
|
||||||
check = "config.json"
|
check = "config.json"
|
||||||
|
|
||||||
if not (heroic_dir / check).is_file():
|
|
||||||
locations = (
|
locations = (
|
||||||
(Path(),)
|
(path,)
|
||||||
if path
|
if path
|
||||||
else (
|
else (
|
||||||
|
Path(shared.schema.get_string(location_key)).expanduser(),
|
||||||
Path.home() / ".var/app/com.heroicgameslauncher.hgl/config/heroic",
|
Path.home() / ".var/app/com.heroicgameslauncher.hgl/config/heroic",
|
||||||
shared.config_dir / "heroic",
|
shared.config_dir / "heroic",
|
||||||
)
|
)
|
||||||
@@ -63,7 +60,7 @@ def heroic_importer():
|
|||||||
# Import Epic games
|
# Import Epic games
|
||||||
if not shared.schema.get_boolean("heroic-import-epic"):
|
if not shared.schema.get_boolean("heroic-import-epic"):
|
||||||
pass
|
pass
|
||||||
elif (heroic_dir / "store_cache" / "legendary_library.json").exists():
|
elif (heroic_dir / "store_cache" / "legendary_library.json").is_file():
|
||||||
library = json.load(
|
library = json.load(
|
||||||
(heroic_dir / "store_cache" / "legendary_library.json").open()
|
(heroic_dir / "store_cache" / "legendary_library.json").open()
|
||||||
)
|
)
|
||||||
@@ -108,7 +105,7 @@ def heroic_importer():
|
|||||||
).hexdigest()
|
).hexdigest()
|
||||||
)
|
)
|
||||||
|
|
||||||
importer.save_game(values, image_path if image_path.exists() else None)
|
importer.save_game(values, image_path if image_path.is_file() else None)
|
||||||
|
|
||||||
except KeyError:
|
except KeyError:
|
||||||
pass
|
pass
|
||||||
@@ -116,9 +113,9 @@ def heroic_importer():
|
|||||||
# Import GOG games
|
# Import GOG games
|
||||||
if not shared.schema.get_boolean("heroic-import-gog"):
|
if not shared.schema.get_boolean("heroic-import-gog"):
|
||||||
pass
|
pass
|
||||||
elif (heroic_dir / "gog_store" / "installed.json").exists() and (
|
elif (heroic_dir / "gog_store" / "installed.json").is_file() and (
|
||||||
heroic_dir / "store_cache" / "gog_library.json"
|
heroic_dir / "store_cache" / "gog_library.json"
|
||||||
).exists():
|
).is_file():
|
||||||
installed = json.load((heroic_dir / "gog_store" / "installed.json").open())
|
installed = json.load((heroic_dir / "gog_store" / "installed.json").open())
|
||||||
|
|
||||||
importer.total_queue += len(installed["installed"])
|
importer.total_queue += len(installed["installed"])
|
||||||
@@ -161,12 +158,12 @@ def heroic_importer():
|
|||||||
values["added"] = current_time
|
values["added"] = current_time
|
||||||
values["last_played"] = 0
|
values["last_played"] = 0
|
||||||
|
|
||||||
importer.save_game(values, image_path if image_path.exists() else None)
|
importer.save_game(values, image_path if image_path.is_file() else None)
|
||||||
|
|
||||||
# Import sideloaded games
|
# Import sideloaded games
|
||||||
if not shared.schema.get_boolean("heroic-import-sideload"):
|
if not shared.schema.get_boolean("heroic-import-sideload"):
|
||||||
pass
|
pass
|
||||||
elif (heroic_dir / "sideload_apps" / "library.json").exists():
|
elif (heroic_dir / "sideload_apps" / "library.json").is_file():
|
||||||
library = json.load((heroic_dir / "sideload_apps" / "library.json").open())
|
library = json.load((heroic_dir / "sideload_apps" / "library.json").open())
|
||||||
|
|
||||||
importer.total_queue += len(library["games"])
|
importer.total_queue += len(library["games"])
|
||||||
@@ -201,4 +198,4 @@ def heroic_importer():
|
|||||||
/ sha256(item["art_square"].encode()).hexdigest()
|
/ sha256(item["art_square"].encode()).hexdigest()
|
||||||
)
|
)
|
||||||
|
|
||||||
importer.save_game(values, image_path if image_path.exists() else None)
|
importer.save_game(values, image_path if image_path.is_file() else None)
|
||||||
|
|||||||
@@ -123,16 +123,13 @@ def get_games_async(rows, importer):
|
|||||||
|
|
||||||
def itch_installed(path=None):
|
def itch_installed(path=None):
|
||||||
location_key = "itch-location"
|
location_key = "itch-location"
|
||||||
itch_dir = (
|
|
||||||
path if path else Path(shared.schema.get_string(location_key)).expanduser()
|
|
||||||
)
|
|
||||||
check = Path("db") / "butler.db"
|
check = Path("db") / "butler.db"
|
||||||
|
|
||||||
if not (itch_dir / check).is_file():
|
|
||||||
locations = (
|
locations = (
|
||||||
(Path(),)
|
(path,)
|
||||||
if path
|
if path
|
||||||
else (
|
else (
|
||||||
|
Path(shared.schema.get_string(location_key)).expanduser(),
|
||||||
Path.home() / ".var/app/io.itch.itch/config/itch",
|
Path.home() / ".var/app/io.itch.itch/config/itch",
|
||||||
shared.config_dir / "itch",
|
shared.config_dir / "itch",
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -28,16 +28,13 @@ from .check_install import check_install
|
|||||||
|
|
||||||
def lutris_installed(path=None):
|
def lutris_installed(path=None):
|
||||||
location_key = "lutris-location"
|
location_key = "lutris-location"
|
||||||
lutris_dir = (
|
|
||||||
path if path else Path(shared.schema.get_string(location_key)).expanduser()
|
|
||||||
)
|
|
||||||
check = "pga.db"
|
check = "pga.db"
|
||||||
|
|
||||||
if not (lutris_dir / check).is_file():
|
|
||||||
locations = (
|
locations = (
|
||||||
(Path(),)
|
(path,)
|
||||||
if path
|
if path
|
||||||
else (
|
else (
|
||||||
|
Path(shared.schema.get_string(location_key)).expanduser(),
|
||||||
Path.home() / ".var/app/net.lutris.Lutris/data/lutris",
|
Path.home() / ".var/app/net.lutris.Lutris/data/lutris",
|
||||||
shared.data_dir / "lutris",
|
shared.data_dir / "lutris",
|
||||||
)
|
)
|
||||||
@@ -50,22 +47,19 @@ def lutris_installed(path=None):
|
|||||||
|
|
||||||
def lutris_cache_exists(path=None):
|
def lutris_cache_exists(path=None):
|
||||||
cache_key = "lutris-cache-location"
|
cache_key = "lutris-cache-location"
|
||||||
cache_dir = path if path else Path(shared.schema.get_string(cache_key)).expanduser()
|
|
||||||
cache_check = "coverart"
|
cache_check = "coverart"
|
||||||
|
|
||||||
if not (cache_dir / cache_check).exists():
|
|
||||||
cache_locations = (
|
cache_locations = (
|
||||||
(Path(),)
|
(path,)
|
||||||
if path
|
if path
|
||||||
else (
|
else (
|
||||||
|
Path(shared.schema.get_string(cache_key)).expanduser(),
|
||||||
Path.home() / ".var" / "app" / "net.lutris.Lutris" / "cache" / "lutris",
|
Path.home() / ".var" / "app" / "net.lutris.Lutris" / "cache" / "lutris",
|
||||||
shared.cache_dir / "lutris",
|
shared.cache_dir / "lutris",
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
cache_dir = check_install(
|
cache_dir = check_install(cache_check, cache_locations, (shared.schema, cache_key))
|
||||||
cache_check, cache_locations, (shared.schema, cache_key)
|
|
||||||
)
|
|
||||||
|
|
||||||
return cache_dir
|
return cache_dir
|
||||||
|
|
||||||
@@ -137,4 +131,4 @@ def lutris_importer():
|
|||||||
values["source"] = f"lutris_{row[3]}"
|
values["source"] = f"lutris_{row[3]}"
|
||||||
|
|
||||||
image_path = cache_dir / "coverart" / f"{row[2]}.jpg"
|
image_path = cache_dir / "coverart" / f"{row[2]}.jpg"
|
||||||
importer.save_game(values, image_path if image_path.exists() else None)
|
importer.save_game(values, image_path if image_path.is_file() else None)
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ def update_values_from_data(content, values):
|
|||||||
if data.get("developers"):
|
if data.get("developers"):
|
||||||
values["developer"] = ", ".join(data["developers"])
|
values["developer"] = ", ".join(data["developers"])
|
||||||
|
|
||||||
if data.get("type") != "game":
|
if data.get("type") not in {"game", "demo"}:
|
||||||
values["blacklisted"] = True
|
values["blacklisted"] = True
|
||||||
|
|
||||||
return values
|
return values
|
||||||
@@ -90,11 +90,11 @@ def get_game(task, datatypes, current_time, appmanifest, steam_dir):
|
|||||||
open_file.raise_for_status()
|
open_file.raise_for_status()
|
||||||
content = open_file.json()
|
content = open_file.json()
|
||||||
except requests.exceptions.RequestException:
|
except requests.exceptions.RequestException:
|
||||||
task.return_value((values, image_path if image_path.exists() else None))
|
task.return_value((values, image_path if image_path.is_file() else None))
|
||||||
return
|
return
|
||||||
|
|
||||||
values = update_values_from_data(content, values)
|
values = update_values_from_data(content, values)
|
||||||
task.return_value((values, image_path if image_path.exists() else None))
|
task.return_value((values, image_path if image_path.is_file() else None))
|
||||||
|
|
||||||
|
|
||||||
def get_games_async(appmanifests, steam_dir, importer):
|
def get_games_async(appmanifests, steam_dir, importer):
|
||||||
@@ -126,16 +126,14 @@ def get_games_async(appmanifests, steam_dir, importer):
|
|||||||
|
|
||||||
def steam_installed(path=None):
|
def steam_installed(path=None):
|
||||||
location_key = "steam-location"
|
location_key = "steam-location"
|
||||||
steam_dir = Path(shared.schema.get_string(location_key)).expanduser()
|
|
||||||
check = "steamapps"
|
check = "steamapps"
|
||||||
|
|
||||||
if not (steam_dir / check).is_file():
|
|
||||||
subdirs = ("steam", "Steam")
|
subdirs = ("steam", "Steam")
|
||||||
locations = (
|
locations = (
|
||||||
(path,)
|
(path,)
|
||||||
if path
|
if path
|
||||||
else (
|
else (
|
||||||
steam_dir,
|
Path(shared.schema.get_string(location_key)).expanduser(),
|
||||||
Path.home() / ".steam",
|
Path.home() / ".steam",
|
||||||
shared.data_dir / "Steam",
|
shared.data_dir / "Steam",
|
||||||
Path.home() / ".var/app/com.valvesoftware.Steam/data/Steam",
|
Path.home() / ".var/app/com.valvesoftware.Steam/data/Steam",
|
||||||
@@ -145,9 +143,7 @@ def steam_installed(path=None):
|
|||||||
if os.name == "nt":
|
if os.name == "nt":
|
||||||
locations += (Path(os.getenv("programfiles(x86)")) / "Steam",)
|
locations += (Path(os.getenv("programfiles(x86)")) / "Steam",)
|
||||||
|
|
||||||
steam_dir = check_install(
|
steam_dir = check_install(check, locations, (shared.schema, location_key), subdirs)
|
||||||
check, locations, (shared.schema, location_key), subdirs
|
|
||||||
)
|
|
||||||
|
|
||||||
return steam_dir
|
return steam_dir
|
||||||
|
|
||||||
@@ -168,13 +164,12 @@ def steam_importer():
|
|||||||
steam_dirs = [steam_dir]
|
steam_dirs = [steam_dir]
|
||||||
|
|
||||||
for directory in steam_dirs:
|
for directory in steam_dirs:
|
||||||
if not (directory / "steamapps").exists():
|
try:
|
||||||
steam_dirs.remove(directory)
|
|
||||||
|
|
||||||
for directory in steam_dirs:
|
|
||||||
for open_file in (directory / "steamapps").iterdir():
|
for open_file in (directory / "steamapps").iterdir():
|
||||||
if open_file.is_file() and "appmanifest" in open_file.name:
|
if open_file.is_file() and "appmanifest" in open_file.name:
|
||||||
appmanifests.append(open_file)
|
appmanifests.append(open_file)
|
||||||
|
except FileNotFoundError:
|
||||||
|
continue
|
||||||
|
|
||||||
importer = shared.importer
|
importer = shared.importer
|
||||||
importer.total_queue += len(appmanifests)
|
importer.total_queue += len(appmanifests)
|
||||||
|
|||||||
@@ -44,12 +44,12 @@ class CartridgesApplication(Adw.Application):
|
|||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
super().__init__(
|
super().__init__(
|
||||||
application_id="hu.kramo.Cartridges", flags=Gio.ApplicationFlags.FLAGS_NONE
|
application_id=shared.APP_ID, flags=Gio.ApplicationFlags.FLAGS_NONE
|
||||||
)
|
)
|
||||||
|
|
||||||
def do_activate(self): # pylint: disable=arguments-differ
|
def do_activate(self): # pylint: disable=arguments-differ
|
||||||
# Set fallback icon-name
|
# Set fallback icon-name
|
||||||
Gtk.Window.set_default_icon_name("hu.kramo.Cartridges")
|
Gtk.Window.set_default_icon_name(shared.APP_ID)
|
||||||
|
|
||||||
# Create the main window
|
# Create the main window
|
||||||
self.win = self.props.active_window # pylint: disable=no-member
|
self.win = self.props.active_window # pylint: disable=no-member
|
||||||
@@ -110,9 +110,9 @@ class CartridgesApplication(Adw.Application):
|
|||||||
about = Adw.AboutWindow(
|
about = Adw.AboutWindow(
|
||||||
transient_for=self.win,
|
transient_for=self.win,
|
||||||
application_name=_("Cartridges"),
|
application_name=_("Cartridges"),
|
||||||
application_icon="hu.kramo.Cartridges",
|
application_icon=shared.APP_ID,
|
||||||
developer_name="kramo",
|
developer_name="kramo",
|
||||||
version="1.5.2",
|
version=shared.VERSION,
|
||||||
developers=[
|
developers=[
|
||||||
"kramo https://kramo.hu",
|
"kramo https://kramo.hu",
|
||||||
"Arcitec https://github.com/Arcitec",
|
"Arcitec https://github.com/Arcitec",
|
||||||
|
|||||||
@@ -1,13 +1,5 @@
|
|||||||
moduledir = join_paths(pkgdatadir, 'cartridges')
|
moduledir = join_paths(pkgdatadir, 'cartridges')
|
||||||
|
|
||||||
python = import('python')
|
|
||||||
|
|
||||||
conf = configuration_data()
|
|
||||||
conf.set('PYTHON', python.find_installation('python3').path())
|
|
||||||
conf.set('VERSION', meson.project_version())
|
|
||||||
conf.set('localedir', join_paths(get_option('prefix'), get_option('localedir')))
|
|
||||||
conf.set('pkgdatadir', pkgdatadir)
|
|
||||||
|
|
||||||
configure_file(
|
configure_file(
|
||||||
input: 'cartridges.in',
|
input: 'cartridges.in',
|
||||||
output: 'cartridges',
|
output: 'cartridges',
|
||||||
@@ -17,6 +9,11 @@ configure_file(
|
|||||||
)
|
)
|
||||||
|
|
||||||
cartridges_sources = [
|
cartridges_sources = [
|
||||||
|
configure_file(
|
||||||
|
input: 'shared.py.in',
|
||||||
|
output: 'shared.py',
|
||||||
|
configuration: conf
|
||||||
|
),
|
||||||
'__init__.py',
|
'__init__.py',
|
||||||
'main.py',
|
'main.py',
|
||||||
'window.py',
|
'window.py',
|
||||||
@@ -24,7 +21,6 @@ cartridges_sources = [
|
|||||||
'details_window.py',
|
'details_window.py',
|
||||||
'game.py',
|
'game.py',
|
||||||
'game_cover.py',
|
'game_cover.py',
|
||||||
'shared.py',
|
|
||||||
'importers/steam_importer.py',
|
'importers/steam_importer.py',
|
||||||
'importers/lutris_importer.py',
|
'importers/lutris_importer.py',
|
||||||
'importers/heroic_importer.py',
|
'importers/heroic_importer.py',
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ from .lutris_importer import lutris_cache_exists, lutris_installed
|
|||||||
from .steam_importer import steam_installed
|
from .steam_importer import steam_installed
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path="/hu/kramo/Cartridges/gtk/preferences.ui")
|
@Gtk.Template(resource_path=shared.PREFIX + "/gtk/preferences.ui")
|
||||||
class PreferencesWindow(Adw.PreferencesWindow):
|
class PreferencesWindow(Adw.PreferencesWindow):
|
||||||
__gtype_name__ = "PreferencesWindow"
|
__gtype_name__ = "PreferencesWindow"
|
||||||
|
|
||||||
@@ -126,7 +126,7 @@ class PreferencesWindow(Adw.PreferencesWindow):
|
|||||||
if response == "choose_folder":
|
if response == "choose_folder":
|
||||||
self.choose_folder(widget, set_cache_dir)
|
self.choose_folder(widget, set_cache_dir)
|
||||||
|
|
||||||
if lutris_cache_exists(self.win, path):
|
if lutris_cache_exists(path):
|
||||||
self.import_changed = True
|
self.import_changed = True
|
||||||
self.set_subtitle(self, "lutris-cache")
|
self.set_subtitle(self, "lutris-cache")
|
||||||
|
|
||||||
@@ -257,7 +257,7 @@ class PreferencesWindow(Adw.PreferencesWindow):
|
|||||||
getattr(win, f'{source_id.replace("-", "_")}_action_row').set_subtitle(
|
getattr(win, f'{source_id.replace("-", "_")}_action_row').set_subtitle(
|
||||||
# Remove the path if the dir is picked via the Flatpak portal
|
# Remove the path if the dir is picked via the Flatpak portal
|
||||||
re.sub(
|
re.sub(
|
||||||
"/run/user/\\d*/doc/......../",
|
"/run/user/\\d*/doc/.*/",
|
||||||
"",
|
"",
|
||||||
str(
|
str(
|
||||||
Path(shared.schema.get_string(f"{source_id}-location")).expanduser()
|
Path(shared.schema.get_string(f"{source_id}-location")).expanduser()
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# shared.py
|
# shared.py.in
|
||||||
#
|
#
|
||||||
# Copyright 2022-2023 kramo
|
# Copyright 2022-2023 kramo
|
||||||
#
|
#
|
||||||
@@ -22,8 +22,13 @@ from pathlib import Path
|
|||||||
|
|
||||||
from gi.repository import Gdk, Gio
|
from gi.repository import Gdk, Gio
|
||||||
|
|
||||||
schema = Gio.Settings.new("hu.kramo.Cartridges")
|
APP_ID = "@APP_ID@"
|
||||||
state_schema = Gio.Settings.new("hu.kramo.Cartridges.State")
|
VERSION = "@VERSION@"
|
||||||
|
PREFIX = "@PREFIX@"
|
||||||
|
SPEC_VERSION = 1.5 # The version of the game_id.json spec
|
||||||
|
|
||||||
|
schema = Gio.Settings.new(APP_ID)
|
||||||
|
state_schema = Gio.Settings.new(APP_ID + ".State")
|
||||||
|
|
||||||
data_dir = (
|
data_dir = (
|
||||||
Path(os.getenv("XDG_DATA_HOME"))
|
Path(os.getenv("XDG_DATA_HOME"))
|
||||||
@@ -52,4 +57,3 @@ image_size = (200 * scale_factor, 300 * scale_factor)
|
|||||||
# pylint: disable=invalid-name
|
# pylint: disable=invalid-name
|
||||||
win = None
|
win = None
|
||||||
importer = None
|
importer = None
|
||||||
spec_version = 1.5 # The version of the game_id.json spec
|
|
||||||
@@ -23,10 +23,9 @@ from pathlib import Path
|
|||||||
def check_install(check, locations, setting=None, subdirs=(Path(),)):
|
def check_install(check, locations, setting=None, subdirs=(Path(),)):
|
||||||
for location in locations:
|
for location in locations:
|
||||||
for subdir in (Path(),) + subdirs:
|
for subdir in (Path(),) + subdirs:
|
||||||
if (location / subdir / check).is_file() or (
|
if (location / subdir / check).exists():
|
||||||
location / subdir / check
|
|
||||||
).exists():
|
|
||||||
if setting:
|
if setting:
|
||||||
setting[0].set_string(setting[1], str(location / subdir))
|
setting[0].set_string(setting[1], str(location / subdir))
|
||||||
|
|
||||||
return location / subdir
|
return location / subdir
|
||||||
|
|
||||||
|
return False
|
||||||
|
|||||||
@@ -20,13 +20,13 @@
|
|||||||
import json
|
import json
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
from gi.repository import Adw, Gio, GLib, Gtk
|
from gi.repository import Adw, GLib, Gtk
|
||||||
|
|
||||||
from . import shared
|
from . import shared
|
||||||
from .game import Game
|
from .game import Game
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path="/hu/kramo/Cartridges/gtk/window.ui")
|
@Gtk.Template(resource_path=shared.PREFIX + "/gtk/window.ui")
|
||||||
class CartridgesWindow(Adw.ApplicationWindow):
|
class CartridgesWindow(Adw.ApplicationWindow):
|
||||||
__gtype_name__ = "CartridgesWindow"
|
__gtype_name__ = "CartridgesWindow"
|
||||||
|
|
||||||
@@ -92,15 +92,20 @@ class CartridgesWindow(Adw.ApplicationWindow):
|
|||||||
|
|
||||||
self.set_library_child()
|
self.set_library_child()
|
||||||
|
|
||||||
|
self.notice_empty.set_icon_name(shared.APP_ID + "-symbolic")
|
||||||
|
|
||||||
|
if "Devel" in shared.APP_ID:
|
||||||
|
self.add_css_class("devel")
|
||||||
|
|
||||||
games = {}
|
games = {}
|
||||||
|
|
||||||
if shared.games_dir.exists():
|
if shared.games_dir.is_dir():
|
||||||
for open_file in shared.games_dir.iterdir():
|
for open_file in shared.games_dir.iterdir():
|
||||||
data = json.load(open_file.open())
|
data = json.load(open_file.open())
|
||||||
games[data["game_id"]] = data
|
games[data["game_id"]] = data
|
||||||
|
|
||||||
for game_id, game in games.items():
|
for game_id, game in games.items():
|
||||||
if (version := game.get("version")) and version > shared.spec_version:
|
if (version := game.get("version")) and version > shared.SPEC_VERSION:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
if game.get("removed"):
|
if game.get("removed"):
|
||||||
@@ -318,9 +323,7 @@ class CartridgesWindow(Adw.ApplicationWindow):
|
|||||||
self.sort_state = str(state).strip("'")
|
self.sort_state = str(state).strip("'")
|
||||||
self.library.invalidate_sort()
|
self.library.invalidate_sort()
|
||||||
|
|
||||||
Gio.Settings(schema_id="hu.kramo.Cartridges.State").set_string(
|
shared.state_schema.set_string("sort-mode", self.sort_state)
|
||||||
"sort-mode", self.sort_state
|
|
||||||
)
|
|
||||||
|
|
||||||
def on_toggle_search_action(self, *_args):
|
def on_toggle_search_action(self, *_args):
|
||||||
if self.stack.get_visible_child() == self.library_view:
|
if self.stack.get_visible_child() == self.library_view:
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#define MyAppName "Cartridges"
|
#define MyAppName "Cartridges"
|
||||||
#define MyAppVersion "1.5.2"
|
#define MyAppVersion "1.5.6"
|
||||||
#define MyAppPublisher "kramo"
|
#define MyAppPublisher "kramo"
|
||||||
#define MyAppURL "https://github.com/kra-mo/cartridges"
|
#define MyAppURL "https://github.com/kra-mo/cartridges"
|
||||||
#define MyAppExeName "pythonw.exe"
|
#define MyAppExeName "pythonw.exe"
|
||||||
|
Before Width: | Height: | Size: 169 KiB After Width: | Height: | Size: 169 KiB |
Reference in New Issue
Block a user