--- title: "πŸ“¦ Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ ΠΈΠ· edge Π² Alpine Linux" date: 2022-07-31T15:38:09+03:00 draft: false tags: [linux, tips, alpine linux] --- ## ΠŸΠ΅Ρ€Π΄ΠΈΡΠ»ΠΎΠ²ΠΈΠ΅ Π‘Ρ‚Π°Π»ΠΎ ΠΌΠ½Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ язык программирования Crystal Π΄ΠΎ вСрсии 1.5.0. ИмССм Π²Π΅Ρ€ΡΠΈΡŽ дистрибутива **3.16**: ```sh cat /etc/os-release NAME="Alpine Linux" ID=alpine VERSION_ID=3.16.0 PRETTY_NAME="Alpine Linux v3.16" HOME_URL="https://alpinelinux.org/" BUG_REPORT_URL="https://gitlab.alpinelinux.org/alpine/aports/-/issues" ``` [Crystal](https://crystal-lang.org/) [1.5.0](https://pkgs.alpinelinux.org/package/edge/community/x86_64/crystal) Π»Π΅ΠΆΠΈΡ‚ Π² edge, Π° Π² Alpine Linux 3.16 Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π½Π°ΠΏΠΈcания ΡΡ‚Π°Ρ‚ΡŒΠΈ вСрсия ΠΏΠ°ΠΊΠ΅Ρ‚Π° [1.4.1](https://pkgs.alpinelinux.org/package/v3.16/community/x86_64/crystal). ## ДобавляСм Π½ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈ устанавливаСм (обновляСм) ΠΏΠ°ΠΊΠ΅Ρ‚ Бписки Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² хранятся Π² Ρ„Π°ΠΉΠ»Π΅ `/etc/apk/repositories`: ```sh cat /etc/apk/repositories https://dl-cdn.alpinelinux.org/alpine/v3.16/main https://dl-cdn.alpinelinux.org/alpine/v3.16/community ``` ДобавляСм Π½ΠΎΠ²Ρ‹ΠΉ: ```sh echo "@edge https://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories ``` ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ здСсь - [Repository pinning](https://wiki.alpinelinux.org/wiki/Package_management#Repository_pinning). МоТно ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ссылку Π½Π° Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ `--repository`: ```sh apk add librdkafka --repository=https://dl-cdn.alpinelinux.org/alpine/edge/community ``` ## ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π’ ΠΌΠΎΡ‘ΠΌ случаС всё Π½Π΅ Ρ‚Π°ΠΊ просто, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Ρ‰Ρ‘ [llvm14-libs](https://pkgs.alpinelinux.org/package/edge/main/aarch64/llvm14-libs). ```sh apk add crystal@edge ERROR: unable to select packages: so:libLLVM-14.so (no such package): required by: crystal-1.5.0-r0[so:libLLVM-14.so] ``` УстанавливаСм: ```sh apk add llvm14-libs --repository=https://dl-cdn.alpinelinux.org/alpine/edge/main apk add crystal@edge (1/2) Upgrading crystal@edge (1.4.1-r0 -> 1.5.0-r0) (2/2) Purging llvm13-libs (13.0.1-r2) apk add shards@edge (1/2) Installing yaml (0.2.5-r0) (2/2) Installing shards@edge (0.17.0-r0) ``` ```sh crystal -v Crystal 1.5.0 (2022-07-15) LLVM: 14.0.6 Default target: x86_64-alpine-linux-musl ```