fix non-update build-script if package installed with no-url (skip build)

This commit is contained in:
2026-09-12 06:40:42 +03:00
parent 3cb5a220a3
commit b41663e984
10 changed files with 69 additions and 14 deletions

View File

@ -16,11 +16,6 @@ sed -i 's|^#TempDir /pkg/gnu/cups/var/spool/cups/tmp|TempDir /pkg/gnu/cups/var/s
chmod 1777 /pkg/gnu/cups/var/spool/cups/tmp chmod 1777 /pkg/gnu/cups/var/spool/cups/tmp
grep -q "SetEnv TMPDIR" /pkg/gnu/cups/etc/cups/cupsd.conf || \ grep -q "SetEnv TMPDIR" /pkg/gnu/cups/etc/cups/cupsd.conf || \
echo 'SetEnv TMPDIR /pkg/gnu/cups/var/spool/cups/tmp' >> /pkg/gnu/cups/etc/cups/cupsd.conf echo 'SetEnv TMPDIR /pkg/gnu/cups/var/spool/cups/tmp' >> /pkg/gnu/cups/etc/cups/cupsd.conf
#sed -i 's|^#User nobody|User nobody|' /pkg/gnu/cups/etc/cups/cups-files.conf
#sed -i 's|^#Group lp|Group lp|' /pkg/gnu/cups/etc/cups/cups-files.conf
#echo 'SetEnv GS_OPTIONS -dNOSAFER' >> /pkg/gnu/cups/etc/cups/cupsd.conf
usermod -aG lp nobody 2>/dev/null || gpasswd -a nobody lp usermod -aG lp nobody 2>/dev/null || gpasswd -a nobody lp
chmod 750 /pkg/gnu/cups/var/spool/cups chmod 750 /pkg/gnu/cups/var/spool/cups
chown root:lp /pkg/gnu/cups/var/spool/cups chown root:lp /pkg/gnu/cups/var/spool/cups

15
assets/var/gnu/cups/s6.md Normal file
View File

@ -0,0 +1,15 @@
<pkgname>/s6
=
``` sh *** set ***
pkgname_flat=${pkgname//\//\~}
pkgname_flat=${pkgname_flat%\~s6}
ln -sf $(pwd) /pkg/gnu/s6/etc/service/current/$pkgname_flat
s6-svscanctl -h /pkg/gnu/s6/etc/service/current
```
``` sh *** off ***
pkgname_flat=${pkgname//\//\~}
rm /pkg/gnu/s6/etc/service/current/$pkgname_flat
```

View File

@ -0,0 +1,2 @@
#!/pkg/gnu/bin/zsh
cupsd -f

View File

@ -0,0 +1,15 @@
<pkgname>/s6
=
``` sh *** set ***
pkgname_flat=${pkgname//\//\~}
pkgname_flat=${pkgname_flat%\~s6}
ln -sf $(pwd) /pkg/gnu/s6/etc/service/current/$pkgname_flat
s6-svscanctl -h /pkg/gnu/s6/etc/service/current
```
``` sh *** off ***
pkgname_flat=${pkgname//\//\~}
rm /pkg/gnu/s6/etc/service/current/$pkgname_flat
```

View File

@ -0,0 +1,15 @@
<pkgname>/s6
=
``` sh *** set ***
pkgname_flat=${pkgname//\//\~}
pkgname_flat=${pkgname_flat%\~s6}
ln -sf $(pwd) /pkg/gnu/s6/etc/service/current/$pkgname_flat
s6-svscanctl -h /pkg/gnu/s6/etc/service/current
```
``` sh *** off ***
pkgname_flat=${pkgname//\//\~}
rm /pkg/gnu/s6/etc/service/current/$pkgname_flat
```

View File

