├── README.md
├── appcast.xml
├── appcast_arm64.xml
├── appcasttest.xml
├── onlineinstall.sh
└── release_notes
├── v0.1.2.md
├── v0.2.0.md
├── v0.2.1.md
├── v0.2.2.md
├── v0.2.3.md
├── v0.2.4.md
├── v0.2.5.md
└── v0.2.6.md
/README.md:
--------------------------------------------------------------------------------
1 | # QLoaderFiles
--------------------------------------------------------------------------------
/appcast.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Loader
5 | https://raw.githubusercontent.com/skrimix/QLoaderFiles/master/appcast.xml
6 | Most recent changes with links to updates.
7 | en
8 | -
9 | Version 0.1.2 Linux
10 |
11 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.1.2.md
12 |
13 | Tue, 12 Apr 2022 12:04:00 +0000
14 |
20 |
21 | -
22 | Version 0.1.2 Mac
23 |
24 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.1.2.md
25 |
26 | Tue, 12 Apr 2022 12:04:00 +0000
27 |
33 |
34 |
35 | -
36 | Version 0.2.0 Linux
37 |
38 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.0.md
39 |
40 | Mon, 04 Jul 2022 17:42:00 +0000
41 |
47 |
48 | -
49 | Version 0.2.0 Mac
50 |
51 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.0.md
52 |
53 | Mon, 04 Jul 2022 17:42:00 +0000
54 |
60 |
61 |
62 | -
63 | Version 0.2.1 Linux
64 |
65 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.1.md
66 |
67 | Wed, 13 Jul 2022 20:05:00 +0000
68 |
74 |
75 | -
76 | Version 0.2.1 Mac
77 |
78 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.1.md
79 |
80 | Wed, 13 Jul 2022 20:05:00 +0000
81 |
87 |
88 |
89 | -
90 | Version 0.2.2 Linux
91 |
92 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.2.md
93 |
94 | Sun, 14 Aug 2022 20:53:00 +0000
95 |
101 |
102 | -
103 | Version 0.2.2 Mac
104 |
105 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.2.md
106 |
107 | Sun, 14 Aug 2022 20:53:00 +0000
108 |
114 |
115 |
116 | -
117 | Version 0.2.3 Linux
118 |
119 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.3.md
120 |
121 | Wed, 17 Aug 2022 22:23:38 +0000
122 |
128 |
129 | -
130 | Version 0.2.3 Mac
131 |
132 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.3.md
133 |
134 | Wed, 17 Aug 2022 22:23:38 +0000
135 |
141 |
142 |
143 | -
144 | Version 0.2.4 Linux
145 |
146 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.4.md
147 |
148 | Sat, 01 Oct 2022 09:59:29 +0000
149 |
155 |
156 | -
157 | Version 0.2.4 Mac
158 |
159 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.4.md
160 |
161 | Sat, 01 Oct 2022 09:59:29 +0000
162 |
168 |
169 |
170 | -
171 | Version 0.2.5 Linux
172 |
173 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.5.md
174 |
175 | Sat, 08 Oct 2022 15:34:10 +0000
176 |
182 |
183 | -
184 | Version 0.2.5 Mac
185 |
186 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.5.md
187 |
188 | Sat, 08 Oct 2022 15:34:10 +0000
189 |
195 |
196 |
197 | -
198 | Version 0.2.6 Linux
199 |
200 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.6.md
201 |
202 | Tue, 22 Nov 2022 12:34:13 +0000
203 |
209 |
210 | -
211 | Version 0.2.6 Mac
212 |
213 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.6.md
214 |
215 | Tue, 22 Nov 2022 12:34:13 +0000
216 |
222 |
223 |
224 |
225 |
--------------------------------------------------------------------------------
/appcast_arm64.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Loader
5 | https://raw.githubusercontent.com/skrimix/QLoaderFiles/master/appcast_arm64.xml
6 | Most recent changes with links to updates.
7 | en
8 |
9 | -
10 | Version 0.2.1 Linux arm64
11 |
12 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.1.md
13 |
14 | Wed, 13 Jul 2022 20:05:00 +0000
15 |
21 |
22 | -
23 | Version 0.2.2 Linux arm64
24 |
25 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.2.md
26 |
27 | Sun, 14 Aug 2022 21:00:00 +0000
28 |
34 |
35 | -
36 | Version 0.2.3 Linux arm64
37 |
38 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.3.md
39 |
40 | Wed, 17 Aug 2022 22:23:38 +0000
41 |
47 |
48 | -
49 | Version 0.2.4 Linux arm64
50 |
51 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.4.md
52 |
53 | Sat, 01 Oct 2022 09:59:29 +0000
54 |
60 |
61 | -
62 | Version 0.2.5 Linux arm64
63 |
64 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.5.md
65 |
66 | Sat, 08 Oct 2022 15:34:10 +0000
67 |
73 |
74 | -
75 | Version 0.2.6 Linux arm64
76 |
77 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.6.md
78 |
79 | Tue, 22 Nov 2022 12:34:13 +0000
80 |
86 |
87 |
88 |
--------------------------------------------------------------------------------
/appcasttest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Loader test
5 | https://raw.githubusercontent.com/skrimix/QLoaderFiles/master/appcasttest.xml
6 | Most recent changes with links to updates.
7 | en
8 | -
9 | Version 0.2.2 Linux
10 |
11 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.2.md
12 |
13 | Sun, 14 Aug 2022 15:30:00 +0000
14 |
20 |
21 | -
22 | Version 0.2.2 Mac
23 |
24 | https://github.com/skrimix/QLoaderFiles/raw/master/release_notes/v0.2.2.md
25 |
26 | Sun, 14 Aug 2022 15:30:00 +0000
27 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/onlineinstall.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | set -eu
4 | trap 'echo "Script failed with exit code $?."' EXIT
5 |
6 | macos_install() {
7 | echo -e "\nDetecting processor architecture..."
8 | arch_name=$(uname -m)
9 | if [ "${arch_name}" = "x86_64" ]; then
10 | if [ "$(sysctl -in sysctl.proc_translated)" = "1" ]; then
11 | echo "Running on Rosetta 2"
12 | echo "No native support for arm64 yet, will use Rosetta 2"
13 | #ARCH="arm64"
14 | ARCH="x64"
15 | else
16 | echo "Running on native Intel"
17 | ARCH="x64"
18 | fi
19 | elif [ "${arch_name}" = "arm64" ]; then
20 | echo "Running on M1"
21 | echo "No native support for arm64 yet, will need Rosetta 2"
22 | #ARCH="arm64"
23 | ARCH="x64"
24 | else
25 | echo "Unknown architecture: ${arch_name}"
26 | exit 1
27 | fi
28 |
29 | #if [ "$ARCH" = "arm64" ]; then
30 | #while true; do
31 | # read -p "Do you want to install the native M1 version of the Loader? (y/n) " yn
32 | # case $yn in
33 | # [Yy]* ) break;;
34 | # [Nn]* ) ARCH="x64"; break;;
35 | # * ) echo "Please answer yes or no.";;
36 | # esac
37 | #done
38 | #fi
39 | echo "Using $ARCH architecture"
40 |
41 | echo -e "\nSelect installation directory:"
42 | # open folder picking dialog, set path to Desktop if fails
43 | TARGETPATH="$(osascript -l JavaScript -e 'a=Application.currentApplication();a.includeStandardAdditions=true;a.chooseFolder({withPrompt:"Select installation directory:"}).toString()')" || { echo "Failed to select directory, setting to Desktop"; TARGETPATH="/Users/$(whoami)/Desktop"; }
44 | # Add trailing slash if not present
45 | if [ "${TARGETPATH: -1}" != "/" ]; then
46 | TARGETPATH="$TARGETPATH/"
47 | fi
48 | echo "Selected installation path: $TARGETPATH"
49 |
50 | while true; do
51 | read -p "Do you want to install the Loader to the selected directory? (y/n) " yn
52 | case $yn in
53 | [Yy]* ) break;;
54 | [Nn]* ) echo "Installation cancelled."; exit;;
55 | * ) echo "Please answer yes or no.";;
56 | esac
57 | done
58 |
59 | while true; do
60 | read -p "Do you want to install optional trailers add-on (~1GB)? (y/n) " yn
61 | case $yn in
62 | [Yy]* ) TRAILERS=1;break;;
63 | [Nn]* ) TRAILERS=0;break;;
64 | * ) echo "Please answer yes or no.";;
65 | esac
66 | done
67 |
68 |
69 | echo -e "\nDownloading latest release for macOS ${ARCH}..."
70 | curl --fail -L "https://github.com/skrimix/QLoaderFiles/releases/latest/download/osx-$ARCH.zip" -o "/tmp/osx-$ARCH.zip"
71 | echo "Download complete"
72 |
73 | echo "Installing"
74 | if [ -d /tmp/osx-$ARCH ]; then
75 | rm -rf /tmp/osx-$ARCH
76 | fi
77 | unzip -q "/tmp/osx-$ARCH.zip" -d /tmp/osx-$ARCH
78 | rm "/tmp/osx-$ARCH.zip"
79 | cp -rf "/tmp/osx-$ARCH/." "${TARGETPATH}Loader/"
80 | rm -r "/tmp/osx-$ARCH"
81 |
82 | if [ "$TRAILERS" = "1" ]; then
83 | echo "Downloading trailers add-on..."
84 | curl --fail -L "https://github.com/skrimix/QLoaderFiles/releases/latest/download/TrailersAddon.zip" -o "/tmp/TrailersAddon.zip"
85 | echo "Download complete"
86 | echo "Copying trailers add-on to installation directory. Loader will install it on first start."
87 | mv -f "/tmp/TrailersAddon.zip" "${TARGETPATH}Loader/TrailersAddon.zip"
88 | fi
89 |
90 | # Just in case
91 | echo "Removing quarantine attrs"
92 | xattr -rd com.apple.quarantine "${TARGETPATH}Loader/"
93 |
94 | echo -e "\nInstallation completed\nLoader has been installed to ${TARGETPATH}Loader/"
95 | echo -e "You can start it by double-clicking the Loader executable in Finder.\n"
96 | }
97 |
98 | linux_install() {
99 | echo -e "\nDetecting processor architecture..."
100 | arch_name=$(uname -m)
101 | if [ "${arch_name}" = "x86_64" ]; then
102 | if [ "$(getconf LONG_BIT)" == "32" ]; then
103 | echo "You are running x86 Linux"
104 | echo "Loader only supports x64 and arm64 Linux"
105 | exit 1
106 | fi
107 | echo "Running on x64"
108 | ARCH="x64"
109 | elif [ "${arch_name}" = "arm64" ]; then
110 | echo "Running on arm64"
111 | ARCH="arm64"
112 | else
113 | echo "Unknown architecture: ${arch_name}"
114 | exit 1
115 | fi
116 |
117 | echo -e "\nEnter installation directory path or leave empty to install to current directory:"
118 | read TARGETPATH
119 | if [ -z "$TARGETPATH" ]; then
120 | TARGETPATH=$(pwd)
121 | fi
122 | # Check if directory exists
123 | if [ ! -d "$TARGETPATH" ]; then
124 | echo "Directory $TARGETPATH does not exist"
125 | exit 1
126 | fi
127 | # Add trailing slash if not present
128 | if [ "${TARGETPATH: -1}" != "/" ]; then
129 | TARGETPATH="$TARGETPATH/"
130 | fi
131 |
132 | echo "Selected installation path: $TARGETPATH"
133 | while true; do
134 | read -p "Do you want to install the Loader to the selected directory? (y/n) " yn
135 | case $yn in
136 | [Yy]* ) break;;
137 | [Nn]* ) exit;;
138 | * ) echo "Please answer yes or no.";;
139 | esac
140 | done
141 |
142 | while true; do
143 | read -p "Do you want to install optional trailers add-on (~1GB)? (y/n) " yn
144 | case $yn in
145 | [Yy]* ) TRAILERS=1;break;;
146 | [Nn]* ) TRAILERS=0;break;;
147 | * ) echo "Please answer yes or no.";;
148 | esac
149 | done
150 |
151 | echo -e "\nDownloading latest release for Linux ${ARCH}..."
152 | curl --fail -L "https://github.com/skrimix/QLoaderFiles/releases/latest/download/linux-$ARCH.tar.gz" -o /tmp/linux-$ARCH.tar.gz
153 | echo "Download complete"
154 |
155 | echo "Installing"
156 | if [ -d /tmp/linux-$ARCH ]; then
157 | rm -rf /tmp/linux-$ARCH
158 | fi
159 | tar xf "/tmp/linux-$ARCH.tar.gz" -C /tmp
160 | rm "/tmp/linux-$ARCH.tar.gz"
161 | cp -rf "/tmp/linux-$ARCH/." "${TARGETPATH}Loader/"
162 | rm -r "/tmp/linux-$ARCH"
163 |
164 | if [ "$TRAILERS" = "1" ]; then
165 | echo "Downloading trailers add-on..."
166 | curl --fail -L "https://github.com/skrimix/QLoaderFiles/releases/latest/download/TrailersAddon.zip" -o /tmp/TrailersAddon.zip
167 | echo "Download complete"
168 | echo "Copying trailers add-on to installation directory. Loader will install it on first start."
169 | mv -f "/tmp/TrailersAddon.zip" "${TARGETPATH}Loader/TrailersAddon.zip"
170 |
171 | echo "NOTE: You need to have VLC player installed to use trailers add-on."
172 | # If we are running on Arch, show message with it's package names
173 | if [ -f /etc/pacman.conf ]; then
174 | echo "You may also need to install libx11 (from extra repository) and libvlc (from AUR)"
175 | # Else show message with debian package names
176 | else
177 | echo "You may also need to install libx11-dev and libvlc-dev packages."
178 | fi
179 | fi
180 |
181 | while true; do
182 | read -p "Do you want to create a desktop entry? (y/n) " yn
183 | case $yn in
184 | [Yy]* ) CREATESHORTCUT=1;break;;
185 | [Nn]* ) CREATESHORTCUT=0;break;;
186 | * ) echo "Please answer yes or no.";;
187 | esac
188 | done
189 |
190 | if [ "$CREATESHORTCUT" = "1" ]; then
191 | echo "Creating desktop entry..."
192 | if [ ! -d ~/.local/share/applications ]; then
193 | mkdir -p ~/.local/share/applications
194 | fi
195 | cat > ~/.local/share/applications/com.ffa.qloader.desktop <100% progress (probably will just stay at 100%)
24 | - "No mirrors available for this ..." message now includes number of excluded mirrors (mirrors that are reported as dead by the API or failed to load game list from)
25 | - Details for download failer errors include list of errors occured during download
26 | - Metadata from release.json is used on drag and drop
27 | - Other minor improvements
--------------------------------------------------------------------------------