Gitea je soukromý, rychlý a spolehlivý Git server s webem. Nechce se mi používat github ani gitlab (nechce se mi platit za privátní repozitáře) a chci soukromý vlastní web s gitem pro sebe a pro své studenty, který si budu spravovat sám. Tady je návod, jak jsem to udělal.
Instalace
Virtuál KVM (Gentoo) s OpenBSD
Instalaci budu dělat na OpenBSD 7.5. Potřebuji poměrně hodně místa pro Postgresql databázi a vlastní gitové repozitáře, proto přidám k virtuálnímu stroji, co běží na Gentoo Linuxu v KVM, dva virtuální disky: 50GB na databázi a 250GB na repozitáře.
kvm2 ~ # cd /home/vm/mx3
kvm2 ~ # qemu-img create -f qcow2 mx3-disk3.qcow2 50G
kvm2 ~ # qemu-img create -f qcow2 mx3-disk4.qcow2 250G
kvm2 ~ # cat /etc/init.d/kvm-mx3
#!/sbin/openrc-run
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
extra_commands="zaloha"
NAME="mx3"
MEMORY="4800M"
CORES=4
VIRTDISK="/home/vm/mx3/mx3.qcow2"
VIRTDISK2="/home/vm/mx3/mx3-disk2.qcow2" # web
VIRTDISK3="/home/vm/mx3/mx3-disk3.qcow2" # postgresql
VIRTDISK4="/home/vm/mx3/mx3-disk4.qcow2" # gitea
ZALOHA="/mnt/backup/vm/mx3/mx3.qcow2"
ZALOHA2="/mnt/backup/vm/mx3/mx3-disk2.qcow2"
ZALOHA3="/mnt/backup/vm/mx3/mx3-disk3.qcow2"
ZALOHA4="/mnt/backup/vm/mx3/mx3-disk4.qcow2"
ISOIMG="/home/vm/iso/install75.iso"
pidfile="/run/kvm-${NAME}.pid"
PORT=5904
MAC="00:34:2d:36:e5:04"
NETDEV="mp4"
BR="br0"
TAP="tap4"
CHANNEL=0
SECRET="/etc/qemu/spice_secrets"
depend() {
use logger clock hostname net
}
start() {
ebegin "Starting ${SVCNAME}"
mkdir -p /run/kvm-${NAME}
qemu-system-x86_64 -enable-kvm \
-name ${NAME} \
-smp cores=${CORES} \
-cpu host \
-m ${MEMORY} \
-drive driver=qcow2,file=${VIRTDISK},if=virtio \
-drive driver=qcow2,file=${VIRTDISK2},if=virtio \
-drive driver=qcow2,file=${VIRTDISK3},if=virtio \
-drive driver=qcow2,file=${VIRTDISK4},if=virtio \
-cdrom ${ISOIMG} \
-device virtio-net,netdev=${NETDEV},mac=${MAC} \
-netdev tap,id=${NETDEV},ifname=${TAP},br=${BR} \
-boot order=c \
-object secret,id=spice_secrets,file=${SECRET} \
-vga qxl -device virtio-serial-pci -spice port=${PORT},password-secret=spice_secrets \
-device virtserialport,chardev=spicechannel${CHANNEL},name=com.redhat.spice.${CHANNEL} -chardev spicevmc,id=spicechannel${CHANNEL},name=vdagent \
-monitor unix:/run/kvm-${NAME}/monitor,server,nowait \
-object rng-random,id=rng${CHANNEL},filename=/dev/urandom -device virtio-rng-pci,rng=rng${CHANNEL} \
-daemonize \
-pidfile ${pidfile}
eend $?
}
stop() {
ebegin "Stopping ${SVCNAME}"
ssh mx3.lixis.cz "halt -p" || echo system_powerdown | socat - UNIX-CONNECT:/run/kvm-${NAME}/monitor
sleep 40
start-stop-daemon --stop --pidfile ${pidfile}
ret=$?
eend ${ret}
}
zaloha() {
stop
ebegin "Zalohuji ${SVCNAME}"
mv ${ZALOHA}.7.zst ${ZALOHA}.8.zst
mv ${ZALOHA}.6.zst ${ZALOHA}.7.zst
mv ${ZALOHA}.5.zst ${ZALOHA}.6.zst
mv ${ZALOHA}.4.zst ${ZALOHA}.5.zst
mv ${ZALOHA}.3.zst ${ZALOHA}.4.zst
mv ${ZALOHA}.2.zst ${ZALOHA}.3.zst
mv ${ZALOHA}.1.zst ${ZALOHA}.2.zst
zstd -10 -T8 -k -c -o ${ZALOHA}.1.zst -- ${VIRTDISK}
mv ${ZALOHA2}.7.zst ${ZALOHA2}.8.zst
mv ${ZALOHA2}.6.zst ${ZALOHA2}.7.zst
mv ${ZALOHA2}.5.zst ${ZALOHA2}.6.zst
mv ${ZALOHA2}.4.zst ${ZALOHA2}.5.zst
mv ${ZALOHA2}.3.zst ${ZALOHA2}.4.zst
mv ${ZALOHA2}.2.zst ${ZALOHA2}.3.zst
mv ${ZALOHA2}.1.zst ${ZALOHA2}.2.zst
zstd -10 -T8 -k -c -o ${ZALOHA2}.1.zst -- ${VIRTDISK2}
mv ${ZALOHA3}.7.zst ${ZALOHA3}.8.zst
mv ${ZALOHA3}.6.zst ${ZALOHA3}.7.zst
mv ${ZALOHA3}.5.zst ${ZALOHA3}.6.zst
mv ${ZALOHA3}.4.zst ${ZALOHA3}.5.zst
mv ${ZALOHA3}.3.zst ${ZALOHA3}.4.zst
mv ${ZALOHA3}.2.zst ${ZALOHA3}.3.zst
mv ${ZALOHA3}.1.zst ${ZALOHA3}.2.zst
zstd -10 -T8 -k -c -o ${ZALOHA3}.1.zst -- ${VIRTDISK3}
mv ${ZALOHA4}.7.zst ${ZALOHA4}.8.zst
mv ${ZALOHA4}.6.zst ${ZALOHA4}.7.zst
mv ${ZALOHA4}.5.zst ${ZALOHA4}.6.zst
mv ${ZALOHA4}.4.zst ${ZALOHA4}.5.zst
mv ${ZALOHA4}.3.zst ${ZALOHA4}.4.zst
mv ${ZALOHA4}.2.zst ${ZALOHA4}.3.zst
mv ${ZALOHA4}.1.zst ${ZALOHA4}.2.zst
zstd -10 -T8 -k -c -o ${ZALOHA4}.1.zst -- ${VIRTDISK4}
eend $?
start
}
Dále budu pracovat už jenom s virtuálem OpenBSD 7.5
Přidání disků do OpenBSD systému
# fdisk -e sd2
1> reinit
1> write
1> exit
# disklabel -E sd2
> a a
> w
> q
# newfs sda2
# fdisk -e sd3
1> reinit
1> write
1> exit
# disklabel -E sd3
> a a
> w
> q
# newfs sda3
# sysctl hw.disknames >>/etc/fstab
8a2a42aee73bbdbb.a /var/postgresql ffs rw,nodev,nosuid 1 2
ef959ea9144fb41b.a /var/gitea ffs rw,nodev,nosuid 1 2
# mount /var/postgresql
# mount /var/gitea
Instalace softwarových balíků
# pkg_add -u
# pkg_add go git postgresql
# pkg_add gitea
# chown _gitea:_gitea /var/gitea
# chown _postgresql:_postgresql /var/postgresql
Inicializace databáze
# su - _postgresql
$ initdb -D /var/postgresql/data
$ Ctrl+D
# rcctl enable postgresql
# rcctl start postgresql
# su - _postgresql
$ createuser -d -P gitea
Enter password for new role: (1)
Enter it again:
$ createdb -O gitea gitea
$ exit
| 1 | Heslo se nevypisuje, zcela jistě si ho poznamenám na papír, protože ho budu potřebovat dále. |
Přidání záznamů do DNS
Přidám v zóně lixis.cz A a AAAA záznamy pro git.lixis.cz.
git IN A 46.253.96.61
git IN AAAA 2a0e:5340:4:400::ffe
Vytvoření certifikátů pro web
Upravím si /etc/acme-client a /etc/httpd.conf a nechám si vystavit certifikáty pro web git.lixis.cz.
domain git.lixis.cz {
domain key "/etc/ssl/private/git.lixis.cz.key"
domain certificate "/etc/ssl/git.lixis.cz.crt"
domain full chain certificate "/etc/ssl/git.lixis.cz.fullchain.pem"
sign with letsencrypt
}
server "git.lixis.cz" {
listen on * port 80
location "/.well-known/acme-challenge/*" {
root "/acme"
request strip 2
}
}
Restaruji httpd server a nechám si vystavit certifikát
# rcctl restart httpd
httpd(ok)
httpd(ok)
# acme-client -v git.lixis.cz
Nastavení gitea
Giteu budu provozovat za httpd serverem, abych nemusel řešit šifrování a změnu https portu, na stroji mě běží ještě jiné weby.
Musím upravit konfigurační soubor gitey:
APP_NAME = Gitea: git.lixis.cz
[server]
PROTOCOL = fcgi+unix
DOMAIN = git.lixis.cz
ROOT_URL = https://git.lixis.cz/
HTTP_ADDR = /var/www/run/gitea/gitea.sock
LOCAL_ROOT_URL = %(ROOT_URL)s
APP_DATA_PATH = /var/gitea/data
SSH_DOMAIN = git.lixis.cz
DISABLE_SSH = false
[database]
DB_TYPE = postgres
; can use socket e.g. /tmp
HOST = 127.0.0.1:5432
NAME = gitea
USER = gitea
PASSWD = heslo_k_databazi_co_jsem_si_poznamenal
SCHEMA =
SSL_MODE = disable
PATH = /var/gitea/data/gitea.db
LOG_SQL = false
[repository]
ROOT = /var/gitea/gitea-repositories
Vytvořím repozitář /var/gitea/gitea-repositories.
Vytvořím adresář pro komunikační socket /var/www/run/gitea.
Dále nastavím, aby gitea automaticky startovala po naběhnutí systému a spustím ji.
# mkdir /var/gitea/gitea-repositories
# chown _gitea:_gitea /var/gitea/gitea-repositories
# install -d -o _gitea /var/www/run/gitea
# rcctl enable gitea
# rcctl start gitea
Konfigurace httpd (2. úprava)
Musím ještě zkonfigurovat web, abych mohl používat https protokol a komunikovat přes Fast-CGI s giteou.
server "git.lixis.cz" {
listen on * port 80
location "/.well-known/acme-challenge/*" {
root "/acme"
request strip 2
}
block return 301 "https://git.lixis.cz$REQUEST_URI" (1)
}
server "git.lixis.cz" {
listen on * tls port 443
tls {
certificate "/etc/ssl/git.lixis.cz.fullchain.pem"
key "/etc/ssl/private/git.lixis.cz.key"
}
root "/gitea"
location "/.well-known/acme-challenge/*" {
root "/acme"
request strip 2
no fastcgi
}
location "/assets/*" {
no fastcgi
}
location "*" {
fastcgi socket "run/gitea/gitea.sock" (2)
}
}
| 1 | Http požadavky přesměruji na https. |
| 2 | Komunikace s giteou přes fastcgi socket. |
# rcctl restart httpd
httpd(ok)
httpd(ok)
#
První přihlášení pomocí prohlížeče
Přihlásím se pomocí prohlížeče na https://git.lixis.cz a objeví se mi konfigurační obrazovka a možnost vytvořit prvního uživatele. První uživatel je zárověň administrátor celého systému.

