not including workshop audio for now
[fsf-member-card-builder.git] / install-extras.sh
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
21 set -e
22
23 usage(){
24 echo
25 echo You need to run this script as root
26 echo Usage: sudo $0 sources.iso /dev/sdX
27 echo Example: sudo $0 trisquel_9.0fsf_sources.iso /dev/sdb
28 echo
29 echo WARNING!: This script can bite your dog. Use it with care, backup your data.
30 echo
31 exit 1
32 }
33
34 [ $(id -u) != 0 ] && usage
35 [ $# != 2 ] && usage
36
37 ISO=$1
38 DEV=$2
39
40 ISOTMP=$(mktemp -d)
41 DEVTMP=$(mktemp -d)
42
43 mount -o loop $ISO $ISOTMP
44 mount ${DEV}1 $DEVTMP
45
46
47 ###
48 ### copy over checksum files
49 ###
50
51
52 mkdir -p $DEVTMP/fsf/GNUAV/
53 mkdir -p $DEVTMP/source/
54
55 cp checksums-media.sha256 $DEVTMP/fsf/GNUAV/
56 cp checksums.sha256 $DEVTMP/source/
57
58
59 ###
60 ### copy over html files
61 ###
62
63
64 cp html/* $DEVTMP/fsf/
65 rm $DEVTMP/fsf/reset.css
66
67
68 ###
69 ### download missing media from the Web
70 ###
71
72
73 cd $DEVTMP/fsf/GNUAV
74
75 mkdir lp2023_audio ; cd lp2023_audio
76
77 # In GMG Postgres DB: select * from core__mediafiles where file_path like '%2023%.ogg';
78
79 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2765/lp2023-jupiter-sunday-1720.ogg'
80 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2766/lp2023-jupiter-saturday-1225.ogg'
81 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2767/lp2023-jupiter-sunday-1430.ogg'
82 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2768/lp2023-neptune-saturday-1650.ogg'
83 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2769/lp2023-saturn-saturday-1405.ogg'
84 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2770/lp2023-jupiter-saturday-1000.ogg'
85 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2771/lp2023-neptune-sunday-1055.ogg'
86 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2772/lp2023-jupiter-saturday-1555.ogg'
87 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2773/lp2023-neptune-sunday-1525.ogg'
88 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2774/lp2023-jupiter-sunday-1055.ogg'
89 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2775/lp2023-neptune-saturday-1500.ogg'
90 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2776/lp2023-saturn-saturday-1000.ogg'
91 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2777/lp2023-neptune-saturday-1405.ogg'
92 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2778/lp2023-jupiter-sunday-1335.ogg'
93 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2779/lp2023-jupiter-saturday-1405.ogg'
94 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2780/lp2023-neptune-sunday-1155.ogg'
95 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2781/lp2023-saturn-sunday-1000.ogg'
96 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2782/lp2023-jupiter-saturday-1500.ogg'
97 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2783/lp2023-saturn-saturday-1125.ogg'
98 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2784/lp2023-jupiter-saturday-1750.ogg'
99 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2785/lp2023-neptune-sunday-1430.ogg'
100 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2786/lp2023-neptune-sunday-1335.ogg'
101 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2787/lp2023-saturn-sunday-1055.ogg'
102 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2788/lp2023-jupiter-sunday-1155.ogg'
103 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2789/lp2023-jupiter-saturday-1125.ogg'
104 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2790/lp2023-neptune-sunday-1000.ogg'
105 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2791/lp2023-neptune-saturday-1555.ogg'
106 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2792/lp2023-jupiter-sunday-1620.ogg'
107 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2793/lp2023-jupiter-sunday-1525.ogg'
108 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2794/lp2023-jupiter-saturday-1650.ogg'
109 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2795/lp2023-saturn-saturday-1650.ogg'
110 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2796/lp2023-saturn-saturday-1555.ogg'
111 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2797/lp2023-neptune-sunday-1620.ogg'
112 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2798/lp2023-saturn-saturday-1500.ogg'
113 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2866/lp2023-jupiter-sunday-1000.ogg'
114 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2875/lp2023-saturn-sunday-1620.ogg'
115 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/3443/lp2023-bigcode-may-30.ogg' -O lp2023-saturn-sunday-1335.ogg
116 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/3445/lp2023-worldvista-june-05.ogg' -O lp2023-saturn-sunday-1430.ogg
117
118
119 cd ..
120
121
122 ##
123 ## These are distributed in trisquel_9.0-fsf_i686.iso. See README.md for details
124 ##
125 #wget 'https://media.libreplanet.org/mgoblin_media/media_entries/415/snowden-final.webm'
126 #wget 'https://media.libreplanet.org/mgoblin_media/media_entries/167/FSF_640x360.webm'
127 #wget 'https://static.fsf.org/nosvn/FSF30-video/FSF_30_720p.webm'
128 #wget 'https://static.fsf.org/nosvn/videos/fsf-shoetool/fsf-shoetool-360.webm'
129 #wget 'https://static.fsf.org/nosvn/videos/fsf-heroes/videos/The-University-of-Costumed-Heroes-360p.webm'
130 #wget 'https://static.fsf.org/nosvn/member-cards/extra-media/2022-02-07/FSFKeynotewithSlidesHighRes.ogg'
131 #wget 'https://static.fsf.org/nosvn/member-cards/extra-media/2022-02-07/why-free-software.webm'
132 #wget 'https://static.fsf.org/nosvn/member-cards/extra-media/2022-02-07/fsfs-ii-2-1.pdf'
133 #wget 'https://audio-video.gnu.org/video/TEDxGE2014_Stallman05_LQ.webm'
134
135 mv snowden-final.webm lp2016_snowden.webm
136
137 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2070/FSFKeynotewithSlidesHighRes.ogg'
138
139 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2335/grandsun1715.webm' -O lp2020_kahle.webm
140 wget 'https://media.libreplanet.org/mgoblin_media/media_entries/2332/grandsat0945.webm' -O lp2020_younghackers.webm
141
142 ###
143 ### copy over Trisquel 9 sources
144 ###
145
146
147 cp -vr $ISOTMP/* $DEVTMP/source/ || true
148
149
150 ###
151 ### clean up
152 ###
153
154
155 sync
156 sleep 3
157
158 umount $DEVTMP
159 umount $ISOTMP
160
161 rmdir $DEVTMP
162 rmdir $ISOTMP
163
164 sync
165
166 echo
167 echo "The FSF member card build is complete! : )"
168 echo
169