From 3cb5a220a3d3523e502dc39f657bab6c799519c3 Mon Sep 17 00:00:00 2001 From: TraceLumen Date: Sat, 12 Sep 2026 05:53:05 +0300 Subject: [PATCH] .pkgdata link force flag add --- assets/var/gnu/eza.md | 9 +++ assets/var/gnu/sex.md | 2 + assets/var/gnu/sex/.pkgdata/bin/sex | 39 +++++++++ assets/var/gnu/unitprint/certs.md | 8 +- .../unitprint/certs/.pkgdata/fullchain.pem | 80 +++++++++++++++++++ .../gnu/unitprint/certs/.pkgdata/privkey.pem | 5 ++ assets/var/gnu/unitprint/nginx.md | 23 ++++++ .../nginx/.pkgdata/.app-freebsd-proxy.conf | 43 ++++++++++ .../unitprint/nginx/.pkgdata/.app-local.conf | 75 +++++++++++++++++ .../gnu/unitprint/nginx/.pkgdata/.app.conf | 43 ++++++++++ assets/var/gnu/unitprint/web-app.md | 5 -- src/commands/run/config.rs | 2 +- src/commands/run/download.rs | 2 +- 13 files changed, 327 insertions(+), 9 deletions(-) create mode 100644 assets/var/gnu/eza.md create mode 100644 assets/var/gnu/sex.md create mode 100755 assets/var/gnu/sex/.pkgdata/bin/sex create mode 100644 assets/var/gnu/unitprint/certs/.pkgdata/fullchain.pem create mode 100644 assets/var/gnu/unitprint/certs/.pkgdata/privkey.pem create mode 100644 assets/var/gnu/unitprint/nginx.md create mode 100644 assets/var/gnu/unitprint/nginx/.pkgdata/.app-freebsd-proxy.conf create mode 100644 assets/var/gnu/unitprint/nginx/.pkgdata/.app-local.conf create mode 100644 assets/var/gnu/unitprint/nginx/.pkgdata/.app.conf diff --git a/assets/var/gnu/eza.md b/assets/var/gnu/eza.md new file mode 100644 index 0000000..bcd2bad --- /dev/null +++ b/assets/var/gnu/eza.md @@ -0,0 +1,9 @@ +eza 0.23.5 += +https://github.com/eza-community/eza/archive/refs/tags/v0.23.5.tar.gz + +``` sh *** build *** +cargo install --path . --root $pkgpath --locked +mkdir -p ../share/zsh/site-functions +cp -l completions/zsh/* ../share/zsh/site-functions +``` diff --git a/assets/var/gnu/sex.md b/assets/var/gnu/sex.md new file mode 100644 index 0000000..0da83e1 --- /dev/null +++ b/assets/var/gnu/sex.md @@ -0,0 +1,2 @@ +sex += diff --git a/assets/var/gnu/sex/.pkgdata/bin/sex b/assets/var/gnu/sex/.pkgdata/bin/sex new file mode 100755 index 0000000..47f7b26 --- /dev/null +++ b/assets/var/gnu/sex/.pkgdata/bin/sex @@ -0,0 +1,39 @@ +#!/bin/bash + +if [ "$#" -lt 1 ]; then + echo "Usage:" + echo " sex [file2] ..." + exit 1 +fi + +# Проверка наличия xsel +if ! command -v xsel &> /dev/null; then + echo "Ошибка: xsel не установлен. Установите его: sudo pacman -S xsel" >&2 + exit 1 +fi + +# Генерируем весь контент и передаем его напрямую в буфер обмена +{ + # Project parser + printf 'Структура проекта\n```\n' + if command -v eza &> /dev/null; then + eza --git-ignore --tree 2>/dev/null || tree -I '.git' 2>/dev/null || find . -not -path './.git/*' + else + tree -I '.git' 2>/dev/null || find . -not -path './.git/*' + fi + printf '```\n' + + # Files parser + for file in "$@"; do + if [ -f "$file" ]; then + printf 'Содержимое %s\n```\n' "$file" + cat "$file" + printf '\n```\n' + else + # Ошибки пишем в stderr, чтобы они не попали в буфер обмена + echo "Файл $file не найден." >&2 + fi + done +} | xsel --clipboard --input + +echo "✅ Скопировано в буфер обмена (X11/xsel)" diff --git a/assets/var/gnu/unitprint/certs.md b/assets/var/gnu/unitprint/certs.md index 978fcf1..3ed825f 100644 --- a/assets/var/gnu/unitprint/certs.md +++ b/assets/var/gnu/unitprint/certs.md @@ -1,12 +1,16 @@ +unitprint/certs += +``` sh *** config *** chgrp -R nginx /pkg/gnu/unitprint/certs chmod 750 /pkg/gnu/unitprint/certs chmod 640 /pkg/gnu/unitprint/certs/fullchain.pem chmod 640 /pkg/gnu/unitprint/certs/fullchain.pem +``` - +``` sh # free bsd rsync -aL root@d:/usr/local/etc/letsencrypt/live/unitprint.ru/fullchain.pem /pkg/gnu/unitprint/certs/ rsync -aL root@d:/usr/local/etc/letsencrypt/live/unitprint.ru/privkey.pem /pkg/gnu/unitprint/certs/ - +``` diff --git a/assets/var/gnu/unitprint/certs/.pkgdata/fullchain.pem b/assets/var/gnu/unitprint/certs/.pkgdata/fullchain.pem new file mode 100644 index 0000000..f066c94 --- /dev/null +++ b/assets/var/gnu/unitprint/certs/.pkgdata/fullchain.pem @@ -0,0 +1,80 @@ +-----BEGIN CERTIFICATE----- +MIIDhzCCAwygAwIBAgISBpczszTJXi3QhiIqKmNleRy7MAoGCCqGSM49BAMDMDMx +CzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQwwCgYDVQQDEwNZ +RTIwHhcNMjYwOTA5MTQzODI0WhcNMjYxMjA4MTQzODIzWjAXMRUwEwYDVQQDEwx1 +bml0cHJpbnQucnUwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAARQhZO5MmseZgsS +LBsFCXLDAeZbC6DuYKlHr32+zr4lq4S2uQISGtIpesqwuCWhub+95BbmMsoPoAub +8WC1CvHCo4ICGjCCAhYwDgYDVR0PAQH/BAQDAgeAMBMGA1UdJQQMMAoGCCsGAQUF +BwMBMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFP6hXJcTKU4o8HCpQIzuRgUJJGfq +MB8GA1UdIwQYMBaAFLlZ8o7PIvCG0zdI/3YUGLqC2FWHMDMGCCsGAQUFBwEBBCcw +JTAjBggrBgEFBQcwAoYXaHR0cDovL3llMi5pLmxlbmNyLm9yZy8wFwYDVR0RBBAw +DoIMdW5pdHByaW50LnJ1MBMGA1UdIAQMMAowCAYGZ4EMAQIBMC4GA1UdHwQnMCUw +I6AhoB+GHWh0dHA6Ly95ZTIuYy5sZW5jci5vcmcvNjAuY3JsMIIBDAYKKwYBBAHW +eQIEAgSB/QSB+gD4AH0AqCbL4wrGNRJGUz/gZfFPGdluGQgTxB3ZbXkAsxI8VScA +AAGghtCiCAAIAAAFAC+bPrMEAwBGMEQCIEpTuA2ICiA9uzswKYCOUlwsbeHl1lNE +8hlPX8m8AZ87AiAFC9sBAzBYFr8eeb4mFzStIOcDY60LjPX0VJoeEs0ihQB3AJRO +Q4f67MHvgfMZJCaoGGUBx9NfOAIBP3JnfVU3LhnYAAABoIbQp0YAAAQDAEgwRgIh +AOTRjY2JfZTbyDXVxiEHJpshzHaNFO8U2yYEQxnEKdNXAiEA0wyyf/boR4bhoyRP +VvWAu7rKlGaMHSKb6JJYdWrvyxIwCgYIKoZIzj0EAwMDaQAwZgIxAMIi7H17c07k +O6UlJbq63UcLvPPjSwNN1kw7BM0MRJ6/41Xm3y0Q4fptAx83gBhEGgIxALSA1fw0 +HKUQAzdep5KcMS2aFutVXvsXpT039ctQVNz+ra+86RASA6t6BTw/Ws7wzw== +-----END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIICjDCCAhGgAwIBAgIQTfOxXdbAeExQfNN7WObxFTAKBggqhkjOPQQDAzAuMQsw +CQYDVQQGEwJVUzENMAsGA1UEChMESVNSRzEQMA4GA1UEAxMHUm9vdCBZRTAeFw0y +NTA5MDMwMDAwMDBaFw0yODA5MDIyMzU5NTlaMDMxCzAJBgNVBAYTAlVTMRYwFAYD +VQQKEw1MZXQncyBFbmNyeXB0MQwwCgYDVQQDEwNZRTIwdjAQBgcqhkjOPQIBBgUr +gQQAIgNiAARxmrQzkdbEEL3MqXt3dJQttYc47axkdDTHud5TPqM2z5uSD5cmk0Wr +HlWXvnlvqBLqiB34kluxIbmMyAiq3/YD6e80/vV259K8XQIdjFXloYOa0mIU71f7 +HQ09PvYDlw+jge4wgeswDgYDVR0PAQH/BAQDAgGGMBMGA1UdJQQMMAoGCCsGAQUF +BwMBMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFLlZ8o7PIvCG0zdI/3YU +GLqC2FWHMB8GA1UdIwQYMBaAFKPIJlqOoUzQNWP8myPIOq5W809WMDIGCCsGAQUF +BwEBBCYwJDAiBggrBgEFBQcwAoYWaHR0cDovL3llLmkubGVuY3Iub3JnLzATBgNV +HSAEDDAKMAgGBmeBDAECATAnBgNVHR8EIDAeMBygGqAYhhZodHRwOi8veWUuYy5s +ZW5jci5vcmcvMAoGCCqGSM49BAMDA2kAMGYCMQDIcnw5dcZLN9ffynXnnkLD/itS +JEycJPb3sRkzeqBowup7vOsAwaqoCnNn/jh9wycCMQCJM6CPlaOC4pQYYbJtVPYb +DKrIb2EKk5NpOpE6/XttQYZV/3gilB9l+Cc/DOVwmyg= +-----END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIICpjCCAiugAwIBAgIRAIchZfw0tuX7qK3Vs3BftTowCgYIKoZIzj0EAwMwTzEL +MAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2VhcmNo +IEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDIwHhcNMjYwNTEzMDAwMDAwWhcN +MzIwOTAyMjM1OTU5WjAuMQswCQYDVQQGEwJVUzENMAsGA1UEChMESVNSRzEQMA4G +A1UEAxMHUm9vdCBZRTB2MBAGByqGSM49AgEGBSuBBAAiA2IABDwS/6vhrcVqcbBo ++wgdI3fwn9x7DNJJOY/lTOti0vkwuRN87RhEhTH17E7XyFjWsPYhIPt/wzOqxTd2 +b+4ZJNy9ID04YywF9U5zasDVyGSNErVNtz8uSGh5izW87j77GaOB6zCB6DAOBgNV +HQ8BAf8EBAMCAQYwEwYDVR0lBAwwCgYIKwYBBQUHAwEwDwYDVR0TAQH/BAUwAwEB +/zAdBgNVHQ4EFgQUo8gmWo6hTNA1Y/ybI8g6rlbzT1YwHwYDVR0jBBgwFoAUfEKW +rt5LSDv6kviejM9ti6lyN5UwMgYIKwYBBQUHAQEEJjAkMCIGCCsGAQUFBzAChhZo +dHRwOi8veDIuaS5sZW5jci5vcmcvMBMGA1UdIAQMMAowCAYGZ4EMAQIBMCcGA1Ud +HwQgMB4wHKAaoBiGFmh0dHA6Ly94Mi5jLmxlbmNyLm9yZy8wCgYIKoZIzj0EAwMD +aQAwZgIxAMU19WCtmxVND8UHBZRoma49Z7jPs64Dma0eTu1OChVbB/2J7GV3nvYK +Ax54uk1G9QIxAO0miLVJu8PLNiXXXkiE/gsK3CTRTF/aeo4bMX42Zw40csRU6AC2 +6hSW1/IWaas6dg== +-----END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIEcDCCAligAwIBAgIQbI8dxyfHEX97r4U6yYD5zTANBgkqhkiG9w0BAQsFADBP +MQswCQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJuZXQgU2VjdXJpdHkgUmVzZWFy +Y2ggR3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBYMTAeFw0yNjA1MTMwMDAwMDBa +Fw0zMjA5MDIyMzU5NTlaME8xCzAJBgNVBAYTAlVTMSkwJwYDVQQKEyBJbnRlcm5l +dCBTZWN1cml0eSBSZXNlYXJjaCBHcm91cDEVMBMGA1UEAxMMSVNSRyBSb290IFgy +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEzZvVn4CDCuwJSvMWSj5cz3es3mcFDR0H +ttwW+1qLFNvicWDEukWVEYmO6gbf9yoWHKS5xcUy4APgHoIYOIvXRdgKam7mAHf7 +AlF9ItgKbppbd9/w+kHsOdx1ymgHDB/qo4H1MIHyMA4GA1UdDwEB/wQEAwIBBjAd +BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDwYDVR0TAQH/BAUwAwEB/zAd +BgNVHQ4EFgQUfEKWrt5LSDv6kviejM9ti6lyN5UwHwYDVR0jBBgwFoAUebRZ5nu2 +5eQBc4AIiMgaWPbpm24wMgYIKwYBBQUHAQEEJjAkMCIGCCsGAQUFBzAChhZodHRw +Oi8veDEuaS5sZW5jci5vcmcvMBMGA1UdIAQMMAowCAYGZ4EMAQIBMCcGA1UdHwQg +MB4wHKAaoBiGFmh0dHA6Ly94MS5jLmxlbmNyLm9yZy8wDQYJKoZIhvcNAQELBQAD +ggIBAD2/e9frmMxNpCV03qUHegg+MV2wz9644YoXdqtH8RyWYcBO7xfjjGEXdU1e +/o0OkEFiynUCOSIk/vLLo7ttz6CPAeNlWfC0XNkoGeWgK6jjXvozBaGuGH5n0Ufo +shMeWTuURqNN5G00sSXDTBrpp2+mgvdZQjb8K11TYMA25QA+YHNfbIEL0BniAhKS +2gsnJjSzrdZLI+EZ7SEyqdR2rkjd1KutLDU+n3TFyxjniZVGur4YlhMP3mY/dV95 +IruAkkjOZier6hGBdEgZXXvaCz9u9iVEadsIE75pAGL8oHV5vxdARDiotRpul1IN +/UZwzAbrfUFcw1HkAcYD/mlZfnQ2ieCF2MS7j3Vhv7JPDKp45fmykmzYNSrumRW0 +upFFKDBOoF7hsOb7oLyHS+Uft6jOUfOrogj8YUx38hKb2K20r42OgsSdDdxdeYWc +MS3Sb6mwJeSZEYxJ2gaXnDSPaKhhrNkYwljyVQyr4Nq+MEJytXNTnHqaAcrNwZlV +pcJL1KBnMrMjP7eanvUwL3FYj3cF17jtboLt7gLoi4+2rWZFvn+w54jmd/FIuhhZ +cEaU/wvU6BUNMtcVquVGHp7itQeDth5j+XL3j4WJ2SABwzUl6OeYdgpIt/ITZa+p +TT0mQ/r5XyA4MEAiabn7XJjvCERlF2dcn2wqJw+CreTkkQ2R +-----END CERTIFICATE----- diff --git a/assets/var/gnu/unitprint/certs/.pkgdata/privkey.pem b/assets/var/gnu/unitprint/certs/.pkgdata/privkey.pem new file mode 100644 index 0000000..b1d5742 --- /dev/null +++ b/assets/var/gnu/unitprint/certs/.pkgdata/privkey.pem @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgkXrj+sMy/2JyMx1c +gSX8eZnuBqO18V+2er1PmMwz+XShRANCAARQhZO5MmseZgsSLBsFCXLDAeZbC6Du +YKlHr32+zr4lq4S2uQISGtIpesqwuCWhub+95BbmMsoPoAub8WC1CvHC +-----END PRIVATE KEY----- diff --git a/assets/var/gnu/unitprint/nginx.md b/assets/var/gnu/unitprint/nginx.md new file mode 100644 index 0000000..cf4b9d2 --- /dev/null +++ b/assets/var/gnu/unitprint/nginx.md @@ -0,0 +1,23 @@ +unitprint/backend-local/nginx += + +``` sh *** config *** +mkdir -p /pkg/gnu/unitprint/nginx/run +chgrp -R nginx /pkg/gnu/unitprint/nginx/run +``` + +``` sh *** set-aura *** +cp -fl .app.conf app.conf +``` + +``` sh *** set-local *** +cp -fl .app-local.conf app.conf +``` + +``` sh *** set-freebsd *** +cp -fl .app-freebsd-proxy.conf app.conf +``` + +``` sh *** off *** +rm app.conf +``` diff --git a/assets/var/gnu/unitprint/nginx/.pkgdata/.app-freebsd-proxy.conf b/assets/var/gnu/unitprint/nginx/.pkgdata/.app-freebsd-proxy.conf new file mode 100644 index 0000000..b1758ea --- /dev/null +++ b/assets/var/gnu/unitprint/nginx/.pkgdata/.app-freebsd-proxy.conf @@ -0,0 +1,43 @@ +server { + listen 80; + server_name unitprint.ru www.unitprint.ru; + return 301 https://$host$request_uri; +} + +server { + listen 443 ssl; + http2 on; + server_name unitprint.ru www.unitprint.ru; + + ssl_certificate /usr/local/etc/letsencrypt/live/unitprint.ru/fullchain.pem; + ssl_certificate_key /usr/local/etc/letsencrypt/live/unitprint.ru/privkey.pem; + + ssl_protocols TLSv1.2 TLSv1.3; + ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384; + ssl_prefer_server_ciphers off; + ssl_session_cache shared:SSL:10m; + ssl_session_timeout 10m; + + access_log /var/log/nginx/unitprint.access.log; + error_log /var/log/nginx/unitprint.error.log; + + location / { + proxy_pass http://192.168.1.129; + + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header X-Forwarded-Host $host; + proxy_set_header X-Forwarded-Port $server_port; + + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + + client_max_body_size 100M; + proxy_connect_timeout 60s; + proxy_send_timeout 60s; + proxy_read_timeout 60s; + } +} diff --git a/assets/var/gnu/unitprint/nginx/.pkgdata/.app-local.conf b/assets/var/gnu/unitprint/nginx/.pkgdata/.app-local.conf new file mode 100644 index 0000000..9037e83 --- /dev/null +++ b/assets/var/gnu/unitprint/nginx/.pkgdata/.app-local.conf @@ -0,0 +1,75 @@ +server { + listen 80 default_server; + server_name unitprint.ru www.unitprint.ru 192.168.20.1 _ + connectivitycheck.android.com + connectivitycheck.gstatic.com + clients3.google.com + www.google.com; + + location = /generate_204 { return 204; } + location = /gen_204 { return 204; } + location = /hotspot-detect.html { return 204; } + location = /connecttest.txt { return 204; } + location = /mobile/status.php { return 204; } + + location / { + return 301 https://$host$request_uri; + } +} + +server { + listen 443 ssl; + http2 on; + + server_name unitprint.ru www.unitprint.ru 192.168.20.1 _; + + ssl_certificate /pkg/gnu/unitprint/certs/fullchain.pem; + ssl_certificate_key /pkg/gnu/unitprint/certs/privkey.pem; + + ssl_protocols TLSv1.2 TLSv1.3; + ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384; + ssl_prefer_server_ciphers off; + ssl_session_cache shared:SSL:10m; + ssl_session_timeout 1d; + ssl_session_tickets off; + + add_header Strict-Transport-Security "max-age=63072000; includeSubDomains" always; + add_header X-Content-Type-Options nosniff always; + + root /pkg/gnu/unitprint/web-app/dist; + index index.html; + + gzip on; + gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript image/svg+xml; + gzip_min_length 1000; + + location /api/ { + proxy_pass http://127.0.0.1:3000/; + + proxy_http_version 1.1; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + + client_max_body_size 50M; + + proxy_read_timeout 300s; + proxy_send_timeout 300s; + } + + + location /assets/ { + expires 1y; + add_header Cache-Control "public, immutable"; + } + + location ~* ^/(sw\.js|registerSW\.js|manifest\.webmanifest)$ { + expires -1; + add_header Cache-Control "no-cache, no-store, must-revalidate"; + } + + location / { + try_files $uri $uri/ /index.html; + } +} diff --git a/assets/var/gnu/unitprint/nginx/.pkgdata/.app.conf b/assets/var/gnu/unitprint/nginx/.pkgdata/.app.conf new file mode 100644 index 0000000..ce17d6d --- /dev/null +++ b/assets/var/gnu/unitprint/nginx/.pkgdata/.app.conf @@ -0,0 +1,43 @@ +server { + listen 80; + server_name unitprint.ru www.unitprint.ru 192.168.1.129; + + access_log /pkg/gnu/unitprint/nginx/run/unitprint.access.log; + error_log /pkg/gnu/unitprint/nginx/run/unitprint.error.log; + + root /pkg/gnu/unitprint/web-app/dist; + index index.html; + + gzip on; + gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript image/svg+xml; + gzip_min_length 1000; + + location /api/ { + proxy_pass http://127.0.0.1:3000/; + + proxy_http_version 1.1; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + + client_max_body_size 50M; + + proxy_read_timeout 300s; + proxy_send_timeout 300s; + } + + location /assets/ { + expires 1y; + add_header Cache-Control "public, immutable"; + } + + location ~* ^/(sw\.js|registerSW\.js|manifest\.webmanifest)$ { + expires -1; + add_header Cache-Control "no-cache, no-store, must-revalidate"; + } + + location / { + try_files $uri $uri/ /index.html; + } +} diff --git a/assets/var/gnu/unitprint/web-app.md b/assets/var/gnu/unitprint/web-app.md index b5d6d09..cbd7d8a 100644 --- a/assets/var/gnu/unitprint/web-app.md +++ b/assets/var/gnu/unitprint/web-app.md @@ -2,10 +2,6 @@ unitprint/web-app = ssh://git@root-kit.ru:17458/UnitPrint/web-app.git -``` env *** env *** -save_source=true -``` - ``` sh *** build *** git pull npm install @@ -24,4 +20,3 @@ cd src npm create vite@latest . -- --template svelte --no-interactive --overwrite npm install ``` - diff --git a/src/commands/run/config.rs b/src/commands/run/config.rs index 0cf7b50..de7eda9 100644 --- a/src/commands/run/config.rs +++ b/src/commands/run/config.rs @@ -9,7 +9,7 @@ pub fn config(repo: &String, pkgname: &String) { let pkgdata = crate::commands::get_aeropkg_var().join(repo).join(pkgname).join(".pkgdata"); if pkgdata.exists() { - let status = Command::new("cp").args(["-rPl", &format!("{}/.", pkgdata.to_string_lossy()), &pkg_dir.to_string_lossy()]).status(); + let status = Command::new("cp").args(["-rPlf", &format!("{}/.", pkgdata.to_string_lossy()), &pkg_dir.to_string_lossy()]).status(); if let Err(e) = status { eprintln!("Warning: failed to copy .pkgdata for {}/{}: {}", repo, pkgname, e) } } diff --git a/src/commands/run/download.rs b/src/commands/run/download.rs index 6560079..431b306 100644 --- a/src/commands/run/download.rs +++ b/src/commands/run/download.rs @@ -29,7 +29,7 @@ pub fn download(repo: &String, pkgname: &String) { } let pkgdata = crate::commands::get_aeropkg_var().join(repo).join(pkgname).join(".pkgdata.patch"); if pkgdata.exists() { - let status = Command::new("cp").args(["-rPl", &format!("{}/.", pkgdata.to_string_lossy()), &src.to_string_lossy()]).status(); + let status = Command::new("cp").args(["-rPlf", &format!("{}/.", pkgdata.to_string_lossy()), &src.to_string_lossy()]).status(); if let Err(e) = status { eprintln!("Warning: failed to copy .pkgdata for {}/{}: {}", repo, pkgname, e) } }