1
|
# Comment modifier l'image de base du Kiosk Porteus
|
2
|
|
3
|
## Prerequis sur la machine de construction de l'image
|
4
|
|
5
|
* La dernière image porteus https://porteus-kiosk.org/download.html
|
6
|
* Les programmes mkisofs et isohybrid
|
7
|
|
8
|
Installer les prerequis sur ubuntu/debian:
|
9
|
|
10
|
`apt-get install mkisofs syslinux-utils`
|
11
|
|
12
|
## Préparer les répertoires pour la construction
|
13
|
|
14
|
mkdir -p iso/{orig,new}
|
15
|
mount -o loop [porteus_image.iso] iso/orig
|
16
|
cp -a iso/orig iso/new
|
17
|
cd iso/new
|
18
|
|
19
|
Normalement vous devriez avoir cette structure dans le répertoire iso/new
|
20
|
|
21
|
├── boot
|
22
|
│ ├── initrd.xz
|
23
|
│ ├── isolinux
|
24
|
│ │ ├── grub.cfg
|
25
|
│ │ ├── isolinux.bin
|
26
|
│ │ ├── isolinux.boot
|
27
|
│ │ └── isolinux.cfg
|
28
|
│ └── vmlinuz
|
29
|
├── docs
|
30
|
│ ├── default.jpg
|
31
|
│ ├── first_run
|
32
|
│ ├── GNU_GPL
|
33
|
│ ├── kiosk.jpg
|
34
|
│ ├── kiosk.sgn
|
35
|
│ ├── License.txt
|
36
|
│ └── version
|
37
|
├── make_iso.sh
|
38
|
└── xzm
|
39
|
├── 000-kernel.xzm
|
40
|
├── 001-core.xzm
|
41
|
├── 002-chrome.xzm
|
42
|
├── 003-settings.xzm
|
43
|
├── 004-wifi.xzm
|
44
|
└── 08-ssh.xzm
|
45
|
|
46
|
## Générer la nouvelle iso
|
47
|
|
48
|
./make_iso.sh
|
49
|
cd ..
|
50
|
isohybrid Porteus-Kiosk.iso
|
51
|
|
52
|
## Mettre l'image sur une clef usb
|
53
|
|
54
|
dd if=Porteus-Kiosk.iso of=/dev/sdX
|
55
|
|
56
|
# Modifier un module
|
57
|
|
58
|
## Changer la détéction du son
|
59
|
|
60
|
Le détection du son se fait via le script */etc/rc.d/rc.sound* dans le module xzm/003-settings.xzm
|
61
|
Les modules sont des images squashfs
|
62
|
|
63
|
cp xzm/003-settings.xzm /tmp
|
64
|
cd /tmp/
|
65
|
mkdir module
|
66
|
cd module
|
67
|
unsquashfs ../003-settings.xzm
|
68
|
rm ../003-settings.xzm
|
69
|
cp [path/to/new/rc.sound] squashfs-root/etc/rc.d/rc.sound
|
70
|
mksquashfs squashfs-root/ /tmp/003-settings.xzm -comp xz -b 256K -Xbcj x86 -noappend
|
71
|
|
72
|
Copier le module créer (/tmp/003-settings.xzm ici) dans iso/new/xzm/ et générer une nouvelle iso
|
73
|
|
74
|
Fichier rc.sound pour la barre de son choisie
|
75
|
|
76
|
```
|
77
|
#!/bin/sh
|
78
|
# Initialize sound.
|
79
|
|
80
|
device_name='VB342 \[VB342\]'
|
81
|
playd=`aplay -l | grep "${device_name}" | head -n1 | cut -d: -f1 | cut -d" " -f2`;
|
82
|
recd=`arecord -l | grep "${device_name}" | head -n1 | cut -d: -f1 | cut -d" " -f2`;
|
83
|
|
84
|
echo 'pcm.!default {
|
85
|
type asym
|
86
|
playback.pcm {
|
87
|
type plug
|
88
|
slave.pcm "hw:'$playd',0"
|
89
|
}
|
90
|
capture.pcm {
|
91
|
type plug
|
92
|
slave.pcm "hw:'$recd',0"
|
93
|
}
|
94
|
}' > /etc/asound.conf
|
95
|
```
|