3
3
4
4
%global libnbtplusplus_commit dc72a20b7efd304d12af2025223fad07b4b78464
5
5
%global libnbtplusplus_shortcommit %(c= %{libnbtplusplus_commit }; echo ${c:0:7})
6
- %global quazip_commit 3691d57d3af13f49b2be2b62accddefee3c26b9c
6
+ %global quazip_commit b1a72ac0bb5a732bf887a535ab75c6f9bedb6b6b
7
7
%global quazip_shortcommit %(c= %{quazip_commit }; echo ${c:0:7})
8
8
9
9
Name: multimc
10
- Version: 0.6.13
10
+ Version: 0.6.16
11
11
Release: 1%{?dist }
12
12
Summary: Minecraft launcher with ability to manage multiple instances
13
13
@@ -59,15 +59,24 @@ Summary: Minecraft launcher with ability to manage multiple instances
59
59
60
60
License: CC-BY-SA and ASL 2.0 and BSD and Boost and LGPLv2 and LGPLv2+ and LGPLv3+ and GPLv2 and GPLv2+ and ISC and zlib
61
61
URL: https://multimc.org
62
- Source0: https://github.com/MultiMC/MultiMC5 /archive/%{version }/%{name }-%{version }.tar.gz
62
+ Source0: https://github.com/MultiMC/Launcher /archive/%{version }/%{name }-%{version }.tar.gz
63
63
Source1: https://github.com/MultiMC/libnbtplusplus/archive/%{libnbtplusplus_commit }/libnbtplusplus-%{libnbtplusplus_shortcommit }.tar.gz
64
64
Source2: https://github.com/MultiMC/quazip/archive/%{quazip_commit }/quazip-%{quazip_shortcommit }.tar.gz
65
+ Source3: %{expand:%%(pwd)/multimc.svg}
66
+ Source4: %{expand:%%(pwd)/multimc.desktop}
67
+ Source5: %{expand:%%(pwd)/multimc.metainfo.xml}
68
+ Source6: %{expand:%%(pwd)/runner.sh}
69
+
70
+ Patch1: 0001-fix-compilation-issue.patch
71
+ Patch2: 0002-add-lin-system-layout.patch
72
+ Patch3: 0003-add-msa-client-id.patch
65
73
66
74
%if %{with ninja_build }
67
75
BuildRequires: ninja-build
68
76
%endif
69
77
70
78
BuildRequires: cmake3
79
+ BuildRequires: /usr/bin/appstream-util
71
80
BuildRequires: desktop-file-utils
72
81
BuildRequires: gcc-c++
73
82
@@ -94,23 +103,27 @@ a simple interface.
94
103
95
104
96
105
%prep
97
- %autosetup -p1 -n MultiMC5 -%{version }
106
+ %autosetup -p1 -n Launcher -%{version }
98
107
99
108
tar -xvf %{SOURCE1 } -C libraries
100
109
tar -xvf %{SOURCE2 } -C libraries
101
110
rmdir libraries/libnbtplusplus libraries/quazip
102
111
mv -f libraries/quazip-%{quazip_commit } libraries/quazip
103
112
mv -f libraries/libnbtplusplus-%{libnbtplusplus_commit } libraries/libnbtplusplus
104
113
114
+ cp %{SOURCE3 } .
115
+ cp %{SOURCE4 } .
116
+ cp %{SOURCE5 } .
117
+ cp %{SOURCE6 } .
105
118
106
119
%build
107
120
%cmake \
108
121
%{? with_ninja_build: -GNinja} \
109
122
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
110
- -DMultiMC_NOTIFICATION_URL :STRING=https://files.multimc.org/notifications.json \
111
- -DMultiMC_LAYOUT=lin-system \
112
- -DMultiMC_LIBRARY_DEST_DIR=%{ _libdir }/%{ name } \
113
- -DMultiMC_UPDATER=OFF \
123
+ -DLauncher_NOTIFICATION_URL :STRING=https://files.multimc.org/notifications.json \
124
+ -DCMAKE_INSTALL_PREFIX=/opt/%{ name } \
125
+ -DLauncher_EMBED_SECRETS=OFF \
126
+ -DLauncher_LAYOUT=lin-system \
114
127
.
115
128
116
129
%cmake_build
@@ -120,35 +133,45 @@ mv -f libraries/libnbtplusplus-%{libnbtplusplus_commit} libraries/libnbtplusplus
120
133
%cmake_install
121
134
122
135
# Install SVG icon...
123
- install -Dp -m 0644 launcher/resources/multimc/scalable /multimc.svg \
136
+ install -Dp -m 0644 . /multimc.svg \
124
137
%{buildroot }%{_datadir }/icons/hicolor/scalable/apps/%{name }.svg
125
138
126
139
# Install desktop file...
127
- desktop-file-install launcher/package/linux/multimc.desktop
140
+ desktop-file-install ./multimc.desktop
141
+
142
+ # Install metainfo XML file...
143
+ mkdir -p %{buildroot }%{_metainfodir }
144
+ install -m 0644 ./multimc.metainfo.xml %{buildroot }%{_metainfodir }/multimc.metainfo.xml
145
+
146
+ # Install the runner file...
147
+ mkdir -p %{buildroot }%{_bindir }
148
+ install -m 0755 ./runner.sh %{buildroot }%{_bindir }/%{name }
128
149
129
150
# Proper library linking...
130
151
mkdir -p %{buildroot }%{_sysconfdir }/ld.so.conf.d/
131
- echo "%{_libdir }/%{name }" > "%{buildroot }%{_sysconfdir }/ld.so.conf.d/%{name }-%{_arch }.conf"
132
-
152
+ echo "/opt/%{name }/lib" > "%{buildroot }%{_sysconfdir }/ld.so.conf.d/%{name }-%{_arch }.conf"
133
153
134
154
%check
135
- %ctest
155
+ %ctest %{? _smp_mflags }
136
156
desktop-file-validate %{buildroot }%{_datadir }/applications/%{name }.desktop
137
-
157
+ appstream-util validate-relax --nonet %{ buildroot }/%{ _metainfodir }/multimc.metainfo.xml
138
158
139
159
%files
140
160
%license COPYING.md
141
161
%doc README.md changelog.md
142
162
%{_bindir }/%{name }
143
- %{_libdir }/%{name }/*
144
- %{_datadir }/%{name }/*
163
+ /opt/%{name }/*
145
164
%{_datadir }/icons/hicolor/scalable/apps/%{name }.svg
146
165
%{_datadir }/applications/%{name }.desktop
166
+ %{_metainfodir }/multimc.metainfo.xml
147
167
%config %{_sysconfdir }/ld.so.conf.d/*
148
168
149
-
150
-
151
169
%changelog
170
+ *
Sat Sep 23 2023 Trung Lê <[email protected] > -
0.6.16-1
171
+ - Update to version 0.6.16
172
+ - Restore the deleted lin-system LAYOUT in CMakeList.txt
173
+ - Bundle the metainfo, desktop and runner
174
+
152
175
* Fri Sep 24 2021 ElXreno - 0.6.13-1
153
176
- Update to version 0.6.13
154
177
Add recommended dependency (@critbase request)
0 commit comments