sleep before unmounting, to avoid race condition
[fsf-member-card-builder.git] / install-extras.sh
CommitLineData
1da0abae
AE
1#!/bin/bash
2#
3# Copyright (C) 2012-2020 Ruben Rodriguez <ruben@trisquel.info>
4# Copyright (C) 2020 Andrew Engelbrecht <andrew@fsf.org>
5#
6# This program is free software; you can redistribute it and/or modify
7# it under the terms of the GNU General Public License as published by
8# the Free Software Foundation; either version 2 of the License, or
9# (at your option) any later version.
10#
11# This program is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14# GNU General Public License for more details.
15#
16# You should have received a copy of the GNU General Public License
17# along with this program; if not, write to the Free Software
18# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
19#
20
21set -e
22
23usage(){
24echo
25echo You need to run this script as root
26echo Usage: sudo $0 sources.iso /dev/sdX
27echo Example: sudo $0 trisquel_9.0fsf_sources.iso /dev/sdb
28echo
29echo WARNING!: This script can bite your dog. Use it with care, backup your data.
30echo
31exit 1
32}
33
34[ $(id -u) != 0 ] && usage
35[ $# != 2 ] && usage
36
37ISO=$1
38DEV=$2
39
40ISOTMP=$(mktemp -d)
41DEVTMP=$(mktemp -d)
42
43mount -o loop $ISO $ISOTMP
44mount ${DEV}1 $DEVTMP
45
46
47###
48### copy over checksum files
49###
50
51
52mkdir -p $DEVTMP/fsf/GNUAV/
53mkdir -p $DEVTMP/source/
54
55cp checksums-media.sha256 $DEVTMP/fsf/GNUAV/
56cp checksums-media.sha256 $DEVTMP/source/
57
58
59###
774d2a34
AE
60### copy over html files
61###
62
63
64cp html/* $DEVTMP/fsf/
65rm $DEVTMP/fsf/reset.css
66
67
68###
1da0abae
AE
69### download missing media from the Web
70###
71
292e4062 72
1da0abae
AE
73cd $DEVTMP/fsf/GNUAV
74
75mkdir lp2020_audio ; cd lp2020_audio
76
77wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2414/freedomsun1525.ogg'
78wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2413/freedomsun1135.ogg'
79wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2412/grandsat1730.ogg'
80wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2411/grandsun0945.ogg'
81wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2410/grandsat0945.ogg'
82
83wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2409/freedomsun1335.ogg'
84wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2408/patriotsun1135.ogg'
85wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2407/grandsat1620.ogg'
86wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2406/patriotsat1335.ogg'
87wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2405/freedomsat1040.ogg'
88
89wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2404/patriotsun1620.ogg'
90wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2403/grandsun1620.ogg'
91wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2402/patriotsun1525.ogg'
92wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2401/grandsun1525.ogg'
93wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2400/patriotsun1430.ogg'
94
95wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2399/freedomsun1430.ogg'
96wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2398/grandsun1430.ogg'
97wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2397/patriotsun1335.ogg'
98wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2396/patriotsun1040.ogg'
99wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2395/freedomsun1040.ogg'
100
101wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2394/freedomsat1525.ogg'
102wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2393/grandsat1525.ogg'
103wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2392/freedomsat1430.ogg'
104wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2391/patriotsat1135.ogg'
105wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2390/grandsat1135.ogg'
106
107wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2389/patriotsat1040.ogg'
108wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2388/grandsat1335.ogg'
109wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2387/grandsat1430.ogg'
110wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2386/patriotsat1430.ogg'
111wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2385/freedomsat1335.ogg'
112
113wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2384/grandsun1715.ogg'
114
115cd ..
116
117
118mv snowden-final.webm lp2016_snowden.webm
119
120wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2070/FSFKeynotewithSlidesHighRes.ogg'
121
122wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2335/grandsun1715.webm' -O lp2020_kahle.webm
123wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2332/grandsat0945.webm' -O lp2020_younghackers.webm
124
125
126###
127### copy over Trisquel 9 sources
128###
129
130
131cp -vr $ISOTMP/* $DEVTMP/source/ || true
132
133
134###
135### clean up
136###
137
138
972be85f
AE
139sync
140sleep 3
141
1da0abae
AE
142umount $DEVTMP
143umount $ISOTMP
144
145rmdir $DEVTMP
146rmdir $ISOTMP
147
148sync
149