A to je vše. Teď mi zbývá abych se s tím naučil pracovat.
Zdroje a odkazy
Gitea: Easy Self-Hosted Git Repositories! — tady to pán dělá na Proxmoxu a Debianu.
How to Install Gitea on OpenBSD — trochu odlišný postup na starší verzi OpenBSD.
Testování
Vytvořím si na webu novou repozitory microzig.
Na lokálním stroji si připravím projekt.
Na vzdáleném webu jsem si přidal svůj veřejný ssh klíč.
jirka@jirka-Precision-T3610:~$ cd microzig
jirka@jirka-Precision-T3610:~/microzig$ git init
jirka@jirka-Precision-T3610:~/microzig$ git checkout -b main
jirka@jirka-Precision-T3610:~/microzig$ git add README.md
jirka@jirka-Precision-T3610:~/microzig$ git add build.zig
jirka@jirka-Precision-T3610:~/microzig$ git add build.zig.zon
jirka@jirka-Precision-T3610:~/microzig$ git add LICENSE
jirka@jirka-Precision-T3610:~/microzig$ git add core
jirka@jirka-Precision-T3610:~/microzig$ git add docs
jirka@jirka-Precision-T3610:~/microzig$ git add examples
jirka@jirka-Precision-T3610:~/microzig$ git add website
jirka@jirka-Precision-T3610:~/microzig$ git add core/*
jirka@jirka-Precision-T3610:~/microzig$ git add core/src/*
jirka@jirka-Precision-T3610:~/microzig$ git add core/src/test/*
jirka@jirka-Precision-T3610:~/microzig$ git add examples/*
jirka@jirka-Precision-T3610:~/microzig$ git add website/*
jirka@jirka-Precision-T3610:~/microzig$ git add bsp/*
jirka@jirka-Precision-T3610:~/microzig$ git commit -m "1. commit"
[main (root-commit) 9a085cc] 1. commit
346 files changed, 508803 insertions(+)
create mode 100644 LICENSE
create mode 100644 README.md
create mode 100644 bsp/espressif/esp/LICENSE
create mode 100644 bsp/espressif/esp/README.md
create mode 100644 bsp/espressif/esp/build.zig
create mode 100644 bsp/espressif/esp/build.zig.zon
create mode 100644 bsp/espressif/esp/docs/esp32-c3-32s-pinout.png
create mode 100644 bsp/espressif/esp/docs/esp32-c3-32s-pinout.xcf
create mode 100755 bsp/espressif/esp/perform-flash.sh
create mode 100644 bsp/espressif/esp/src/chips/ESP32-C3.svd
create mode 100644 bsp/espressif/esp/src/cpus/espressif-riscv.zig
create mode 100644 bsp/espressif/esp/src/example/blinky.zig
create mode 100644 bsp/espressif/esp/src/hals/ESP32_C3.zig
create mode 100644 bsp/gigadevice/gd32/LICENSE
create mode 100644 bsp/gigadevice/gd32/README.md
create mode 100644 bsp/gigadevice/gd32/build.zig
create mode 100644 bsp/gigadevice/gd32/build.zig.zon
create mode 100644 bsp/gigadevice/gd32/src/boards/longan_nano.zig
create mode 100644 bsp/gigadevice/gd32/src/chips/GD32VF103.json
create mode 100644 bsp/gigadevice/gd32/src/hals/GD32VF103.zig
create mode 100644 bsp/gigadevice/gd32/src/hals/GD32VF103/gpio.zig
create mode 100644 bsp/gigadevice/gd32/src/hals/GD32VF103/hal.zig
create mode 100644 bsp/gigadevice/gd32/src/hals/GD32VF103/pins.zig
create mode 100644 bsp/gigadevice/gd32/src/hals/GD32VF103/uart.zig
create mode 100644 bsp/gigadevice/gd32/test/programs/minimal.zig
create mode 100644 bsp/microchip/atsam/LICENSE
create mode 100644 bsp/microchip/atsam/README.md
create mode 100644 bsp/microchip/atsam/build.zig
create mode 100644 bsp/microchip/atsam/build.zig.zon
create mode 100644 bsp/microchip/atsam/src/chips/ATSAMD51J19A.atdf
create mode 100644 bsp/microchip/avr/LICENSE
create mode 100644 bsp/microchip/avr/README.md
create mode 100644 bsp/microchip/avr/build.zig
create mode 100644 bsp/microchip/avr/build.zig.zon
create mode 100644 bsp/microchip/avr/src/boards.zig
create mode 100644 bsp/microchip/avr/src/boards/arduino_nano.zig
create mode 100644 bsp/microchip/avr/src/boards/arduino_uno.zig
create mode 100644 bsp/microchip/avr/src/boards/itsybitsy_32u4.zig
create mode 100644 bsp/microchip/avr/src/chips.zig
create mode 100644 bsp/microchip/avr/src/chips/ATmega328P.json
create mode 100644 bsp/microchip/avr/src/chips/ATmega32U4.json
create mode 100644 bsp/microchip/avr/src/hals/ATmega328P.zig
create mode 100644 bsp/microchip/avr/src/hals/ATmega32U4.zig
create mode 100644 bsp/microchip/avr/test/programs/minimal.zig
create mode 100644 bsp/nordic/nrf5x/LICENSE
create mode 100644 bsp/nordic/nrf5x/README.md
create mode 100644 bsp/nordic/nrf5x/build.zig
create mode 100644 bsp/nordic/nrf5x/build.zig.zon
create mode 100644 bsp/nordic/nrf5x/src/boards/nrf52840-dongle.zig
create mode 100644 bsp/nordic/nrf5x/src/chips/nrf52.json
create mode 100644 bsp/nordic/nrf5x/src/chips/nrf52840.json
create mode 100644 bsp/nordic/nrf5x/test/nrf52840.robot
create mode 100644 bsp/nordic/nrf5x/test/programs/minimal.zig
create mode 100644 bsp/nxp/lpc/LICENSE
create mode 100644 bsp/nxp/lpc/README.md
create mode 100644 bsp/nxp/lpc/build.zig
create mode 100644 bsp/nxp/lpc/build.zig.zon
create mode 100644 bsp/nxp/lpc/src/boards/mbed_LPC1768.zig
create mode 100644 bsp/nxp/lpc/src/chips/LPC176x5x.json
create mode 100644 bsp/nxp/lpc/src/hals/LPC176x5x.zig
create mode 100644 bsp/nxp/lpc/src/tools/patchelf.zig
create mode 100644 bsp/nxp/lpc/test/programs/minimal.zig
create mode 100644 bsp/raspberrypi/rp2040/LICENSE
create mode 100644 bsp/raspberrypi/rp2040/README.md
create mode 100644 bsp/raspberrypi/rp2040/build.zig
create mode 100644 bsp/raspberrypi/rp2040/build.zig.zon
create mode 100644 bsp/raspberrypi/rp2040/rp2040.ld
create mode 100644 bsp/raspberrypi/rp2040/src/boards/raspberry_pi_pico.zig
create mode 100644 bsp/raspberrypi/rp2040/src/boards/shared/bootrom.zig
create mode 100644 bsp/raspberrypi/rp2040/src/boards/waveshare_rp2040_eth.zig
create mode 100644 bsp/raspberrypi/rp2040/src/boards/waveshare_rp2040_matrix.zig
create mode 100644 bsp/raspberrypi/rp2040/src/boards/waveshare_rp2040_plus_16m.zig
create mode 100644 bsp/raspberrypi/rp2040/src/boards/waveshare_rp2040_plus_4m.zig
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/at25sf128a.S
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/generic_03h.S
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/is25lp080.S
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/legacy.S
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/shared/addressmap.h
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/shared/asm_helper.S
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/shared/exit_from_boot2.S
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/shared/m0plus.h
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/shared/pads_qspi.h
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/shared/read_flash_sreg.S
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/shared/regs.h
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/shared/ssi.h
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/shared/stage2.ld
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/shared/wait_ssi_ready.S
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/w25q080.S
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/w25q32jvssiq.S
create mode 100644 bsp/raspberrypi/rp2040/src/bootroms/w25x10cl.S
create mode 100644 bsp/raspberrypi/rp2040/src/chips/rp2040.svd
create mode 100644 bsp/raspberrypi/rp2040/src/hal.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/adc.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/clocks.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/dma.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/flash.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/gpio.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/hw.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/i2c.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/irq.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/multicore.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pins.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/Expression.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/README.md
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/addition.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/addition.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/apa102.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/apa102.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/blink.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/blink.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/clocked_input.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/clocked_input.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/differential_manchester.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/differential_manchester.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/hello.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/hello.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/hub75.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/hub75.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/i2c.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/i2c.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/manchester_encoding.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/manchester_encoding.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/nec_carrier_burst.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/nec_carrier_burst.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/nec_carrier_control.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/nec_carrier_control.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/nec_receive.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/nec_receive.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/pio_serialiser.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/pio_serialiser.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/pwm.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/pwm.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/quadrature_encoder.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/quadrature_encoder.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/resistor_dac.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/resistor_dac.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/spi.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/spi.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/squarewave.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/squarewave.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/squarewave_fast.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/squarewave_fast.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/squarewave_test.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/squarewave_wrap.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/squarewave_wrap.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/st7789_lcd.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/st7789_lcd.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/uart_rx.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/uart_rx.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/uart_tx.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/uart_tx.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/ws2812.pio
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/comparison_tests/ws2812.pio.h
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/encoder.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pio/assembler/tokenizer.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pll.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/pwm.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/random.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/resets.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/rom.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/spi.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/time.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/uart.zig
create mode 100644 bsp/raspberrypi/rp2040/src/hal/usb.zig
create mode 100644 bsp/raspberrypi/rp2040/tools/rp2040-flash.zig
create mode 100644 bsp/stmicro/stm32/LICENSE
create mode 100644 bsp/stmicro/stm32/README.md
create mode 100644 bsp/stmicro/stm32/build.zig
create mode 100644 bsp/stmicro/stm32/build.zig.zon
create mode 100644 bsp/stmicro/stm32/src/boards/STM3240G_EVAL.zig
create mode 100644 bsp/stmicro/stm32/src/boards/STM32F3DISCOVERY.zig
create mode 100644 bsp/stmicro/stm32/src/boards/STM32F429IDISCOVERY.zig
create mode 100644 bsp/stmicro/stm32/src/boards/STM32F4DISCOVERY.zig
create mode 100644 bsp/stmicro/stm32/src/chips/STM32F103.json
create mode 100644 bsp/stmicro/stm32/src/chips/STM32F303.json
create mode 100644 bsp/stmicro/stm32/src/chips/STM32F407.json
create mode 100644 bsp/stmicro/stm32/src/chips/STM32F429.json
create mode 100644 bsp/stmicro/stm32/src/chips/STM32L0x1.svd
create mode 100644 bsp/stmicro/stm32/src/chips/STM32L0x2.svd
create mode 100644 bsp/stmicro/stm32/src/chips/STM32L0x3.svd
create mode 100644 bsp/stmicro/stm32/src/hals/STM32F103.zig
create mode 100644 bsp/stmicro/stm32/src/hals/STM32F103/gpio.zig
create mode 100644 bsp/stmicro/stm32/src/hals/STM32F103/hal.zig
create mode 100644 bsp/stmicro/stm32/src/hals/STM32F103/pins.zig
create mode 100644 bsp/stmicro/stm32/src/hals/STM32F303.zig
create mode 100644 bsp/stmicro/stm32/src/hals/STM32F407.zig
create mode 100644 bsp/stmicro/stm32/src/hals/STM32F429.zig
create mode 100644 bsp/stmicro/stm32/test/programs/minimal.zig
create mode 100644 bsp/stmicro/stm32/test/stm32f103.robot
create mode 100644 build.zig
create mode 100644 build.zig.zon
create mode 100644 core/LICENSE
create mode 100644 core/build.zig
create mode 100644 core/build.zig.zon
create mode 100644 core/src/core.zig
create mode 100644 core/src/core/experimental.zig
create mode 100644 core/src/core/experimental/clock.zig
create mode 100644 core/src/core/experimental/debug.zig
create mode 100644 core/src/core/experimental/gpio.zig
create mode 100644 core/src/core/experimental/i2c.zig
create mode 100644 core/src/core/experimental/pin.zig
create mode 100644 core/src/core/experimental/spi.zig
create mode 100644 core/src/core/experimental/uart.zig
create mode 100644 core/src/core/heap.zig
create mode 100644 core/src/core/usb.zig
create mode 100644 core/src/core/usb/cdc.zig
create mode 100644 core/src/core/usb/hid.zig
create mode 100644 core/src/core/usb/templates.zig
create mode 100644 core/src/core/usb/types.zig
create mode 100644 core/src/core/usb/utils.zig
create mode 100644 core/src/core/usb/vendor.zig
create mode 100644 core/src/cpus/avr5.zig
create mode 100644 core/src/cpus/cortex_m.zig
create mode 100644 core/src/cpus/cortex_m/m0.zig
create mode 100644 core/src/cpus/cortex_m/m0plus.zig
create mode 100644 core/src/cpus/cortex_m/m3.zig
create mode 100644 core/src/cpus/cortex_m/m4.zig
create mode 100644 core/src/cpus/riscv32.zig
create mode 100644 core/src/drivers.zig
create mode 100644 core/src/drivers/experimental.zig
create mode 100644 core/src/drivers/experimental/button.zig
create mode 100644 core/src/drivers/experimental/quadrature.zig
create mode 100644 core/src/interrupt.zig
create mode 100644 core/src/microzig.zig
create mode 100644 core/src/mmio.zig
create mode 100644 core/src/start.zig
create mode 100644 core/test/backings.zig
create mode 100644 core/test/board.zig
create mode 100644 core/test/chip.zig
create mode 100644 core/test/cpu.zig
create mode 100644 core/test/hal.zig
create mode 100644 core/test/programs/blinky.zig
create mode 100644 core/test/programs/has_board.zig
create mode 100644 core/test/programs/has_dependencies.zig
create mode 100644 core/test/programs/has_hal.zig
create mode 100644 core/test/programs/interrupt.zig
create mode 100644 core/test/programs/minimal.zig
create mode 100644 core/test/programs/uart-sync.zig
create mode 100644 core/thoughts.md
create mode 100644 design/logo-text-auto.svg
create mode 100644 design/logo-text-brightmode.svg
create mode 100644 design/logo-text-darkmode.svg
create mode 100644 design/logo-text-inkscape.svg
create mode 100644 design/logo.svg
create mode 100644 design/social-media-preview.png
create mode 100644 design/social-media-preview.xcf
create mode 100644 docs/design.md
create mode 100644 docs/images/deps.dot
create mode 100644 docs/images/deps.svg
create mode 100644 examples/espressif/esp/LICENSE
create mode 100644 examples/espressif/esp/README.md
create mode 100644 examples/espressif/esp/build.zig
create mode 100644 examples/espressif/esp/build.zig.zon
create mode 100644 examples/espressif/esp/src/blinky.zig
create mode 100644 examples/gigadevice/gd32/LICENSE
create mode 100644 examples/gigadevice/gd32/build.zig
create mode 100644 examples/gigadevice/gd32/build.zig.zon
create mode 100644 examples/gigadevice/gd32/src/blinky.zig
create mode 100644 examples/gigadevice/gd32/src/empty.zig
create mode 100644 examples/microchip/atsam/LICENSE
create mode 100644 examples/microchip/atsam/build.zig
create mode 100644 examples/microchip/atsam/build.zig.zon
create mode 100644 examples/microchip/atsam/src/blinky.zig
create mode 100644 examples/microchip/avr/LICENSE
create mode 100644 examples/microchip/avr/build.zig
create mode 100644 examples/microchip/avr/build.zig.zon
create mode 100644 examples/microchip/avr/src/blinky.zig
create mode 100644 examples/nordic/nrf5x/LICENSE
create mode 100644 examples/nordic/nrf5x/README.md
create mode 100644 examples/nordic/nrf5x/build.zig
create mode 100644 examples/nordic/nrf5x/build.zig.zon
create mode 100644 examples/nordic/nrf5x/src/blinky.zig
create mode 100644 examples/nxp/lpc/LICENSE
create mode 100644 examples/nxp/lpc/README.md
create mode 100644 examples/nxp/lpc/build.zig
create mode 100644 examples/nxp/lpc/build.zig.zon
create mode 100644 examples/nxp/lpc/src/blinky.zig
create mode 100644 examples/raspberrypi/rp2040/LICENSE
create mode 100644 examples/raspberrypi/rp2040/README.md
create mode 100644 examples/raspberrypi/rp2040/build.zig
create mode 100644 examples/raspberrypi/rp2040/build.zig.zon
create mode 100755 examples/raspberrypi/rp2040/scripts/hid_test.py
create mode 100755 examples/raspberrypi/rp2040/scripts/usb_device_loopback.py
create mode 100644 examples/raspberrypi/rp2040/src/adc.zig
create mode 100644 examples/raspberrypi/rp2040/src/blinky.zig
create mode 100644 examples/raspberrypi/rp2040/src/blinky_core1.zig
create mode 100644 examples/raspberrypi/rp2040/src/flash_id.zig
create mode 100644 examples/raspberrypi/rp2040/src/flash_program.zig
create mode 100644 examples/raspberrypi/rp2040/src/gpio_clk.zig
create mode 100644 examples/raspberrypi/rp2040/src/i2c_bus_scan.zig
create mode 100644 examples/raspberrypi/rp2040/src/pwm.zig
create mode 100644 examples/raspberrypi/rp2040/src/random.zig
create mode 100644 examples/raspberrypi/rp2040/src/spi_master.zig
create mode 100644 examples/raspberrypi/rp2040/src/squarewave.zig
create mode 100644 examples/raspberrypi/rp2040/src/tiles.zig
create mode 100644 examples/raspberrypi/rp2040/src/uart.zig
create mode 100644 examples/raspberrypi/rp2040/src/usb_cdc.zig
create mode 100644 examples/raspberrypi/rp2040/src/usb_hid.zig
create mode 100644 examples/raspberrypi/rp2040/src/ws2812.zig
create mode 100644 examples/stmicro/stm32/LICENSE
create mode 100644 examples/stmicro/stm32/build.zig
create mode 100644 examples/stmicro/stm32/build.zig.zon
create mode 100644 examples/stmicro/stm32/src/blinky.zig
create mode 100644 website/.envrc
create mode 100644 website/.gitattributes
create mode 100644 website/.github/workflows/pr.yml
create mode 100644 website/.github/workflows/website.yml
create mode 100644 website/.gitignore
create mode 100644 website/.gitmodules
create mode 100644 website/LICENCE
create mode 100644 website/README.md
create mode 100644 website/WIP.md
create mode 100644 website/build.zig
create mode 100644 website/build.zig.zon
create mode 100644 website/content/articles/.keep
create mode 100644 website/content/getting-started.md
create mode 100644 website/content/index.md
create mode 100644 website/content/tutorials/01-embedded-basics.md
create mode 100644 website/content/tutorials/02-embedded-programming.md
create mode 100644 website/content/tutorials/memory-map.png
create mode 100644 website/ember-icon.xcf
create mode 100644 website/flake.lock
create mode 100644 website/flake.nix
create mode 100644 website/layouts/getting-started.html
create mode 100644 website/layouts/index.html
create mode 100644 website/layouts/templates/base.html
create mode 100644 website/layouts/tutorial.html
create mode 100644 website/legacy-ssg/main.zig
create mode 100644 website/static/favicon.ico
create mode 100644 website/static/img/articles.svg
create mode 100644 website/static/img/atom.svg
create mode 100644 website/static/img/battery.svg
create mode 100644 website/static/img/chat-discord.svg
create mode 100644 website/static/img/chat-irc.svg
create mode 100644 website/static/img/code.svg
create mode 100644 website/static/img/community.svg
create mode 100644 website/static/img/ember.svg
create mode 100644 website/static/img/goals.svg
create mode 100644 website/static/img/members.svg
create mode 100644 website/static/img/pager.svg
create mode 100644 website/static/img/read-more.svg
create mode 100644 website/static/img/teacher.svg
create mode 100644 website/static/style.css
jirka@jirka-Precision-T3610:~/microzig$ git remote add origin _gitea@git.lixis.cz:jirka/microzig.git (1)
jirka@jirka-Precision-T3610:~/microzig$ git push --set-upstream origin main
jirka@jirka-Precision-T3610:~/microzig$ git add for-extraction/*
jirka@jirka-Precision-T3610:~/microzig$ git commit -m "Pridano for-extraction"
[main 15927a0] Pridano for-extraction
3 files changed, 366 insertions(+)
create mode 100644 for-extraction/uf2-flasher/build.zig
create mode 100644 for-extraction/uf2-flasher/build.zig.zon
create mode 100644 for-extraction/uf2-flasher/src/main.zig
jirka@jirka-Precision-T3610:~/microzig$ git push --set-upstream origin main
| 1 | Poslání pomocí https git remote add origin https://git.lixis.cz/jirka/microzig.git nechce fungovat. Funguje posílání jenom přes ssh. |