~jadedctrl/gem-xwx-moe
~jadedctrl/gem-xwx-moe/gemujo_ludo/pretigi.sh
~jadedctrl/gem-xwx-moe/gemujo_ludo/pretigi.sh
0 | #!/bin/sh |
1 | #――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― |
2 | # Nomo: pretigi.sh |
3 | # Priskribo: Elŝutas eksterajn modifaĵojn kaj kunigas ĉiun en mods/ |
4 | # Postuloj: git |
5 | # Dato: 2024-01-04 |
6 | #――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― |
7 |
|
8 | uzado() { |
9 | echo "uzado: pretigi.sh" |
10 | echo "" |
11 | echo "Se ruliĝas en gemujo_ludo fontodosierujo (kun «mods.viaj/»)," |
12 | echo "tiu ĉi skripto elŝutas fremdajn modifaĵojn laŭeble, kaj poste" |
13 | echo "ligas kaj fremdajn (el «mods.retaj/») kaj proprajn (el «mods.niaj/»)" |
14 | echo "modifaĵojn en la dosierujo «mods/»." |
15 | echo "" |
16 | echo "Se vi movas la dosierujon de gemujo_ludo, vi devos reruli tiun" |
17 | echo "ĉi skripton por religi la modifaĵojn." |
18 | echo "" |
19 | echo "Sekuras ruli tiun ĉi skripton plurfoje." |
20 | } |
21 |
|
22 |
|
23 | # Elŝutas ĉiujn fremdajn modifaĵojn, laŭbezone, al la dosierujo `mods.retaj/`. |
24 | elshuti() { |
25 | mkdir -p \ |
26 | mods.retaj/armiloj mods.retaj/bazaj mods.retaj/bestoj \ |
27 | mods.retaj/fasado mods.retaj/iloj mods.retaj/ludanto \ |
28 | mods.retaj/medio mods.retaj/mondo mods.retaj/ornamoj \ |
29 | mods.retaj/servilo \ |
30 | 2> /dev/null |
31 |
|
32 | # Elŝutas minetest_game, elprenante la plejparton de ĝi al mods.retaj/bazaj˙ |
33 | git clone https://github.com/minetest/minetest_game mods.retaj/.minetest_game |
34 | cp -r mods.retaj/.minetest_game/mods/* mods.retaj/bazaj/ |
35 | rm -rf mods.retaj/bazaj/beds/ mods.retaj/bazaj/binoculars/ \ |
36 | mods.retaj/bazaj/game_commands/ mods.retaj/bazaj/svinf mods.retaj/bazaj/tnt/ |
37 |
|
38 | git_elshuti_al \ |
39 | "mods.retaj/armiloj" \ |
40 | https://github.com/jadedctrl/3d_armor \ |
41 | https://hak.xwx.moe/jadedctrl/minetest_x_bows |
42 | # https://gitlab.com/jadedctrl/spears |
43 |
|
44 | mv mods.retaj/bazaj/beds_tenplus1 mods.retaj/bazaj/beds 2> /dev/null |
45 | git_elshuti_al \ |
46 | "mods.retaj/bazaj" \ |
47 | https://codeberg.org/tenplus1/beds \ |
48 | https://codeberg.org/tenplus1/doors \ |
49 | https://github.com/appgurueu/modlib |
50 | mv mods.retaj/bazaj/beds mods.retaj/bazaj/beds_tenplus1 |
51 |
|
52 | git_elshuti_al \ |
53 | "mods.retaj/bestoj" \ |
54 | https://codeberg.org/jadedctrl/minetest_mobs_redo \ |
55 | https://codeberg.org/jadedctrl/minetest_mobs_monster \ |
56 | https://codeberg.org/jadedctrl/mobs_animal \ |
57 | https://github.com/jadedctrl/animalworld \ |
58 | https://github.com/jadedctrl/flower_cow \ |
59 | https://github.com/jadedctrl/tmw_slimes |
60 |
|
61 | git_elshuti_al \ |
62 | "mods.retaj/fasado" \ |
63 | https://github.com/JadedCtrl/minetest_public_death_messages \ |
64 | https://codeberg.org/Wuzzy/minetest_doc \ |
65 | https://github.com/ZenonSeth/message_bubbles \ |
66 | https://codeberg.org/Wuzzy/minetest_doc_basics |
67 |
|
68 | git_elshuti_al \ |
69 | "mods.retaj/iloj" \ |
70 | https://codeberg.org/jadedctrl/protector \ |
71 | https://github.com/jadedctrl/minetest-envelopes |
72 |
|
73 | git_elshuti_al \ |
74 | "mods.retaj/ludanto" \ |
75 | https://github.com/jadedctrl/skinsdb \ |
76 | https://github.com/appgurueu/character_anim \ |
77 | https://github.com/Dumpster-Studios/fire_plus \ |
78 | https://github.com/AiTechEye/invisible \ |
79 | https://github.com/minetest-mods/item_drop \ |
80 | https://github.com/minetest-mods/stamina \ |
81 | https://github.com/minetest-mods/wielded_light |
82 |
|
83 | git_elshuti_al \ |
84 | "mods.retaj/medio" \ |
85 | https://codeberg.org/tenplus1/ambience \ |
86 | https://github.com/minetest-mods/lightning |
87 |
|
88 | git_elshuti_al \ |
89 | "mods.retaj/mondo" \ |
90 | https://hak.xwx.moe/jadedctrl/everness/ \ |
91 | https://github.com/Neuromancer56/mob_biome_mapper |
92 |
|
93 | git_elshuti_al \ |
94 | "mods.retaj/ornamoj" \ |
95 | https://github.com/JadedCtrl/plushies \ |
96 | https://github.com/jadedctrl/signs_lib \ |
97 | https://codeberg.org/jadedctrl/xdecor-libre \ |
98 | https://hak.xwx.moe/jadedctrl/minetest-kotatsu \ |
99 | https://github.com/minetest-mods/carpets \ |
100 | https://github.com/HybridDog/connected_chests |
101 |
|
102 | mv mods.retaj/servilo/bonvenon mods.retaj/servilo/newplayer |
103 | git_elshuti_al \ |
104 | "mods.retaj/servilo" \ |
105 | https://github.com/minetest-mods/irc \ |
106 | https://cheapiesystems.com/git/newplayer |
107 | mv mods.retaj/servilo/newplayer mods.retaj/servilo/bonvenon |
108 | } |
109 |
|
110 |
|
111 | # Elŝutas amase Git-deponejojn al specifa dosierujo. |
112 | git_elshuti_al() { |
113 | local dosierujo="$1" |
114 | shift |
115 | for url in $@; do |
116 | local nomo="$(basename "$url" | tr -- '-.' '__' | sed 's%minetest_%%')" |
117 | git clone --recursive "$url" "$dosierujo/$nomo" |
118 | done |
119 | } |
120 |
|
121 |
|
122 | # Flikas modifaĵojn por nia servilo. |
123 | fliki() { |
124 | if test ! -f mods/ludanto/skinsdb/.flikita; then |
125 | echo "Flikas skinsdb…" 1>&2 |
126 | cp -r flikaĵoj/skinsdb/meta/* mods/ludanto/skinsdb/meta/ |
127 | cp -r flikaĵoj/skinsdb/textures/* mods/ludanto/skinsdb/textures/ |
128 | rm mods/ludanto/skinsdb/textures/character_ghe_* \ |
129 | mods/ludanto/skinsdb/meta/character_ghe_* \ |
130 | mods/ludanto/skinsdb/textures/character_pro_kiki.png \ |
131 | mods/ludanto/skinsdb/meta/character_pro_kiki.txt |
132 | cd mods/ludanto/skinsdb/ |
133 | git apply ../../../flikaĵoj/skinsdb/*.patch |
134 | cd ../../../ |
135 | touch mods/ludanto/skinsdb/.flikita |
136 | fi |
137 |
|
138 | if test ! -f mods/fasado/public_death_messages/.flikita; then |
139 | echo "Flikas public_death_messages…" 1>&2 |
140 | cd mods/fasado/public_death_messages/ |
141 | git apply ../../../flikaĵoj/public_death_messages/*.patch |
142 | cd ../../../ |
143 | touch mods/fasado/public_death_messages/.flikita |
144 | fi |
145 |
|
146 | if test ! -f mods/fasado/message_bubbles/.flikita; then |
147 | echo "Flikas message_bubbles…" 1>&2 |
148 | cd mods/fasado/message_bubbles/ |
149 | git apply ../../../flikaĵoj/message_bubbles/*.patch |
150 | cd ../../../ |
151 | touch mods/fasado/message_bubbles/.flikita |
152 | fi |
153 |
|
154 | if test ! -f mods/bestoj/mobs_redo/.flikita; then |
155 | echo "Flikas mobs_redo…" 1>&2 |
156 | cd mods/bestoj/mobs_redo/ |
157 | git apply ../../../flikaĵoj/mobs_redo/*.patch |
158 | cd ../../../ |
159 | touch mods/bestoj/mobs_redo/.flikita |
160 | fi |
161 |
|
162 | if test -n "$SERVILE" -a ! -f mods/servilo/irc/.flikita; then |
163 | echo "Flikas irc…" 1>&2 |
164 | cd mods/servilo/irc/irc/ |
165 | git apply ../../../../flikaĵoj/lua-irc/*.patch |
166 | cd ../../../../ |
167 | touch mods/servilo/irc/.flikita |
168 | fi |
169 |
|
170 | if test -n "$SERVILE" -a ! -f mods/servilo/bonvenon/.flikita; then |
171 | echo "Flikas bonvenon…" 1>&2 |
172 | cp flikaĵoj/bonvenon/*.txt mods/servilo/bonvenon/ |
173 | cd mods/servilo/bonvenon |
174 | git apply ../../../flikaĵoj/bonvenon/*.patch |
175 | cd ../../../ |
176 | touch mods/servilo/bonvenon/.flikita |
177 | fi |
178 | } |
179 |
|
180 |
|
181 | kopii() { |
182 | rsync --recursive --ignore-existing \ |
183 | --exclude='/.minetest_game' \ |
184 | mods.retaj/ mods/ |
185 | rsync --recursive --ignore-existing \ |
186 | mods.niaj/ mods/ |
187 |
|
188 | # Provzire ne uzu! Ili ne estas tradukitaj/finpretigitaj. |
189 | rm -rf mods/fasado/doc* |
190 | rm -rf mods/fasado/emoji |
191 |
|
192 | # Submodifaĵoj, kiuj tute ne akordas nian subludon. |
193 | rm -rf mods/armiloj/3d_armor/armor_mithril \ |
194 | mods/armiloj/3d_armor/armor_nether |
195 |
|
196 | # Renomu ripare. |
197 | mv mods/ornamoj/kotatsu mods/ornamoj/kotatsu_table 2> /dev/null |
198 | rm -rf mods/ornamoj/kotatsu 2> /dev/null |
199 |
|
200 | if test -z "$SERVILE"; then |
201 | rm -rf mods/servilo/*/ |
202 | fi |
203 | } |
204 |
|
205 |
|
206 | esperantigi() { |
207 | local PATH="$PATH:flikaĵoj/" |
208 | esperantigi_modifaĵojn mods/ |
209 | } |
210 |
|
211 |
|
212 | # Kunfandas privatajn (servilajn) agordojn kaj publikajn. |
213 | agordi() { |
214 | cat minetest.publike.conf minetest.private.conf \ |
215 | > minetest.conf |
216 |
|
217 | if test -n "$SERVILE"; then |
218 | cat minetest.servile.conf \ |
219 | >> minetest.conf |
220 | fi |
221 | } |
222 |
|
223 |
|
224 | if test "$1" = '-h' -o "$1" = '--help' -o "$1" = '--helpo'; then |
225 | uzado |
226 | exit 0 |
227 | elif test "$1" = '--servile' -o "$1" = '-s'; then |
228 | SERVILE="jes" |
229 | fi |
230 | if test ! -d mods.niaj/; then |
231 | 1>&2 uzado |
232 | exit 2 |
233 | fi |
234 |
|
235 |
|
236 | elshuti \ |
237 | 2>&1 \ |
238 | | grep -v 'already exists and is not an empty directory' \ |
239 | 1>&2 |
240 | kopii |
241 | fliki |
242 | esperantigi |
243 | agordi |