@ -1,11 +1,15 @@
unitprint/backend-local/s6 <pkgname>/s6
= =
``` sh *** set *** ``` sh *** set ***
ln -sf $(pwd) /pkg/gnu/s6/etc/service/current/unitprint-backend-local pkgname_flat=${pkgname//\//\~}
pkgname_flat=${pkgname_flat%\~s6}
ln -sf $(pwd) /pkg/gnu/s6/etc/service/current/$pkgname_flat
s6-svscanctl -h /pkg/gnu/s6/etc/service/current
``` ```
``` sh *** off *** ``` sh *** off ***
rm /pkg/gnu/s6/etc/service/current/unitprint-backend-local pkgname_flat=${pkgname//\//\~}
rm /pkg/gnu/s6/etc/service/current/$pkgname_flat
``` ```

View File

@ -1,13 +1,13 @@
server { server {
listen 80; listen 80;
server_name unitprint.ru www.unitprint.ru; server_name unitprint.ru local.unitprint.ru;
return 301 https://$host$request_uri; return 301 https://$host$request_uri;
} }
server { server {
listen 443 ssl; listen 443 ssl;
http2 on; http2 on;
server_name unitprint.ru www.unitprint.ru; server_name unitprint.ru local.unitprint.ru;
ssl_certificate /usr/local/etc/letsencrypt/live/unitprint.ru/fullchain.pem; ssl_certificate /usr/local/etc/letsencrypt/live/unitprint.ru/fullchain.pem;
ssl_certificate_key /usr/local/etc/letsencrypt/live/unitprint.ru/privkey.pem; ssl_certificate_key /usr/local/etc/letsencrypt/live/unitprint.ru/privkey.pem;

View File

@ -1,6 +1,6 @@
server { server {
listen 80 default_server; listen 80 default_server;
server_name unitprint.ru www.unitprint.ru 192.168.20.1 _ server_name unitprint.ru local.unitprint.ru 192.168.20.1 _
connectivitycheck.android.com connectivitycheck.android.com
connectivitycheck.gstatic.com connectivitycheck.gstatic.com
clients3.google.com clients3.google.com
@ -21,7 +21,7 @@ server {
listen 443 ssl; listen 443 ssl;
http2 on; http2 on;
server_name unitprint.ru www.unitprint.ru 192.168.20.1 _; server_name unitprint.ru local.unitprint.ru 192.168.20.1 _;
ssl_certificate /pkg/gnu/unitprint/certs/fullchain.pem; ssl_certificate /pkg/gnu/unitprint/certs/fullchain.pem;
ssl_certificate_key /pkg/gnu/unitprint/certs/privkey.pem; ssl_certificate_key /pkg/gnu/unitprint/certs/privkey.pem;

View File

@ -1,6 +1,6 @@
server { server {
listen 80; listen 80;
server_name unitprint.ru www.unitprint.ru 192.168.1.129; server_name local.unitprint.ru unitprint.ru 192.168.1.129;
access_log /pkg/gnu/unitprint/nginx/run/unitprint.access.log; access_log /pkg/gnu/unitprint/nginx/run/unitprint.access.log;
error_log /pkg/gnu/unitprint/nginx/run/unitprint.error.log; error_log /pkg/gnu/unitprint/nginx/run/unitprint.error.log;

View File

@ -12,7 +12,7 @@ use super::run::config::config;
pub fn install(repo: &String, pkgname: &String) { pub fn install(repo: &String, pkgname: &String) {
let pkg_md_path = &crate::commands::get_aeropkg_var().join(format!("{}/{}.md", repo, pkgname)); let pkg_md_path = &crate::commands::get_aeropkg_var().join(format!("{}/{}.md", repo, pkgname));
let builded_pkg_md_path = crate::commands::get_aeropkg_base().join(repo).join(pkgname).join("build-script.md"); let builded_pkg_md_path = &crate::commands::get_aeropkg_base().join(repo).join(pkgname).join("build-script.md");
if builded_pkg_md_path.exists() { if builded_pkg_md_path.exists() {
if fs::metadata(builded_pkg_md_path).unwrap().ino() == fs::metadata(pkg_md_path).unwrap().ino() { return } if fs::metadata(builded_pkg_md_path).unwrap().ino() == fs::metadata(pkg_md_path).unwrap().ino() { return }
} }
@ -25,6 +25,8 @@ pub fn install(repo: &String, pkgname: &String) {
download(repo, pkgname); download(repo, pkgname);
patch(repo, pkgname); patch(repo, pkgname);
build(repo, pkgname) build(repo, pkgname)
} else {
update_built_link(pkg_md_path, builded_pkg_md_path);
} }
} }
Err(e) => { Err(e) => {
@ -37,6 +39,13 @@ pub fn install(repo: &String, pkgname: &String) {
shell::run_install_hook_script(full_env); shell::run_install_hook_script(full_env);
} }
fn update_built_link(src: &std::path::Path, dest: &std::path::Path) {
let _ = fs::remove_file(dest);
if let Err(e) = fs::hard_link(src, dest) {
eprintln!("Warning: Failed to update build-script.md link: {}", e);
}
}
fn check_build_dependency(repo: &String, pkg_md_path: &Path) { fn check_build_dependency(repo: &String, pkg_md_path: &Path) {
let deps = match parser::get_build_deps(pkg_md_path) { let deps = match parser::get_build_deps(pkg_md_path) {
Ok(deps) => deps, Ok(deps) => deps,