Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána ve verzi 2024.12.
Byla vydána verze 31.0 svobodného softwaru OBS Studio (Open Broadcaster Software, Wikipedie) určeného pro streamování a nahrávání obrazovky počítače. Přehled novinek na GitHubu. Instalovat lze také z Flathubu.
Emulátory Box86 a Box64 umožňující spouštět linuxové aplikace pro x86 a x86_64 na jiných než x86 a x86_64 architekturách, například ARM a ARM64, byly vydány v nových verzích: Box86 0.3.8 a Box64 0.3.2. Ukázka možností na YouTube.
Byla vydána nová verze 6.1 neměnné (immutable) distribuce openSUSE Leap Micro určené pro běh kontejneru a virtuálních strojů. S vydáním verze 6.1 byla ukončena podpora verze 5.5.
Poslanci dnes ve třetím čtení schválili návrh zákona o digitálních financích. Cílem zákona je implementace předpisů Evropské unie v oblasti digitálních financí, konkrétně nařízení DORA (Digital Operational Resilience Act) o digitální provozní odolnosti finančního sektoru a nařízení MiCA (Markets in Crypto Assets) o trzích kryptoaktiv. Zákon nyní míří k projednání do Senátu ČR. U kryptoměn bude příjem do 100 tisíc Kč za zdaňovací období osvobozen od daně, podobně jako u cenných papírů, a to za podmínky jejich držení po dobu alespoň 3 let.
O víkendu (15:00 až 23:00) proběhne EmacsConf 2024, tj. online konference vývojářů a uživatelů editoru GNU Emacs. Sledovat ji bude možné na stránkách konference. Záznamy budou k dispozici přímo z programu.
Mozilla má nové logo a vizuální identitu. Profesionální. Vytvořeno u Jones Knowles Ritchie (JKR). Na dalších 25 let.
Bylo rozhodnuto, že nejnovější Linux 6.12 je jádrem s prodlouženou upstream podporou (LTS). Ta je aktuálně plánována do prosince 2026. LTS jader je aktuálně šest: 5.4, 5.10, 5.15, 6.1, 6.6 a 6.12.
Byla vydána nová stabilní verze 3.21.0, tj. první z nové řady 3.21, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Z novinek lze vypíchnou počáteční podporu architektury Loongson LoongArch64.
PATH=/home/beda/x-tools6h/arm-unknown-linux-gnueabihf/bin/:$PATH
DISTCC_ARGS="--user nobody --allow ip-raspberry --log-level debug --log-file /tmp/distccd.log"
A výstup makepkg je:
gcc main.c -c
distcc[5508] ERROR: compile main.c on moje-ip failed with exit code 110
distcc[5508] (dcc_build_somewhere) Warning: remote compilation of 'main.c' failed, retrying locally
V logu potom je:
(dcc_execvp) ERROR: failed to exec gcc: Permission denied
Pokud PATH=... z configu smažu, najde to gcc, ale kompilace logicky selže, protože to je jiná architektura. Zkoušel jsem přesunout x-tools do /tmp - pořád to samé. Zkoušel jsem i DISTCC_ARGS="--user beda ... - taky nepomohlo.
$ ls -l
lrwxrwxrwx 1 beda users 37 26. bře 08.57 addr2line -> arm-unknown-linux-gnueabihf-addr2line
lrwxrwxrwx 1 beda users 30 26. bře 08.57 ar -> arm-unknown-linux-gnueabihf-ar
-rwxrwxrwx 1 beda users 696096 24. bře 12.56 arm-unknown-linux-gnueabihf-addr2line
-rwxrwxrwx 1 beda users 724232 24. bře 12.56 arm-unknown-linux-gnueabihf-ar
-rwxrwxrwx 1 beda users 1278920 24. bře 12.56 arm-unknown-linux-gnueabihf-as
-rwxrwxrwx 1 beda users 739360 24. bře 12.56 arm-unknown-linux-gnueabihf-c++
-rwxrwxrwx 1 beda users 697152 24. bře 12.56 arm-unknown-linux-gnueabihf-c++filt
-rwxrwxrwx 1 beda users 735328 24. bře 12.56 arm-unknown-linux-gnueabihf-cpp
-rwxrwxrwx 1 beda users 3254 24. bře 12.02 arm-unknown-linux-gnueabihf-ct-ng.config
-rwxrwxrwx 1 beda users 27888 24. bře 12.56 arm-unknown-linux-gnueabihf-elfedit
-rwxrwxrwx 1 beda users 739360 24. bře 12.56 arm-unknown-linux-gnueabihf-g++
-rwxrwxrwx 1 beda users 735264 24. bře 12.56 arm-unknown-linux-gnueabihf-gcc
-rwxrwxrwx 1 beda users 25104 24. bře 12.56 arm-unknown-linux-gnueabihf-gcc-ar
-rwxrwxrwx 1 beda users 25072 24. bře 12.56 arm-unknown-linux-gnueabihf-gcc-nm
-rwxrwxrwx 1 beda users 25072 24. bře 12.56 arm-unknown-linux-gnueabihf-gcc-ranlib
-rwxrwxrwx 1 beda users 735264 24. bře 12.56 arm-unknown-linux-gnueabihf-gcc-4.8.2
-rwxrwxrwx 1 beda users 314744 24. bře 12.56 arm-unknown-linux-gnueabihf-gcov
-rwxrwxrwx 1 beda users 739360 24. bře 12.56 arm-unknown-linux-gnueabihf-gfortran
-rwxrwxrwx 1 beda users 760928 24. bře 12.56 arm-unknown-linux-gnueabihf-gprof
-rwxrwxrwx 1 beda users 1173992 24. bře 12.56 arm-unknown-linux-gnueabihf-ld
-rwxrwxrwx 1 beda users 1173992 24. bře 12.56 arm-unknown-linux-gnueabihf-ld.bfd
-rwxrwxrwx 1 beda users 10517 24. bře 12.56 arm-unknown-linux-gnueabihf-ldd
-rwxrwxrwx 1 beda users 706912 24. bře 12.56 arm-unknown-linux-gnueabihf-nm
-rwxrwxrwx 1 beda users 881568 24. bře 12.56 arm-unknown-linux-gnueabihf-objcopy
-rwxrwxrwx 1 beda users 1112384 24. bře 12.56 arm-unknown-linux-gnueabihf-objdump
-rwxrwxrwx 1 beda users 10431 24. bře 12.56 arm-unknown-linux-gnueabihf-populate
-rwxrwxrwx 1 beda users 724232 24. bře 12.56 arm-unknown-linux-gnueabihf-ranlib
-rwxrwxrwx 1 beda users 410992 24. bře 12.56 arm-unknown-linux-gnueabihf-readelf
-rwxrwxrwx 1 beda users 697472 24. bře 12.56 arm-unknown-linux-gnueabihf-size
-rwxrwxrwx 1 beda users 697440 24. bře 12.56 arm-unknown-linux-gnueabihf-strings
-rwxrwxrwx 1 beda users 881600 24. bře 12.56 arm-unknown-linux-gnueabihf-strip
lrwxrwxrwx 1 beda users 37 26. bře 08.57 armv6l-unknown-linux-gnueabihf-addr2line -> arm-unknown-linux-gnueabihf-addr2line
lrwxrwxrwx 1 beda users 30 26. bře 08.57 armv6l-unknown-linux-gnueabihf-ar -> arm-unknown-linux-gnueabihf-ar
lrwxrwxrwx 1 beda users 30 26. bře 08.57 armv6l-unknown-linux-gnueabihf-as -> arm-unknown-linux-gnueabihf-as
lrwxrwxrwx 1 beda users 31 26. bře 08.57 armv6l-unknown-linux-gnueabihf-c++ -> arm-unknown-linux-gnueabihf-c++
lrwxrwxrwx 1 beda users 35 26. bře 08.57 armv6l-unknown-linux-gnueabihf-c++filt -> arm-unknown-linux-gnueabihf-c++filt
lrwxrwxrwx 1 beda users 31 26. bře 08.57 armv6l-unknown-linux-gnueabihf-cpp -> arm-unknown-linux-gnueabihf-cpp
lrwxrwxrwx 1 beda users 40 26. bře 08.57 armv6l-unknown-linux-gnueabihf-ct-ng.config -> arm-unknown-linux-gnueabihf-ct-ng.config
lrwxrwxrwx 1 beda users 35 26. bře 08.57 armv6l-unknown-linux-gnueabihf-elfedit -> arm-unknown-linux-gnueabihf-elfedit
lrwxrwxrwx 1 beda users 31 26. bře 08.57 armv6l-unknown-linux-gnueabihf-g++ -> arm-unknown-linux-gnueabihf-g++
lrwxrwxrwx 1 beda users 31 26. bře 08.57 armv6l-unknown-linux-gnueabihf-gcc -> arm-unknown-linux-gnueabihf-gcc
lrwxrwxrwx 1 beda users 34 26. bře 08.57 armv6l-unknown-linux-gnueabihf-gcc-ar -> arm-unknown-linux-gnueabihf-gcc-ar
lrwxrwxrwx 1 beda users 34 26. bře 08.57 armv6l-unknown-linux-gnueabihf-gcc-nm -> arm-unknown-linux-gnueabihf-gcc-nm
lrwxrwxrwx 1 beda users 38 26. bře 08.57 armv6l-unknown-linux-gnueabihf-gcc-ranlib -> arm-unknown-linux-gnueabihf-gcc-ranlib
lrwxrwxrwx 1 beda users 37 26. bře 08.57 armv6l-unknown-linux-gnueabihf-gcc-4.8.2 -> arm-unknown-linux-gnueabihf-gcc-4.8.2
lrwxrwxrwx 1 beda users 32 26. bře 08.57 armv6l-unknown-linux-gnueabihf-gcov -> arm-unknown-linux-gnueabihf-gcov
lrwxrwxrwx 1 beda users 36 26. bře 08.57 armv6l-unknown-linux-gnueabihf-gfortran -> arm-unknown-linux-gnueabihf-gfortran
lrwxrwxrwx 1 beda users 33 26. bře 08.57 armv6l-unknown-linux-gnueabihf-gprof -> arm-unknown-linux-gnueabihf-gprof
lrwxrwxrwx 1 beda users 30 26. bře 08.57 armv6l-unknown-linux-gnueabihf-ld -> arm-unknown-linux-gnueabihf-ld
lrwxrwxrwx 1 beda users 34 26. bře 08.57 armv6l-unknown-linux-gnueabihf-ld.bfd -> arm-unknown-linux-gnueabihf-ld.bfd
lrwxrwxrwx 1 beda users 31 26. bře 08.57 armv6l-unknown-linux-gnueabihf-ldd -> arm-unknown-linux-gnueabihf-ldd
lrwxrwxrwx 1 beda users 30 26. bře 08.57 armv6l-unknown-linux-gnueabihf-nm -> arm-unknown-linux-gnueabihf-nm
lrwxrwxrwx 1 beda users 35 26. bře 08.57 armv6l-unknown-linux-gnueabihf-objcopy -> arm-unknown-linux-gnueabihf-objcopy
lrwxrwxrwx 1 beda users 35 26. bře 08.57 armv6l-unknown-linux-gnueabihf-objdump -> arm-unknown-linux-gnueabihf-objdump
lrwxrwxrwx 1 beda users 36 26. bře 08.57 armv6l-unknown-linux-gnueabihf-populate -> arm-unknown-linux-gnueabihf-populate
lrwxrwxrwx 1 beda users 34 26. bře 08.57 armv6l-unknown-linux-gnueabihf-ranlib -> arm-unknown-linux-gnueabihf-ranlib
lrwxrwxrwx 1 beda users 35 26. bře 08.57 armv6l-unknown-linux-gnueabihf-readelf -> arm-unknown-linux-gnueabihf-readelf
lrwxrwxrwx 1 beda users 32 26. bře 08.57 armv6l-unknown-linux-gnueabihf-size -> arm-unknown-linux-gnueabihf-size
lrwxrwxrwx 1 beda users 35 26. bře 08.57 armv6l-unknown-linux-gnueabihf-strings -> arm-unknown-linux-gnueabihf-strings
lrwxrwxrwx 1 beda users 33 26. bře 08.57 armv6l-unknown-linux-gnueabihf-strip -> arm-unknown-linux-gnueabihf-strip
lrwxrwxrwx 1 beda users 30 26. bře 08.57 as -> arm-unknown-linux-gnueabihf-as
lrwxrwxrwx 1 beda users 31 26. bře 08.57 c++ -> arm-unknown-linux-gnueabihf-c++
lrwxrwxrwx 1 beda users 35 26. bře 08.57 c++filt -> arm-unknown-linux-gnueabihf-c++filt
lrwxrwxrwx 1 beda users 31 26. bře 08.57 cpp -> arm-unknown-linux-gnueabihf-cpp
lrwxrwxrwx 1 beda users 40 26. bře 08.57 ct-ng.config -> arm-unknown-linux-gnueabihf-ct-ng.config
lrwxrwxrwx 1 beda users 35 26. bře 08.57 elfedit -> arm-unknown-linux-gnueabihf-elfedit
lrwxrwxrwx 1 beda users 31 26. bře 08.57 g++ -> arm-unknown-linux-gnueabihf-g++
lrwxrwxrwx 1 beda users 31 26. bře 08.57 gcc -> arm-unknown-linux-gnueabihf-gcc
lrwxrwxrwx 1 beda users 34 26. bře 08.57 gcc-ar -> arm-unknown-linux-gnueabihf-gcc-ar
lrwxrwxrwx 1 beda users 34 26. bře 08.57 gcc-nm -> arm-unknown-linux-gnueabihf-gcc-nm
lrwxrwxrwx 1 beda users 38 26. bře 08.57 gcc-ranlib -> arm-unknown-linux-gnueabihf-gcc-ranlib
lrwxrwxrwx 1 beda users 37 26. bře 08.57 gcc-4.8.2 -> arm-unknown-linux-gnueabihf-gcc-4.8.2
lrwxrwxrwx 1 beda users 32 26. bře 08.57 gcov -> arm-unknown-linux-gnueabihf-gcov
lrwxrwxrwx 1 beda users 36 26. bře 08.57 gfortran -> arm-unknown-linux-gnueabihf-gfortran
lrwxrwxrwx 1 beda users 33 26. bře 08.57 gprof -> arm-unknown-linux-gnueabihf-gprof
lrwxrwxrwx 1 beda users 30 26. bře 08.57 ld -> arm-unknown-linux-gnueabihf-ld
lrwxrwxrwx 1 beda users 34 26. bře 08.57 ld.bfd -> arm-unknown-linux-gnueabihf-ld.bfd
lrwxrwxrwx 1 beda users 31 26. bře 08.57 ldd -> arm-unknown-linux-gnueabihf-ldd
lrwxrwxrwx 1 beda users 30 26. bře 08.57 nm -> arm-unknown-linux-gnueabihf-nm
lrwxrwxrwx 1 beda users 35 26. bře 08.57 objcopy -> arm-unknown-linux-gnueabihf-objcopy
lrwxrwxrwx 1 beda users 35 26. bře 08.57 objdump -> arm-unknown-linux-gnueabihf-objdump
lrwxrwxrwx 1 beda users 36 26. bře 08.57 populate -> arm-unknown-linux-gnueabihf-populate
lrwxrwxrwx 1 beda users 34 26. bře 08.57 ranlib -> arm-unknown-linux-gnueabihf-ranlib
lrwxrwxrwx 1 beda users 35 26. bře 08.57 readelf -> arm-unknown-linux-gnueabihf-readelf
lrwxrwxrwx 1 beda users 32 26. bře 08.57 size -> arm-unknown-linux-gnueabihf-size
lrwxrwxrwx 1 beda users 35 26. bře 08.57 strings -> arm-unknown-linux-gnueabihf-strings
lrwxrwxrwx 1 beda users 33 26. bře 08.57 strip -> arm-unknown-linux-gnueabihf-strip
Máte někdo nápad, co dělám špatně? Díky.
Řešení dotazu:
failed to exec gcc: Permission deniedVzhledem k tomu, že chceš GCC spouštět jako nobody:
DISTCC_ARGS="--user nobody ...ale máš ho v ~ uživtele beda:
PATH=/home/beda/x-tools6htak je jasné že to nebude fungovat. Buď nainstaluj gcc jinam (/opt bývá dobré místo) a povol spouštění kýmkoli (chown root ; chmod 555), nebo to souštěj jako beda.
beda ~ $ export PATH=/home/beda/x-tools6h/arm-unknown-linux-gnueabihf/bin/:$PATH
beda ~ $ gcc --version
gcc (crosstool-NG 1.19.0) 4.8.2
...
což je správně a práva na spuštění gcc mam. Nějak moc nechápu, jak ten démon spouští tu kompilaci - pod jakým uživatelem nebo jak se vlastně dostane do stavu, že nemá práva spustit něco, co může spouštět kdokoliv (trochu se mi zdá, že ignoruje --user cokoliv nebo to používám špatně). Díky za radu s tim strace, zítra zkusím.
cc child 5041 terminated with status 0x100
Tuším, že bude problém v chybějících přepínačích gcc - zkouším zkompilovat hello world gcc -c main.c
a samo si to doplní -o main.o
, chybí mi tam něco?
Celý zápis z logu:
distccd[4989] (main) chdir to /tmp
distccd[4989] (dcc_setup_daemon_path) daemon's PATH is /test:$PATH
distccd[4989] (dcc_listen_by_addr) listening on 0.0.0.0:3632
distccd[4989] (dcc_defer_accept) TCP_DEFER_ACCEPT turned on
distccd[4989] (dcc_standalone_server) 8 CPUs online on this server
distccd[4989] (dcc_standalone_server) allowing up to 10 active jobs
distccd[4989] (dcc_standalone_server) not detaching
distccd[4989] (dcc_new_pgrp) already a process group leader
distccd[4989] (dcc_log_daemon_started) preforking daemon started (3.1 x86_64-unknown-linux-gnu, built Jul 15 2013 14:55:43)
distccd[4989] (dcc_create_kids) up to 1 children
distccd[4989] (dcc_create_kids) up to 2 children
distccd[4989] (dcc_create_kids) up to 3 children
distccd[4989] (dcc_create_kids) up to 4 children
distccd[4989] (dcc_create_kids) up to 5 children
distccd[4989] (dcc_create_kids) up to 6 children
distccd[4989] (dcc_create_kids) up to 7 children
distccd[4989] (dcc_create_kids) up to 8 children
distccd[4989] (dcc_create_kids) up to 9 children
distccd[4989] (dcc_create_kids) up to 10 children
distccd[4990] (dcc_check_client) connection from MOJEVEREJNAIP:48419
distccd[4990] (dcc_check_address) match client 0x214ce693, value 0x214ce693, mask 0xffffffff
distccd[4990] (dcc_r_token_int) got DIST00000001
distccd[4990] (dcc_r_token_int) got ARGC00000005
distccd[4990] (dcc_r_argv) reading 5 arguments from job submission
distccd[4990] (dcc_r_token_int) got ARGV00000003
distccd[4990] (dcc_r_token_string) got 'gcc'
distccd[4990] (dcc_r_argv) argv[0] = "gcc"
distccd[4990] (dcc_r_token_int) got ARGV00000006
distccd[4990] (dcc_r_token_string) got 'main.c'
distccd[4990] (dcc_r_argv) argv[1] = "main.c"
distccd[4990] (dcc_r_token_int) got ARGV00000002
distccd[4990] (dcc_r_token_string) got '-c'
distccd[4990] (dcc_r_argv) argv[2] = "-c"
distccd[4990] (dcc_r_token_int) got ARGV00000002
distccd[4990] (dcc_r_token_string) got '-o'
distccd[4990] (dcc_r_argv) argv[3] = "-o"
distccd[4990] (dcc_r_token_int) got ARGV00000006
distccd[4990] (dcc_r_token_string) got 'main.o'
distccd[4990] (dcc_r_argv) argv[4] = "main.o"
distccd[4990] (dcc_r_argv) got arguments: gcc main.c -c -o main.o
distccd[4990] (dcc_scan_args) scanning arguments: gcc main.c -c -o main.o
distccd[4990] (dcc_scan_args) found input file "main.c"
distccd[4990] (dcc_scan_args) found object/output file "main.o"
distccd[4990] compile from main.c to main.o
distccd[4990] (dcc_run_job) output file main.o
distccd[4990] (dcc_input_tmpnam) input file main.c
distccd[4990] (dcc_r_token_int) got DOTI00004403
distccd[4990] (dcc_r_file) received 17411 bytes to file /tmp/distccd_d48b30de.i
distccd[4990] (dcc_r_file_timed) 17411 bytes received in 0.002169s, rate 7839kB/s
distccd[4990] (dcc_set_input) changed input from "main.c" to "/tmp/distccd_d48b30de.i"
distccd[4990] (dcc_set_input) command after: gcc /tmp/distccd_d48b30de.i -c -o main.o
distccd[4990] (dcc_set_output) changed output from "main.o" to "/tmp/distccd_d4e930de.o"
distccd[4990] (dcc_set_output) command after: gcc /tmp/distccd_d48b30de.i -c -o /tmp/distccd_d4e930de.o
distccd[4990] (dcc_check_compiler_masq) /test/gcc is a safe symlink to arm-unknown-linux-gnueabihf-gcc
distccd[4990] (dcc_spawn_child) forking to execute: gcc /tmp/distccd_d48b30de.i -c -o /tmp/distccd_d4e930de.o
distccd[4990] (dcc_spawn_child) child started as pid5041
distccd[5041] (dcc_new_pgrp) entered process group
distccd[5041] (dcc_increment_safeguard) setting safeguard: _DISTCC_SAFEGUARD=1
distccd[4990] (dcc_collect_child) cc child 5041 terminated with status 0x100
distccd[4990] (dcc_collect_child) cc times: user 0.000000s, system 0.000000s, 0 minflt, 0 majflt
distccd[4990] (dcc_x_token_int) send DONE00000001
distccd[4990] (dcc_x_token_int) send STAT00000100
distccd[4990] (dcc_x_file) send 67 byte file /tmp/distcc_d2b230de.stderr with token SERR and compression 69
distccd[4990] (dcc_x_token_int) send SERR00000043
distccd[4990] (dcc_x_file) send 0 byte file /tmp/distcc_d34530de.stdout with token SOUT and compression 69
distccd[4990] (dcc_x_token_int) send SOUT00000000
distccd[4990] (dcc_x_token_int) send DOTO00000000
distccd[4990] gcc main.c on localhost failed
distccd[4990] job complete
distccd[4990] (dcc_cleanup_tempfiles_inner) deleted 5 temporary files
distccd[4990] (dcc_job_summary) client: MOJEVEREJNAIP:48419 COMPILE_ERROR exit:1 sig:0 core:0 ret:0 time:5ms gcc main.c
Tiskni Sdílej: