@@ -216,6 +216,9 Support for halt,init,poweroff,reboot,runlevel,shutdown,telinit commands | |||||
216 | --- |
|
216 | --- | |
217 |
|
217 | |||
218 | #### Advanced system features: |
|
218 | #### Advanced system features: | |
|
219 | ##### `ENABLE_KEYGEN`=false | |||
|
220 | Recover your lost codec license | |||
|
221 | ||||
219 | ##### `ENABLE_SYSTEMDSWAP`=false |
|
222 | ##### `ENABLE_SYSTEMDSWAP`=false | |
220 | Enables [Systemd-swap service](https://github.com/Nefelim4ag/systemd-swap). Usefull if `KERNEL_ZSWAP` is enabled. |
|
223 | Enables [Systemd-swap service](https://github.com/Nefelim4ag/systemd-swap). Usefull if `KERNEL_ZSWAP` is enabled. | |
221 |
|
224 |
@@ -16,7 +16,11 install_readonly files/apt/sources.list "${ETC_DIR}/apt/sources.list" | |||||
16 |
|
16 | |||
17 | # Use specified APT server and release |
|
17 | # Use specified APT server and release | |
18 | sed -i "s/\/ftp.debian.org\//\/${APT_SERVER}\//" "${ETC_DIR}/apt/sources.list" |
|
18 | sed -i "s/\/ftp.debian.org\//\/${APT_SERVER}\//" "${ETC_DIR}/apt/sources.list" | |
|
19 | if [ "$RELEASE" = "bullseye" ] || [ "$RELEASE" = "testing" ] ; then | |||
|
20 | sed -i "s,stretch\\/updates,testing-security," "${ETC_DIR}/apt/sources.list" | |||
|
21 | else | |||
19 | sed -i "s/ stretch/ ${RELEASE}/" "${ETC_DIR}/apt/sources.list" |
|
22 | sed -i "s/ stretch/ ${RELEASE}/" "${ETC_DIR}/apt/sources.list" | |
|
23 | fi | |||
20 |
|
24 | |||
21 | # Upgrade package index and update all installed packages and changed dependencies |
|
25 | # Upgrade package index and update all installed packages and changed dependencies | |
22 | chroot_exec apt-get -qq -y update |
|
26 | chroot_exec apt-get -qq -y update |
@@ -52,6 +52,11 if [ "$BUILD_KERNEL" = true ] ; then | |||||
52 | if [ "$KERNEL_THREADS" = "1" ] && [ -r /proc/cpuinfo ] ; then |
|
52 | if [ "$KERNEL_THREADS" = "1" ] && [ -r /proc/cpuinfo ] ; then | |
53 | KERNEL_THREADS=$(grep -c processor /proc/cpuinfo) |
|
53 | KERNEL_THREADS=$(grep -c processor /proc/cpuinfo) | |
54 | fi |
|
54 | fi | |
|
55 | ||||
|
56 | #Copy 32bit config to 64bit | |||
|
57 | if [ "$ENABLE_QEMU" = true ] && [ "$KERNEL_ARCH" = arm64 ]; then | |||
|
58 | cp "${KERNEL_DIR}"/arch/arm/configs/vexpress_defconfig "${KERNEL_DIR}"/arch/arm64/configs/ | |||
|
59 | fi | |||
55 |
|
60 | |||
56 | # Configure and build kernel |
|
61 | # Configure and build kernel | |
57 | if [ "$KERNELSRC_PREBUILT" = false ] ; then |
|
62 | if [ "$KERNELSRC_PREBUILT" = false ] ; then | |
@@ -99,6 +104,8 if [ "$BUILD_KERNEL" = true ] ; then | |||||
99 | cd "${KERNEL_DIR}" || exit |
|
104 | cd "${KERNEL_DIR}" || exit | |
100 |
|
105 | |||
101 | if [ "$KERNEL_ARCH" = arm64 ] ; then |
|
106 | if [ "$KERNEL_ARCH" = arm64 ] ; then | |
|
107 | if [ "$KERNEL_ARCH" = arm64 ] && [ "$ENABLE_QEMU" = false ]; then | |||
|
108 | # Mask this temporarily during switch to rpi-4.19.y | |||
102 | #Fix SD_DRIVER upstream and downstream mess in 64bit RPIdeb_config |
|
109 | #Fix SD_DRIVER upstream and downstream mess in 64bit RPIdeb_config | |
103 | # use correct driver MMC_BCM2835_MMC instead of MMC_BCM2835_SDHOST - see https://www.raspberrypi.org/forums/viewtopic.php?t=210225 |
|
110 | # use correct driver MMC_BCM2835_MMC instead of MMC_BCM2835_SDHOST - see https://www.raspberrypi.org/forums/viewtopic.php?t=210225 | |
104 | set_kernel_config CONFIG_MMC_BCM2835 n |
|
111 | set_kernel_config CONFIG_MMC_BCM2835 n | |
@@ -118,12 +125,233 if [ "$BUILD_KERNEL" = true ] ; then | |||||
118 | set_kernel_config CONFIG_Z3FOLD y |
|
125 | set_kernel_config CONFIG_Z3FOLD y | |
119 | set_kernel_config CONFIG_ZSMALLOC y |
|
126 | set_kernel_config CONFIG_ZSMALLOC y | |
120 | set_kernel_config CONFIG_PGTABLE_MAPPING y |
|
127 | set_kernel_config CONFIG_PGTABLE_MAPPING y | |
121 |
|
|
128 | set_kernel_config CONFIG_LZO_COMPRESS y | |
122 |
|
||||
123 | fi |
|
129 | fi | |
|
130 | ||||
|
131 | if [ RPI_MODEL = 4 ] ; then | |||
|
132 | # Following are set in current 32-bit LPAE kernel | |||
|
133 | set_kernel_config CONFIG_CGROUP_PIDS y | |||
|
134 | set_kernel_config CONFIG_NET_IPVTI m | |||
|
135 | set_kernel_config CONFIG_NF_TABLES_SET m | |||
|
136 | set_kernel_config CONFIG_NF_TABLES_INET y | |||
|
137 | set_kernel_config CONFIG_NF_TABLES_NETDEV y | |||
|
138 | set_kernel_config CONFIG_NF_FLOW_TABLE m | |||
|
139 | set_kernel_config CONFIG_NFT_FLOW_OFFLOAD m | |||
|
140 | set_kernel_config CONFIG_NFT_CONNLIMIT m | |||
|
141 | set_kernel_config CONFIG_NFT_TUNNEL m | |||
|
142 | set_kernel_config CONFIG_NFT_OBJREF m | |||
|
143 | set_kernel_config CONFIG_NFT_FIB_IPV4 m | |||
|
144 | set_kernel_config CONFIG_NFT_FIB_IPV6 m | |||
|
145 | set_kernel_config CONFIG_NFT_FIB_INET m | |||
|
146 | set_kernel_config CONFIG_NFT_SOCKET m | |||
|
147 | set_kernel_config CONFIG_NFT_OSF m | |||
|
148 | set_kernel_config CONFIG_NFT_TPROXY m | |||
|
149 | set_kernel_config CONFIG_NF_DUP_NETDEV m | |||
|
150 | set_kernel_config CONFIG_NFT_DUP_NETDEV m | |||
|
151 | set_kernel_config CONFIG_NFT_FWD_NETDEV m | |||
|
152 | set_kernel_config CONFIG_NFT_FIB_NETDEV m | |||
|
153 | set_kernel_config CONFIG_NF_FLOW_TABLE_INET m | |||
|
154 | set_kernel_config CONFIG_NF_FLOW_TABLE m | |||
|
155 | set_kernel_config CONFIG_NETFILTER_XT_MATCH_SOCKET m | |||
|
156 | set_kernel_config CONFIG_NFT_CHAIN_ROUTE_IPV6 m | |||
|
157 | set_kernel_config CONFIG_NFT_CHAIN_NAT_IPV6 m | |||
|
158 | set_kernel_config CONFIG_NFT_MASQ_IPV6 m | |||
|
159 | set_kernel_config CONFIG_NFT_REDIR_IPV6 m | |||
|
160 | set_kernel_config CONFIG_NFT_REJECT_IPV6 m | |||
|
161 | set_kernel_config CONFIG_NFT_DUP_IPV6 m | |||
|
162 | set_kernel_config CONFIG_NFT_FIB_IPV6 m | |||
|
163 | set_kernel_config CONFIG_NF_FLOW_TABLE_IPV6 m | |||
|
164 | set_kernel_config CONFIG_NF_TABLES_BRIDGE m | |||
|
165 | set_kernel_config CONFIG_NFT_BRIDGE_REJECT m | |||
|
166 | set_kernel_config CONFIG_NF_LOG_BRIDGE m | |||
|
167 | set_kernel_config CONFIG_MT76_CORE m | |||
|
168 | set_kernel_config CONFIG_MT76_LEDS m | |||
|
169 | set_kernel_config CONFIG_MT76_USB m | |||
|
170 | set_kernel_config CONFIG_MT76x2_COMMON m | |||
|
171 | set_kernel_config CONFIG_MT76x0U m | |||
|
172 | set_kernel_config CONFIG_MT76x2U m | |||
|
173 | set_kernel_config CONFIG_TOUCHSCREEN_ILI210X m | |||
|
174 | set_kernel_config CONFIG_BCM_VC_SM m | |||
|
175 | set_kernel_config CONFIG_BCM2835_SMI_DEV m | |||
|
176 | set_kernel_config CONFIG_RPIVID_MEM m | |||
|
177 | set_kernel_config CONFIG_HW_RANDOM_BCM2835 y | |||
|
178 | set_kernel_config CONFIG_TCG_TPM m | |||
|
179 | set_kernel_config CONFIG_HW_RANDOM_TPM y | |||
|
180 | set_kernel_config CONFIG_TCG_TIS m | |||
|
181 | set_kernel_config CONFIG_TCG_TIS_SPI m | |||
|
182 | set_kernel_config CONFIG_I2C_MUX m | |||
|
183 | set_kernel_config CONFIG_I2C_MUX_GPMUX m | |||
|
184 | set_kernel_config CONFIG_I2C_MUX_PCA954x m | |||
|
185 | set_kernel_config CONFIG_SPI_GPIO m | |||
|
186 | set_kernel_config CONFIG_BATTERY_MAX17040 m | |||
|
187 | set_kernel_config CONFIG_SENSORS_GPIO_FAN m | |||
|
188 | set_kernel_config CONFIG_SENSORS_RASPBERRYPI_HWMON m | |||
|
189 | set_kernel_config CONFIG_BCM2835_THERMAL y | |||
|
190 | set_kernel_config CONFIG_RC_CORE y | |||
|
191 | set_kernel_config CONFIG_RC_MAP y | |||
|
192 | set_kernel_config CONFIG_LIRC y | |||
|
193 | set_kernel_config CONFIG_RC_DECODERS y | |||
|
194 | set_kernel_config CONFIG_IR_NEC_DECODER m | |||
|
195 | set_kernel_config CONFIG_IR_RC5_DECODER m | |||
|
196 | set_kernel_config CONFIG_IR_RC6_DECODER m | |||
|
197 | set_kernel_config CONFIG_IR_JVC_DECODER m | |||
|
198 | set_kernel_config CONFIG_IR_SONY_DECODER m | |||
|
199 | set_kernel_config CONFIG_IR_SANYO_DECODER m | |||
|
200 | set_kernel_config CONFIG_IR_SHARP_DECODER m | |||
|
201 | set_kernel_config CONFIG_IR_MCE_KBD_DECODER m | |||
|
202 | set_kernel_config CONFIG_IR_XMP_DECODER m | |||
|
203 | set_kernel_config CONFIG_IR_IMON_DECODER m | |||
|
204 | set_kernel_config CONFIG_RC_DEVICES y | |||
|
205 | set_kernel_config CONFIG_RC_ATI_REMOTE m | |||
|
206 | set_kernel_config CONFIG_IR_IMON m | |||
|
207 | set_kernel_config CONFIG_IR_MCEUSB m | |||
|
208 | set_kernel_config CONFIG_IR_REDRAT3 m | |||
|
209 | set_kernel_config CONFIG_IR_STREAMZAP m | |||
|
210 | set_kernel_config CONFIG_IR_IGUANA m | |||
|
211 | set_kernel_config CONFIG_IR_TTUSBIR m | |||
|
212 | set_kernel_config CONFIG_RC_LOOPBACK m | |||
|
213 | set_kernel_config CONFIG_IR_GPIO_CIR m | |||
|
214 | set_kernel_config CONFIG_IR_GPIO_TX m | |||
|
215 | set_kernel_config CONFIG_IR_PWM_TX m | |||
|
216 | set_kernel_config CONFIG_VIDEO_V4L2_SUBDEV_API y | |||
|
217 | set_kernel_config CONFIG_VIDEO_AU0828_RC y | |||
|
218 | set_kernel_config CONFIG_VIDEO_CX231XX m | |||
|
219 | set_kernel_config CONFIG_VIDEO_CX231XX_RC y | |||
|
220 | set_kernel_config CONFIG_VIDEO_CX231XX_ALSA m | |||
|
221 | set_kernel_config CONFIG_VIDEO_CX231XX_DVB m | |||
|
222 | set_kernel_config CONFIG_VIDEO_TM6000 m | |||
|
223 | set_kernel_config CONFIG_VIDEO_TM6000_ALSA m | |||
|
224 | set_kernel_config CONFIG_VIDEO_TM6000_DVB m | |||
|
225 | set_kernel_config CONFIG_DVB_USB m | |||
|
226 | set_kernel_config CONFIG_DVB_USB_DIB3000MC m | |||
|
227 | set_kernel_config CONFIG_DVB_USB_A800 m | |||
|
228 | set_kernel_config CONFIG_DVB_USB_DIBUSB_MB m | |||
|
229 | set_kernel_config CONFIG_DVB_USB_DIBUSB_MB_FAULTY y | |||
|
230 | set_kernel_config CONFIG_DVB_USB_DIBUSB_MC m | |||
|
231 | set_kernel_config CONFIG_DVB_USB_DIB0700 m | |||
|
232 | set_kernel_config CONFIG_DVB_USB_UMT_010 m | |||
|
233 | set_kernel_config CONFIG_DVB_USB_CXUSB m | |||
|
234 | set_kernel_config CONFIG_DVB_USB_M920X m | |||
|
235 | set_kernel_config CONFIG_DVB_USB_DIGITV m | |||
|
236 | set_kernel_config CONFIG_DVB_USB_VP7045 m | |||
|
237 | set_kernel_config CONFIG_DVB_USB_VP702X m | |||
|
238 | set_kernel_config CONFIG_DVB_USB_GP8PSK m | |||
|
239 | set_kernel_config CONFIG_DVB_USB_NOVA_T_USB2 m | |||
|
240 | set_kernel_config CONFIG_DVB_USB_TTUSB2 m | |||
|
241 | set_kernel_config CONFIG_DVB_USB_DTT200U m | |||
|
242 | set_kernel_config CONFIG_DVB_USB_OPERA1 m | |||
|
243 | set_kernel_config CONFIG_DVB_USB_AF9005 m | |||
|
244 | set_kernel_config CONFIG_DVB_USB_AF9005_REMOTE m | |||
|
245 | set_kernel_config CONFIG_DVB_USB_PCTV452E m | |||
|
246 | set_kernel_config CONFIG_DVB_USB_DW2102 m | |||
|
247 | set_kernel_config CONFIG_DVB_USB_CINERGY_T2 m | |||
|
248 | set_kernel_config CONFIG_DVB_USB_DTV5100 m | |||
|
249 | set_kernel_config CONFIG_DVB_USB_AZ6027 m | |||
|
250 | set_kernel_config CONFIG_DVB_USB_TECHNISAT_USB2 m | |||
|
251 | set_kernel_config CONFIG_DVB_USB_AF9015 m | |||
|
252 | set_kernel_config CONFIG_DVB_USB_LME2510 m | |||
|
253 | set_kernel_config CONFIG_DVB_USB_RTL28XXU m | |||
|
254 | set_kernel_config CONFIG_VIDEO_EM28XX_RC m | |||
|
255 | set_kernel_config CONFIG_SMS_SIANO_RC m | |||
|
256 | set_kernel_config CONFIG_VIDEO_IR_I2C m | |||
|
257 | set_kernel_config CONFIG_VIDEO_ADV7180 m | |||
|
258 | set_kernel_config CONFIG_VIDEO_TC358743 m | |||
|
259 | set_kernel_config CONFIG_VIDEO_OV5647 m | |||
|
260 | set_kernel_config CONFIG_DVB_M88DS3103 m | |||
|
261 | set_kernel_config CONFIG_DVB_AF9013 m | |||
|
262 | set_kernel_config CONFIG_DVB_RTL2830 m | |||
|
263 | set_kernel_config CONFIG_DVB_RTL2832 m | |||
|
264 | set_kernel_config CONFIG_DVB_SI2168 m | |||
|
265 | set_kernel_config CONFIG_DVB_GP8PSK_FE m | |||
|
266 | set_kernel_config CONFIG_DVB_USB m | |||
|
267 | set_kernel_config CONFIG_DVB_LGDT3306A m | |||
|
268 | set_kernel_config CONFIG_FB_SIMPLE y | |||
|
269 | set_kernel_config CONFIG_SND_BCM2708_SOC_IQAUDIO_CODEC m | |||
|
270 | set_kernel_config CONFIG_SND_BCM2708_SOC_I_SABRE_Q2M m | |||
|
271 | set_kernel_config CONFIG_SND_AUDIOSENSE_PI m | |||
|
272 | set_kernel_config CONFIG_SND_SOC_AD193X m | |||
|
273 | set_kernel_config CONFIG_SND_SOC_AD193X_SPI m | |||
|
274 | set_kernel_config CONFIG_SND_SOC_AD193X_I2C m | |||
|
275 | set_kernel_config CONFIG_SND_SOC_CS4265 m | |||
|
276 | set_kernel_config CONFIG_SND_SOC_DA7213 m | |||
|
277 | set_kernel_config CONFIG_SND_SOC_ICS43432 m | |||
|
278 | set_kernel_config CONFIG_SND_SOC_TLV320AIC32X4 m | |||
|
279 | set_kernel_config CONFIG_SND_SOC_TLV320AIC32X4_I2C m | |||
|
280 | set_kernel_config CONFIG_SND_SOC_I_SABRE_CODEC m | |||
|
281 | set_kernel_config CONFIG_HID_BIGBEN_FF m | |||
|
282 | #set_kernel_config CONFIG_USB_XHCI_PLATFORM y | |||
|
283 | set_kernel_config CONFIG_USB_TMC m | |||
|
284 | set_kernel_config CONFIG_USB_UAS y | |||
|
285 | set_kernel_config CONFIG_USBIP_VUDC m | |||
|
286 | set_kernel_config CONFIG_USB_CONFIGFS m | |||
|
287 | set_kernel_config CONFIG_USB_CONFIGFS_SERIAL y | |||
|
288 | set_kernel_config CONFIG_USB_CONFIGFS_ACM y | |||
|
289 | set_kernel_config CONFIG_USB_CONFIGFS_OBEX y | |||
|
290 | set_kernel_config CONFIG_USB_CONFIGFS_NCM y | |||
|
291 | set_kernel_config CONFIG_USB_CONFIGFS_ECM y | |||
|
292 | set_kernel_config CONFIG_USB_CONFIGFS_ECM_SUBSET y | |||
|
293 | set_kernel_config CONFIG_USB_CONFIGFS_RNDIS y | |||
|
294 | set_kernel_config CONFIG_USB_CONFIGFS_EEM y | |||
|
295 | set_kernel_config CONFIG_USB_CONFIGFS_MASS_STORAGE y | |||
|
296 | set_kernel_config CONFIG_USB_CONFIGFS_F_LB_SS y | |||
|
297 | set_kernel_config CONFIG_USB_CONFIGFS_F_FS y | |||
|
298 | set_kernel_config CONFIG_USB_CONFIGFS_F_UAC1 y | |||
|
299 | set_kernel_config CONFIG_USB_CONFIGFS_F_UAC2 y | |||
|
300 | set_kernel_config CONFIG_USB_CONFIGFS_F_MIDI y | |||
|
301 | set_kernel_config CONFIG_USB_CONFIGFS_F_HID y | |||
|
302 | set_kernel_config CONFIG_USB_CONFIGFS_F_UVC y | |||
|
303 | set_kernel_config CONFIG_USB_CONFIGFS_F_PRINTER y | |||
|
304 | set_kernel_config CONFIG_LEDS_PCA963X m | |||
|
305 | set_kernel_config CONFIG_LEDS_IS31FL32XX m | |||
|
306 | set_kernel_config CONFIG_LEDS_TRIGGER_NETDEV m | |||
|
307 | set_kernel_config CONFIG_RTC_DRV_RV3028 m | |||
|
308 | set_kernel_config CONFIG_AUXDISPLAY y | |||
|
309 | set_kernel_config CONFIG_HD44780 m | |||
|
310 | set_kernel_config CONFIG_FB_TFT_SH1106 m | |||
|
311 | set_kernel_config CONFIG_VIDEO_CODEC_BCM2835 m | |||
|
312 | set_kernel_config CONFIG_BCM2835_POWER y | |||
|
313 | set_kernel_config CONFIG_INV_MPU6050_IIO m | |||
|
314 | set_kernel_config CONFIG_INV_MPU6050_I2C m | |||
|
315 | set_kernel_config CONFIG_SECURITYFS y | |||
|
316 | ||||
|
317 | # Safer to build this in | |||
|
318 | set_kernel_config CONFIG_BINFMT_MISC y | |||
|
319 | ||||
|
320 | # pulseaudio wants a buffer of at least this size | |||
|
321 | set_kernel_config CONFIG_SND_HDA_PREALLOC_SIZE 2048 | |||
|
322 | ||||
|
323 | # PR#3063: enable 3D acceleration with 64-bit kernel on RPi4 | |||
|
324 | # set the appropriate kernel configs unlocked by this PR | |||
|
325 | set_kernel_config CONFIG_ARCH_BCM y | |||
|
326 | set_kernel_config CONFIG_ARCH_BCM2835 y | |||
|
327 | set_kernel_config CONFIG_DRM_V3D m | |||
|
328 | set_kernel_config CONFIG_DRM_VC4 m | |||
|
329 | set_kernel_config CONFIG_DRM_VC4_HDMI_CEC y | |||
|
330 | ||||
|
331 | # PR#3144: add arm64 pcie bounce buffers; enables 4GiB on RPi4 | |||
|
332 | # required by PR#3144; should already be applied, but just to be safe | |||
|
333 | set_kernel_config CONFIG_PCIE_BRCMSTB y | |||
|
334 | set_kernel_config CONFIG_BCM2835_MMC y | |||
|
335 | ||||
|
336 | # Snap needs squashfs. The ubuntu eoan-preinstalled-server image at | |||
|
337 | # http://cdimage.ubuntu.com/ubuntu-server/daily-preinstalled/current/ uses snap | |||
|
338 | # during cloud-init setup at first boot. Without this the login accounts are not | |||
|
339 | # created and the user can not login. | |||
|
340 | set_kernel_config CONFIG_SQUASHFS y | |||
|
341 | ||||
|
342 | # Ceph support for Block Device (RBD) and Filesystem (FS) | |||
|
343 | # https://docs.ceph.com/docs/master/ | |||
|
344 | set_kernel_config CONFIG_CEPH_LIB m | |||
|
345 | set_kernel_config CONFIG_CEPH_LIB_USE_DNS_RESOLVER y | |||
|
346 | set_kernel_config CONFIG_CEPH_FS m | |||
|
347 | set_kernel_config CONFIG_CEPH_FSCACHE y | |||
|
348 | set_kernel_config CONFIG_CEPH_FS_POSIX_ACL y | |||
|
349 | set_kernel_config CONFIG_BLK_DEV_RBD m | |||
124 |
|
350 | |||
125 | # enable basic KVM support; see https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=210546&start=25#p1300453 |
|
351 | # enable basic KVM support; see https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=210546&start=25#p1300453 | |
126 | if [ "$KERNEL_VIRT" = true ] && { [ "$RPI_MODEL" = 2 ] || [ "$RPI_MODEL" = 3 ] || [ "$RPI_MODEL" = 3P ] ; } ; then |
|
352 | if [ "$KERNEL_VIRT" = true ] && { [ "$RPI_MODEL" = 2 ] || [ "$RPI_MODEL" = 3 ] || [ "$RPI_MODEL" = 3P ] || [ "$RPI_MODEL" = 4 ]; } ; then | |
|
353 | set_kernel_config CONFIG_HAVE_KVM y | |||
|
354 | set_kernel_config CONFIG_HIGH_RES_TIMERS y | |||
127 | set_kernel_config CONFIG_HAVE_KVM_IRQCHIP y |
|
355 | set_kernel_config CONFIG_HAVE_KVM_IRQCHIP y | |
128 | set_kernel_config CONFIG_HAVE_KVM_ARCH_TLB_FLUSH_ALL y |
|
356 | set_kernel_config CONFIG_HAVE_KVM_ARCH_TLB_FLUSH_ALL y | |
129 | set_kernel_config CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT y |
|
357 | set_kernel_config CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT y | |
@@ -138,11 +366,13 if [ "$BUILD_KERNEL" = true ] ; then | |||||
138 | set_kernel_config CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT y |
|
366 | set_kernel_config CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT y | |
139 | set_kernel_config CONFIG_KVM_MMIO y |
|
367 | set_kernel_config CONFIG_KVM_MMIO y | |
140 | set_kernel_config CONFIG_KVM_VFIO y |
|
368 | set_kernel_config CONFIG_KVM_VFIO y | |
|
369 | set_kernel_config CONFIG_KVM_MMU_AUDIT y | |||
141 | set_kernel_config CONFIG_VHOST m |
|
370 | set_kernel_config CONFIG_VHOST m | |
142 | set_kernel_config CONFIG_VHOST_CROSS_ENDIAN_LEGACY y |
|
371 | set_kernel_config CONFIG_VHOST_CROSS_ENDIAN_LEGACY y | |
143 | set_kernel_config CONFIG_VHOST_NET m |
|
372 | set_kernel_config CONFIG_VHOST_NET m | |
144 | set_kernel_config CONFIG_VIRTUALIZATION y |
|
373 | set_kernel_config CONFIG_VIRTUALIZATION y | |
145 |
|
374 | set_kernel_config CONFIG_SLAB_FREELIST_RANDOM=y | ||
|
375 | set_kernel_config CONFIG_SLAB_FREELIST_HARDENED=y | |||
146 | set_kernel_config CONFIG_MMU_NOTIFIER y |
|
376 | set_kernel_config CONFIG_MMU_NOTIFIER y | |
147 |
|
377 | |||
148 | # erratum |
|
378 | # erratum | |
@@ -193,12 +423,6 if [ "$BUILD_KERNEL" = true ] ; then | |||||
193 | set_kernel_config CONFIG_SECURITY_PATH y |
|
423 | set_kernel_config CONFIG_SECURITY_PATH y | |
194 | set_kernel_config CONFIG_SECURITY_YAMA n |
|
424 | set_kernel_config CONFIG_SECURITY_YAMA n | |
195 |
|
425 | |||
196 | # New Options |
|
|||
197 | if [ "$KERNEL_NF" = true ] ; then |
|
|||
198 | set_kernel_config CONFIG_IP_NF_SECURITY m |
|
|||
199 | set_kernel_config CONFIG_NETLABEL y |
|
|||
200 | set_kernel_config CONFIG_IP6_NF_SECURITY m |
|
|||
201 | fi |
|
|||
202 | set_kernel_config CONFIG_SECURITY_SELINUX n |
|
426 | set_kernel_config CONFIG_SECURITY_SELINUX n | |
203 | set_kernel_config CONFIG_SECURITY_SMACK n |
|
427 | set_kernel_config CONFIG_SECURITY_SMACK n | |
204 | set_kernel_config CONFIG_SECURITY_TOMOYO n |
|
428 | set_kernel_config CONFIG_SECURITY_TOMOYO n | |
@@ -211,7 +435,6 if [ "$BUILD_KERNEL" = true ] ; then | |||||
211 | set_kernel_config CONFIG_NFSD_V4_SECURITY_LABEL y |
|
435 | set_kernel_config CONFIG_NFSD_V4_SECURITY_LABEL y | |
212 | set_kernel_config CONFIG_PKCS7_MESSAGE_PARSER y |
|
436 | set_kernel_config CONFIG_PKCS7_MESSAGE_PARSER y | |
213 | set_kernel_config CONFIG_SYSTEM_TRUSTED_KEYRING y |
|
437 | set_kernel_config CONFIG_SYSTEM_TRUSTED_KEYRING y | |
214 | set_kernel_config CONFIG_SYSTEM_TRUSTED_KEYS y |
|
|||
215 | set_kernel_config CONFIG_SYSTEM_EXTRA_CERTIFICATE y |
|
438 | set_kernel_config CONFIG_SYSTEM_EXTRA_CERTIFICATE y | |
216 | set_kernel_config CONFIG_SECONDARY_TRUSTED_KEYRING y |
|
439 | set_kernel_config CONFIG_SECONDARY_TRUSTED_KEYRING y | |
217 | set_kernel_config CONFIG_IMA_KEYRINGS_PERMIT_SIGNED_BY_BUILTIN_OR_SECONDARY n |
|
440 | set_kernel_config CONFIG_IMA_KEYRINGS_PERMIT_SIGNED_BY_BUILTIN_OR_SECONDARY n | |
@@ -233,11 +456,13 if [ "$BUILD_KERNEL" = true ] ; then | |||||
233 | set_kernel_config CONFIG_CRYPTO_AES_ARM64_NEON_BLK m |
|
456 | set_kernel_config CONFIG_CRYPTO_AES_ARM64_NEON_BLK m | |
234 | set_kernel_config CONFIG_CRYPTO_CHACHA20_NEON m |
|
457 | set_kernel_config CONFIG_CRYPTO_CHACHA20_NEON m | |
235 | set_kernel_config CONFIG_CRYPTO_AES_ARM64_BS m |
|
458 | set_kernel_config CONFIG_CRYPTO_AES_ARM64_BS m | |
236 | set_kernel_config SYSTEM_TRUSTED_KEYS |
|
|||
237 | fi |
|
459 | fi | |
238 |
|
460 | |||
239 | # Netfilter kernel support See https://github.com/raspberrypi/linux/issues/2177#issuecomment-354647406 |
|
461 | # Netfilter kernel support See https://github.com/raspberrypi/linux/issues/2177#issuecomment-354647406 | |
240 | if [ "$KERNEL_NF" = true ] ; then |
|
462 | if [ "$KERNEL_NF" = true ] ; then | |
|
463 | set_kernel_config CONFIG_IP_NF_SECURITY m | |||
|
464 | set_kernel_config CONFIG_NETLABEL y | |||
|
465 | set_kernel_config CONFIG_IP6_NF_SECURITY m | |||
241 | set_kernel_config CONFIG_IP_NF_TARGET_SYNPROXY m |
|
466 | set_kernel_config CONFIG_IP_NF_TARGET_SYNPROXY m | |
242 | set_kernel_config CONFIG_NETFILTER_XT_TARGET_AUDIT m |
|
467 | set_kernel_config CONFIG_NETFILTER_XT_TARGET_AUDIT m | |
243 | set_kernel_config CONFIG_NETFILTER_XT_MATCH_CGROUP m |
|
468 | set_kernel_config CONFIG_NETFILTER_XT_MATCH_CGROUP m | |
@@ -263,7 +488,6 if [ "$BUILD_KERNEL" = true ] ; then | |||||
263 | set_kernel_config CONFIG_IP6_NF_NAT m |
|
488 | set_kernel_config CONFIG_IP6_NF_NAT m | |
264 | set_kernel_config CONFIG_IP6_NF_TARGET_MASQUERADE m |
|
489 | set_kernel_config CONFIG_IP6_NF_TARGET_MASQUERADE m | |
265 | set_kernel_config CONFIG_IP6_NF_TARGET_NPT m |
|
490 | set_kernel_config CONFIG_IP6_NF_TARGET_NPT m | |
266 | set_kernel_config CONFIG_IP_NF_SECURITY m |
|
|||
267 | set_kernel_config CONFIG_IP_SET_BITMAP_IPMAC m |
|
491 | set_kernel_config CONFIG_IP_SET_BITMAP_IPMAC m | |
268 | set_kernel_config CONFIG_IP_SET_BITMAP_PORT m |
|
492 | set_kernel_config CONFIG_IP_SET_BITMAP_PORT m | |
269 | set_kernel_config CONFIG_IP_SET_HASH_IP m |
|
493 | set_kernel_config CONFIG_IP_SET_HASH_IP m | |
@@ -326,11 +550,11 if [ "$BUILD_KERNEL" = true ] ; then | |||||
326 | set_kernel_config CONFIG_NF_LOG_IPV6 m |
|
550 | set_kernel_config CONFIG_NF_LOG_IPV6 m | |
327 | set_kernel_config CONFIG_NF_NAT_IPV4 m |
|
551 | set_kernel_config CONFIG_NF_NAT_IPV4 m | |
328 | set_kernel_config CONFIG_NF_NAT_IPV6 m |
|
552 | set_kernel_config CONFIG_NF_NAT_IPV6 m | |
329 |
set_kernel_config CONFIG_NF_NAT_MASQUERADE_IPV4 |
|
553 | set_kernel_config CONFIG_NF_NAT_MASQUERADE_IPV4 y | |
330 |
set_kernel_config CONFIG_NF_NAT_MASQUERADE_IPV6 |
|
554 | set_kernel_config CONFIG_NF_NAT_MASQUERADE_IPV6 y | |
331 | set_kernel_config CONFIG_NF_NAT_PPTP m |
|
555 | set_kernel_config CONFIG_NF_NAT_PPTP m | |
332 | set_kernel_config CONFIG_NF_NAT_PROTO_GRE m |
|
556 | set_kernel_config CONFIG_NF_NAT_PROTO_GRE m | |
333 |
set_kernel_config CONFIG_NF_NAT_REDIRECT |
|
557 | set_kernel_config CONFIG_NF_NAT_REDIRECT y | |
334 | set_kernel_config CONFIG_NF_NAT_SIP m |
|
558 | set_kernel_config CONFIG_NF_NAT_SIP m | |
335 | set_kernel_config CONFIG_NF_NAT_SNMP_BASIC m |
|
559 | set_kernel_config CONFIG_NF_NAT_SNMP_BASIC m | |
336 | set_kernel_config CONFIG_NF_NAT_TFTP m |
|
560 | set_kernel_config CONFIG_NF_NAT_TFTP m | |
@@ -340,17 +564,35 if [ "$BUILD_KERNEL" = true ] ; then | |||||
340 | set_kernel_config CONFIG_NF_TABLES_ARP m |
|
564 | set_kernel_config CONFIG_NF_TABLES_ARP m | |
341 | set_kernel_config CONFIG_NF_TABLES_BRIDGE m |
|
565 | set_kernel_config CONFIG_NF_TABLES_BRIDGE m | |
342 | set_kernel_config CONFIG_NF_TABLES_INET m |
|
566 | set_kernel_config CONFIG_NF_TABLES_INET m | |
343 |
set_kernel_config CONFIG_NF_TABLES_IPV4 |
|
567 | set_kernel_config CONFIG_NF_TABLES_IPV4 y | |
344 |
set_kernel_config CONFIG_NF_TABLES_IPV6 |
|
568 | set_kernel_config CONFIG_NF_TABLES_IPV6 y | |
345 | set_kernel_config CONFIG_NF_TABLES_NETDEV m |
|
569 | set_kernel_config CONFIG_NF_TABLES_NETDEV m | |
|
570 | set_kernel_config CONFIG_NF_TABLES_SET m | |||
|
571 | set_kernel_config CONFIG_NF_TABLES_INET y | |||
|
572 | set_kernel_config CONFIG_NF_TABLES_NETDEV y | |||
|
573 | set_kernel_config CONFIG_NFT_CONNLIMIT m | |||
|
574 | set_kernel_config CONFIG_NFT_TUNNEL m | |||
|
575 | set_kernel_config CONFIG_NFT_SOCKET m | |||
|
576 | set_kernel_config CONFIG_NFT_TPROXY m | |||
|
577 | set_kernel_config CONFIG_NF_FLOW_TABLE m | |||
|
578 | set_kernel_config CONFIG_NFT_FLOW_OFFLOAD m | |||
|
579 | set_kernel_config CONFIG_NF_FLOW_TABLE_INET m | |||
|
580 | set_kernel_config CONFIG_NF_TABLES_ARP y | |||
|
581 | set_kernel_config CONFIG_NF_FLOW_TABLE_IPV4 y | |||
|
582 | set_kernel_config CONFIG_NF_FLOW_TABLE_IPV6 y | |||
|
583 | set_kernel_config CONFIG_NF_TABLES_BRIDGE y | |||
|
584 | set_kernel_config CONFIG_NF_CT_NETLINK_TIMEOUT m | |||
|
585 | set_kernel_config CONFIG_NFT_OSF m | |||
|
586 | ||||
346 | fi |
|
587 | fi | |
347 |
|
588 | |||
348 | # Enables BPF syscall for systemd-journald see https://github.com/torvalds/linux/blob/master/init/Kconfig#L848 or https://groups.google.com/forum/#!topic/linux.gentoo.user/_2aSc_ztGpA |
|
589 | # Enables BPF syscall for systemd-journald see https://github.com/torvalds/linux/blob/master/init/Kconfig#L848 or https://groups.google.com/forum/#!topic/linux.gentoo.user/_2aSc_ztGpA | |
349 | if [ "$KERNEL_BPF" = true ] ; then |
|
590 | if [ "$KERNEL_BPF" = true ] ; then | |
350 | set_kernel_config CONFIG_BPF_SYSCALL y |
|
591 | set_kernel_config CONFIG_BPF_SYSCALL y | |
351 |
|
|
592 | set_kernel_config CONFIG_BPF_EVENTS y | |
352 |
|
|
593 | set_kernel_config CONFIG_BPF_STREAM_PARSER y | |
353 | set_kernel_config CONFIG_CGROUP_BPF y |
|
594 | set_kernel_config CONFIG_CGROUP_BPF y | |
|
595 | set_kernel_config CONFIG_XDP_SOCKETS y | |||
354 | fi |
|
596 | fi | |
355 |
|
597 | |||
356 | # KERNEL_DEFAULT_GOV was set by user |
|
598 | # KERNEL_DEFAULT_GOV was set by user | |
@@ -537,20 +779,28 if [ "$BUILD_KERNEL" = true ] ; then | |||||
537 | fi |
|
779 | fi | |
538 |
|
780 | |||
539 | else # BUILD_KERNEL=false |
|
781 | else # BUILD_KERNEL=false | |
540 | if [ "$SET_ARCH" = 64 ] && { [ "$RPI_MODEL" = 3 ] || [ "$RPI_MODEL" = 3P ] ; } ; then |
|
782 | if [ "$SET_ARCH" = 64 ] ; then | |
541 |
|
783 | if [ "$RPI_MODEL" = 3 ] || [ "$RPI_MODEL" = 3P ] ; then | ||
542 | # Use Sakakis modified kernel if ZSWAP is active |
|
784 | # Use Sakakis modified kernel if ZSWAP is active | |
543 | if [ "$KERNEL_ZSWAP" = true ] || [ "$KERNEL_VIRT" = true ] || [ "$KERNEL_NF" = true ] || [ "$KERNEL_BPF" = true ] ; then |
|
785 | if [ "$KERNEL_ZSWAP" = true ] || [ "$KERNEL_VIRT" = true ] || [ "$KERNEL_NF" = true ] || [ "$KERNEL_BPF" = true ] ; then | |
544 | RPI3_64_KERNEL_URL="${RPI3_64_BIS_KERNEL_URL}" |
|
786 | RPI3_64_KERNEL_URL="${RPI3_64_BIS_KERNEL_URL}" | |
545 | fi |
|
787 | fi | |
546 |
|
788 | |||
547 | # Create temporary directory for dl |
|
789 | # Create temporary directory for dl | |
548 | temp_dir=$(as_nobody mktemp -d) |
|
790 | temp_dir=$(as_nobody mktemp -d) | |
549 |
|
791 | |||
550 | # Fetch kernel dl |
|
792 | # Fetch kernel dl | |
551 | as_nobody wget -O "${temp_dir}"/kernel.tar.xz -c "$RPI3_64_KERNEL_URL" |
|
793 | as_nobody wget -O "${temp_dir}"/kernel.tar.xz -c "$RPI3_64_KERNEL_URL" | |
|
794 | fi | |||
|
795 | if [ "$SET_ARCH" = 64 ] && [ "$RPI_MODEL" = 4 ] ; then | |||
|
796 | # Create temporary directory for dl | |||
|
797 | temp_dir=$(as_nobody mktemp -d) | |||
552 |
|
798 | |||
553 | #extract download |
|
799 | # Fetch kernel dl | |
|
800 | as_nobody wget -O "${temp_dir}"/kernel.tar.xz -c "$RPI4_64_KERNEL_URL" | |||
|
801 | fi | |||
|
802 | ||||
|
803 | #extract download | |||
554 | tar -xJf "${temp_dir}"/kernel.tar.xz -C "${temp_dir}" |
|
804 | tar -xJf "${temp_dir}"/kernel.tar.xz -C "${temp_dir}" | |
555 |
|
805 | |||
556 | #move extracted kernel to /boot/firmware |
|
806 | #move extracted kernel to /boot/firmware | |
@@ -566,15 +816,15 else # BUILD_KERNEL=false | |||||
566 | chown -R root:root "${R}/lib/modules" |
|
816 | chown -R root:root "${R}/lib/modules" | |
567 | fi |
|
817 | fi | |
568 |
|
818 | |||
569 | # Install Kernel from hypriot comptabile with all Raspberry PI |
|
819 | # Install Kernel from hypriot comptabile with all Raspberry PI (dunno if its compatible with RPI4 - better compile your own kernel) | |
570 | if [ "$SET_ARCH" = 32 ] ; then |
|
820 | if [ "$SET_ARCH" = 32 ] && [ "$RPI_MODEL" != 4 ] ; then | |
571 | # Create temporary directory for dl |
|
821 | # Create temporary directory for dl | |
572 | temp_dir=$(as_nobody mktemp -d) |
|
822 | temp_dir=$(as_nobody mktemp -d) | |
573 |
|
823 | |||
574 | # Fetch kernel |
|
824 | # Fetch kernel | |
575 | as_nobody wget -O "${temp_dir}"/kernel.deb -c "$RPI_32_KERNEL_URL" |
|
825 | as_nobody wget -O "${temp_dir}"/kernel.deb -c "$RPI_32_KERNEL_URL" | |
576 |
|
826 | |||
577 |
# Copy downloaded |
|
827 | # Copy downloaded kernel package | |
578 | mv "${temp_dir}"/kernel.deb "${R}"/tmp/kernel.deb |
|
828 | mv "${temp_dir}"/kernel.deb "${R}"/tmp/kernel.deb | |
579 |
|
829 | |||
580 | # Set permissions |
|
830 | # Set permissions |
@@ -112,7 +112,7 if [ "$ENABLE_TURBO" = true ] ; then | |||||
112 | echo "boot_delay=1" >> "${BOOT_DIR}/config.txt" |
|
112 | echo "boot_delay=1" >> "${BOOT_DIR}/config.txt" | |
113 | fi |
|
113 | fi | |
114 |
|
114 | |||
115 | if [ "$RPI_MODEL" = 0 ] || [ "$RPI_MODEL" = 3 ] || [ "$RPI_MODEL" = 3P ] ; then |
|
115 | if [ "$RPI_MODEL" = 0 ] || [ "$RPI_MODEL" = 3 ] || [ "$RPI_MODEL" = 3P ] || [ "$RPI_MODEL" = 4 ]; then | |
116 |
|
116 | |||
117 | # Bluetooth enabled |
|
117 | # Bluetooth enabled | |
118 | if [ "$ENABLE_BLUETOOTH" = true ] ; then |
|
118 | if [ "$ENABLE_BLUETOOTH" = true ] ; then | |
@@ -125,12 +125,12 if [ "$RPI_MODEL" = 0 ] || [ "$RPI_MODEL" = 3 ] || [ "$RPI_MODEL" = 3P ] ; then | |||||
125 | # Copy downloaded sources |
|
125 | # Copy downloaded sources | |
126 | mv "${temp_dir}/pi-bluetooth" "${R}/tmp/" |
|
126 | mv "${temp_dir}/pi-bluetooth" "${R}/tmp/" | |
127 |
|
127 | |||
128 | # Bluetooth firmware from arch aur https://aur.archlinux.org/packages/pi-bluetooth/ |
|
|||
129 | as_nobody wget -q -O "${R}/tmp/pi-bluetooth/LICENCE.broadcom_bcm43xx" https://aur.archlinux.org/cgit/aur.git/plain/LICENCE.broadcom_bcm43xx?h=pi-bluetooth |
|
|||
130 | as_nobody wget -q -O "${R}/tmp/pi-bluetooth/BCM43430A1.hcd" https://raw.githubusercontent.com/RPi-Distro/bluez-firmware/master/broadcom/BCM43430A1.hcd |
|
|||
131 |
|
||||
132 | # Set permissions |
|
128 | # Set permissions | |
133 | chown -R root:root "${R}/tmp/pi-bluetooth" |
|
129 | chown -R root:root "${R}/tmp/pi-bluetooth" | |
|
130 | ||||
|
131 | # Bluetooth firmware from arch aur https://aur.archlinux.org/packages/pi-bluetooth/ | |||
|
132 | wget -q -O "${R}/tmp/pi-bluetooth/LICENCE.broadcom_bcm43xx" https://aur.archlinux.org/cgit/aur.git/plain/LICENCE.broadcom_bcm43xx?h=pi-bluetooth | |||
|
133 | wget -q -O "${R}/tmp/pi-bluetooth/BCM43430A1.hcd" https://raw.githubusercontent.com/RPi-Distro/bluez-firmware/master/broadcom/BCM43430A1.hcd | |||
134 |
|
134 | |||
135 | # Install tools |
|
135 | # Install tools | |
136 | install_readonly "${R}/tmp/pi-bluetooth/usr/bin/btuart" "${R}/usr/bin/btuart" |
|
136 | install_readonly "${R}/tmp/pi-bluetooth/usr/bin/btuart" "${R}/usr/bin/btuart" | |
@@ -210,7 +210,11 if [ "$ENABLE_SYSTEMDSWAP" = true ] ; then | |||||
210 |
|
210 | |||
211 | # Change into downloaded src dir |
|
211 | # Change into downloaded src dir | |
212 | cd "${R}/tmp/systemd-swap" || exit |
|
212 | cd "${R}/tmp/systemd-swap" || exit | |
213 |
|
213 | |||
|
214 | # Get Verion | |||
|
215 | VERSION=$(git tag | tail -n 1) | |||
|
216 | #sed -i "s/DEB_NAME=.*/DEB_NAME=systemd-swap_all/g" "${R}/tmp/systemd-swap/package.sh" | |||
|
217 | ||||
214 | # Build package |
|
218 | # Build package | |
215 | bash ./package.sh debian |
|
219 | bash ./package.sh debian | |
216 |
|
220 | |||
@@ -221,7 +225,7 if [ "$ENABLE_SYSTEMDSWAP" = true ] ; then | |||||
221 | chown -R root:root "${R}/tmp/systemd-swap" |
|
225 | chown -R root:root "${R}/tmp/systemd-swap" | |
222 |
|
226 | |||
223 | # Install package - IMPROVE AND MAKE IT POSSIBLE WITHOUT VERSION NR. |
|
227 | # Install package - IMPROVE AND MAKE IT POSSIBLE WITHOUT VERSION NR. | |
224 |
chroot_exec dpkg -i /tmp/systemd-swap/systemd-swap_ |
|
228 | chroot_exec dpkg -i /tmp/systemd-swap/systemd-swap_"$VERSION"_all.deb | |
225 |
|
229 | |||
226 | # Enable service |
|
230 | # Enable service | |
227 | chroot_exec systemctl enable systemd-swap |
|
231 | chroot_exec systemctl enable systemd-swap |
@@ -106,7 +106,7 if [ "$ENABLE_WIRELESS" = true ] ; then | |||||
106 | temp_dir=$(as_nobody mktemp -d) |
|
106 | temp_dir=$(as_nobody mktemp -d) | |
107 |
|
107 | |||
108 | # Fetch firmware binary blob for RPI3B+ |
|
108 | # Fetch firmware binary blob for RPI3B+ | |
109 | if [ "$RPI_MODEL" = 3P ] ; then |
|
109 | if [ "$RPI_MODEL" = 3P ] || [ "$RPI_MODEL" = 4 ] ; then | |
110 | # Fetch firmware binary blob for RPi3P |
|
110 | # Fetch firmware binary blob for RPi3P | |
111 | as_nobody wget -q -O "${temp_dir}/brcmfmac43455-sdio.bin" "${WLAN_FIRMWARE_URL}/brcmfmac43455-sdio.bin" |
|
111 | as_nobody wget -q -O "${temp_dir}/brcmfmac43455-sdio.bin" "${WLAN_FIRMWARE_URL}/brcmfmac43455-sdio.bin" | |
112 | as_nobody wget -q -O "${temp_dir}/brcmfmac43455-sdio.txt" "${WLAN_FIRMWARE_URL}/brcmfmac43455-sdio.txt" |
|
112 | as_nobody wget -q -O "${temp_dir}/brcmfmac43455-sdio.txt" "${WLAN_FIRMWARE_URL}/brcmfmac43455-sdio.txt" |
@@ -34,11 +34,11 if [ "$ENABLE_VIDEOCORE" = true ] ; then | |||||
34 | cd "${R}"/tmp/userland/build |
|
34 | cd "${R}"/tmp/userland/build | |
35 |
|
35 | |||
36 | if [ "$RELEASE_ARCH" = "arm64" ] ; then |
|
36 | if [ "$RELEASE_ARCH" = "arm64" ] ; then | |
37 | cmake -DCMAKE_SYSTEM_NAME=Linux -DCMAKE_BUILD_TYPE=release -DARM64=ON -DCMAKE_C_COMPILER=aarch64-linux-gnu-gcc -DCMAKE_CXX_COMPILER=aarch64-linux-gnu-g++ -DCMAKE_ASM_COMPILER=aarch64-linux-gnu-gcc -DCMAKE_C_FLAGS="${CMAKE_C_FLAGS} -U_FORTIFY_SOURCE" -DCMAKE_ASM_FLAGS="${CMAKE_ASM_FLAGS} -c" -DVIDEOCORE_BUILD_DIR="${R}" "${R}/tmp/userland" |
|
37 | cmake -DCMAKE_SYSTEM_NAME=Linux -DCMAKE_BUILD_TYPE=release -DCMAKE_TOOLCHAIN_FILE="${R}"/tmp/userland/makefiles/cmake/toolchains/aarch64-linux-gnu.cmake -DARM64=ON -DCMAKE_C_COMPILER=aarch64-linux-gnu-gcc -DCMAKE_CXX_COMPILER=aarch64-linux-gnu-g++ -DCMAKE_ASM_COMPILER=aarch64-linux-gnu-gcc -DCMAKE_C_FLAGS="${CMAKE_C_FLAGS} -U_FORTIFY_SOURCE" -DCMAKE_ASM_FLAGS="${CMAKE_ASM_FLAGS} -c" -DVIDEOCORE_BUILD_DIR="${R}" "${R}/tmp/userland" | |
38 | fi |
|
38 | fi | |
39 |
|
39 | |||
40 | if [ "$RELEASE_ARCH" = "armel" ] ; then |
|
40 | if [ "$RELEASE_ARCH" = "armel" ] ; then | |
41 | cmake -DCMAKE_SYSTEM_NAME=Linux -DCMAKE_BUILD_TYPE=release -DCMAKE_C_COMPILER=arm-linux-gnueabi-gcc -DCMAKE_CXX_COMPILER=arm-linux-gnueabi-g++ -DCMAKE_ASM_COMPILER=arm-linux-gnueabi-gcc -DCMAKE_C_FLAGS="${CMAKE_C_FLAGS} -U_FORTIFY_SOURCE" -DCMAKE_ASM_FLAGS="${CMAKE_ASM_FLAGS} -c" -DCMAKE_SYSTEM_PROCESSOR="arm" -DVIDEOCORE_BUILD_DIR="${R}" "${R}/tmp/userland" |
|
41 | cmake -DCMAKE_SYSTEM_NAME=Linux -DCMAKE_BUILD_TYPE=release -DCMAKE_TOOLCHAIN_FILE="${R}"/tmp/userland/makefiles/cmake/toolchains/arm-linux-gnueabihf.cmake -DCMAKE_C_COMPILER=arm-linux-gnueabi-gcc -DCMAKE_CXX_COMPILER=arm-linux-gnueabi-g++ -DCMAKE_ASM_COMPILER=arm-linux-gnueabi-gcc -DCMAKE_C_FLAGS="${CMAKE_C_FLAGS} -U_FORTIFY_SOURCE" -DCMAKE_ASM_FLAGS="${CMAKE_ASM_FLAGS} -c" -DCMAKE_SYSTEM_PROCESSOR="arm" -DVIDEOCORE_BUILD_DIR="${R}" "${R}/tmp/userland" | |
42 | fi |
|
42 | fi | |
43 |
|
43 | |||
44 | if [ "$RELEASE_ARCH" = "armhf" ] ; then |
|
44 | if [ "$RELEASE_ARCH" = "armhf" ] ; then |
@@ -74,7 +74,7 if [ "$ENABLE_NEXMON" = true ] && [ "$ENABLE_WIRELESS" = true ]; then | |||||
74 | cp -f "${NEXMON_ROOT}"/patches/bcm43430a1/7_45_41_46/nexmon/brcmfmac43430-sdio.bin "${WLAN_FIRMWARE_DIR}"/brcmfmac43430-sdio.bin |
|
74 | cp -f "${NEXMON_ROOT}"/patches/bcm43430a1/7_45_41_46/nexmon/brcmfmac43430-sdio.bin "${WLAN_FIRMWARE_DIR}"/brcmfmac43430-sdio.bin | |
75 | fi |
|
75 | fi | |
76 |
|
76 | |||
77 | if [ "$RPI_MODEL" = 3P ] ; then |
|
77 | if [ "$RPI_MODEL" = 3P ] || [ "$RPI_MODEL" = 4 ] ; then | |
78 | cd "${NEXMON_ROOT}"/patches/bcm43455c0/7_45_154/nexmon || exit |
|
78 | cd "${NEXMON_ROOT}"/patches/bcm43455c0/7_45_154/nexmon || exit | |
79 | sed -i -e 's/all:.*/all: $(RAM_FILE)/g' ${NEXMON_ROOT}/patches/bcm43455c0/7_45_154/nexmon/Makefile |
|
79 | sed -i -e 's/all:.*/all: $(RAM_FILE)/g' ${NEXMON_ROOT}/patches/bcm43455c0/7_45_154/nexmon/Makefile | |
80 | make clean |
|
80 | make clean |
@@ -64,11 +64,16 SYSTEMDSWAP_URL=${SYSTEMDSWAP_URL:=https://github.com/Nefelim4ag/systemd-swap.gi | |||||
64 | RPI_32_KERNEL_URL=${RPI_32_KERNEL_URL:=https://github.com/hypriot/rpi-kernel/releases/download/v4.14.34/raspberrypi-kernel_20180422-141901_armhf.deb} |
|
64 | RPI_32_KERNEL_URL=${RPI_32_KERNEL_URL:=https://github.com/hypriot/rpi-kernel/releases/download/v4.14.34/raspberrypi-kernel_20180422-141901_armhf.deb} | |
65 | RPI_32_KERNELHEADER_URL=${RPI_32_KERNELHEADER_URL:=https://github.com/hypriot/rpi-kernel/releases/download/v4.14.34/raspberrypi-kernel-headers_20180422-141901_armhf.deb} |
|
65 | RPI_32_KERNELHEADER_URL=${RPI_32_KERNELHEADER_URL:=https://github.com/hypriot/rpi-kernel/releases/download/v4.14.34/raspberrypi-kernel-headers_20180422-141901_armhf.deb} | |
66 | # Kernel has KVM and zswap enabled - use if KERNEL_* parameters and precompiled kernel are used |
|
66 | # Kernel has KVM and zswap enabled - use if KERNEL_* parameters and precompiled kernel are used | |
67 |
RPI3_64_BIS_KERNEL_URL=${RPI3_64_BIS_KERNEL_URL:=https://github.com/sakaki-/bcmrpi3-kernel-bis/releases/download/4.1 |
|
67 | RPI3_64_BIS_KERNEL_URL=${RPI3_64_BIS_KERNEL_URL:=https://github.com/sakaki-/bcmrpi3-kernel-bis/releases/download/4.19.80.20191022/bcmrpi3-kernel-bis-4.19.80.20191022.tar.xz} | |
68 | # Default precompiled 64bit kernel |
|
68 | # Default precompiled 64bit kernel | |
69 |
RPI3_64_DEF_KERNEL_URL=${RPI3_64_DEF_KERNEL_URL:=https://github.com/sakaki-/bcmrpi3-kernel/releases/download/4.1 |
|
69 | RPI3_64_DEF_KERNEL_URL=${RPI3_64_DEF_KERNEL_URL:=https://github.com/sakaki-/bcmrpi3-kernel/releases/download/4.19.80.20191022/bcmrpi3-kernel-4.19.80.20191022.tar.xz} | |
|
70 | # Sakaki BIS Kernel RPI4 - https://github.com/sakaki-/bcm2711-kernel-bis | |||
|
71 | RPI4_64_BIS_KERNEL_URL=${RPI4_64_BIS_KERNEL_URL:=https://github.com/sakaki-/bcm2711-kernel-bis/releases/download/4.19.59.20190724/bcm2711-kernel-bis-4.19.59.20190724.tar.xz} | |||
|
72 | # Default precompiled 64bit kernel - https://github.com/sakaki-/bcm2711-kernel | |||
|
73 | RPI4_64_DEF_KERNEL_URL=${RPI4_64_DEF_KERNEL_URL:=https://github.com/sakaki-/bcm2711-kernel-bis/releases/download/4.19.59.20190724/bcm2711-kernel-bis-4.19.59.20190724.tar.xz} | |||
70 | # Generic |
|
74 | # Generic | |
71 | RPI3_64_KERNEL_URL=${RPI3_64_KERNEL_URL:=$RPI3_64_DEF_KERNEL_URL} |
|
75 | RPI3_64_KERNEL_URL=${RPI3_64_KERNEL_URL:=$RPI3_64_DEF_KERNEL_URL} | |
|
76 | RPI4_64_KERNEL_URL=${RPI4_64_KERNEL_URL:=$RPI4_64_DEF_KERNEL_URL} | |||
72 | # Kali kernel src - used if ENABLE_NEXMON=true (they patch the wlan kernel modul) |
|
77 | # Kali kernel src - used if ENABLE_NEXMON=true (they patch the wlan kernel modul) | |
73 | KALI_KERNEL_URL=${KALI_KERNEL_URL:=https://github.com/Re4son/re4son-raspberrypi-linux.git} |
|
78 | KALI_KERNEL_URL=${KALI_KERNEL_URL:=https://github.com/Re4son/re4son-raspberrypi-linux.git} | |
74 |
|
79 | |||
@@ -224,7 +229,7 CHROOT_SCRIPTS=${CHROOT_SCRIPTS:=""} | |||||
224 |
|
229 | |||
225 | # Packages required in the chroot build environment |
|
230 | # Packages required in the chroot build environment | |
226 | APT_INCLUDES=${APT_INCLUDES:=""} |
|
231 | APT_INCLUDES=${APT_INCLUDES:=""} | |
227 | APT_INCLUDES="${APT_INCLUDES},apt-transport-https,apt-utils,ca-certificates,debian-archive-keyring,dialog,sudo,systemd,sysvinit-utils,locales,keyboard-configuration,console-setup,libnss-systemd" |
|
232 | APT_INCLUDES="${APT_INCLUDES},flex,bison,libssl-dev,apt-transport-https,apt-utils,ca-certificates,debian-archive-keyring,dialog,sudo,systemd,sysvinit-utils,locales,keyboard-configuration,console-setup,libnss-systemd" | |
228 |
|
233 | |||
229 | # Packages to exclude from chroot build environment |
|
234 | # Packages to exclude from chroot build environment | |
230 | APT_EXCLUDES=${APT_EXCLUDES:=""} |
|
235 | APT_EXCLUDES=${APT_EXCLUDES:=""} | |
@@ -289,13 +294,15 if [ -n "$SET_ARCH" ] ; then | |||||
289 | if [ "$RPI_MODEL" = 2 ] || [ "$RPI_MODEL" = 3 ] || [ "$RPI_MODEL" = 3P ] || [ "$RPI_MODEL" = 4 ] ; then |
|
294 | if [ "$RPI_MODEL" = 2 ] || [ "$RPI_MODEL" = 3 ] || [ "$RPI_MODEL" = 3P ] || [ "$RPI_MODEL" = 4 ] ; then | |
290 | if [ "$RPI_MODEL" != 4 ] ; then |
|
295 | if [ "$RPI_MODEL" != 4 ] ; then | |
291 | KERNEL_DEFCONFIG=${KERNEL_DEFCONFIG:=bcm2709_defconfig} |
|
296 | KERNEL_DEFCONFIG=${KERNEL_DEFCONFIG:=bcm2709_defconfig} | |
|
297 | KERNEL_IMAGE=${KERNEL_IMAGE:=kernel7.img} | |||
292 | else |
|
298 | else | |
293 | KERNEL_DEFCONFIG=${KERNEL_DEFCONFIG:=bcm2711_defconfig} |
|
299 | KERNEL_DEFCONFIG=${KERNEL_DEFCONFIG:=bcm2711_defconfig} | |
|
300 | KERNEL_IMAGE=${KERNEL_IMAGE:=kernel7l.img} | |||
294 | fi |
|
301 | fi | |
295 |
|
302 | |||
296 | REQUIRED_PACKAGES="${REQUIRED_PACKAGES} crossbuild-essential-armhf" |
|
303 | REQUIRED_PACKAGES="${REQUIRED_PACKAGES} crossbuild-essential-armhf" | |
297 | RELEASE_ARCH=${RELEASE_ARCH:=armhf} |
|
304 | RELEASE_ARCH=${RELEASE_ARCH:=armhf} | |
298 | KERNEL_IMAGE=${KERNEL_IMAGE:=kernel7.img} |
|
305 | ||
299 | CROSS_COMPILE=${CROSS_COMPILE:=arm-linux-gnueabihf-} |
|
306 | CROSS_COMPILE=${CROSS_COMPILE:=arm-linux-gnueabihf-} | |
300 | fi |
|
307 | fi | |
301 | fi |
|
308 | fi | |
@@ -385,7 +392,7 fi | |||||
385 |
|
392 | |||
386 | # Add deps for nexmon |
|
393 | # Add deps for nexmon | |
387 | if [ "$ENABLE_NEXMON" = true ] ; then |
|
394 | if [ "$ENABLE_NEXMON" = true ] ; then | |
388 |
REQUIRED_PACKAGES="${REQUIRED_PACKAGES} libgmp3-dev gawk qpdf |
|
395 | REQUIRED_PACKAGES="${REQUIRED_PACKAGES} libgmp3-dev gawk qpdf make autoconf automake build-essential libtool" | |
389 | fi |
|
396 | fi | |
390 |
|
397 | |||
391 | # Add libncurses5 to enable kernel menuconfig |
|
398 | # Add libncurses5 to enable kernel menuconfig | |
@@ -470,7 +477,7 if [ -n "$MISSING_PACKAGES" ] ; then | |||||
470 | [ "$confirm" != "y" ] && exit 1 |
|
477 | [ "$confirm" != "y" ] && exit 1 | |
471 |
|
478 | |||
472 | # Make sure all missing required packages are installed |
|
479 | # Make sure all missing required packages are installed | |
473 | apt-get -qq -y install `echo "${MISSING_PACKAGES}" | sed "s/ //"` |
|
480 | apt-get update && apt-get -qq -y install `echo "${MISSING_PACKAGES}" | sed "s/ //"` | |
474 | fi |
|
481 | fi | |
475 |
|
482 | |||
476 | # Check if ./bootstrap.d directory exists |
|
483 | # Check if ./bootstrap.d directory exists |
General Comments 0
Vous devez vous connecter pour laisser un commentaire.
Se connecter maintenant