Only in Entware-ng_20260821_arm_008: control.tar.gz --- Entware-ng_20181002_arm_006/control/ReplaceRule +++ Entware-ng_20260821_arm_008/control/ReplaceRule @@ -18,7 +18,7 @@ # ============================================================================ PKG_NAME="Entware-ng" THIS_SCRIPT="ReplaceRule" -PKG_VERSION="20181002zypkg006" +PKG_VERSION="20260821zypkg008" ############################################################# ## Extract the PKG_ROOT for this package --- Entware-ng_20181002_arm_006/control/control +++ Entware-ng_20260821_arm_008/control/control @@ -1,5 +1,5 @@ Package: Entware-ng -Version: 20181002zypkg006 +Version: 20260821zypkg008 Description: Entware-ng is a software repository for embedded devices like routers or network attached storages. Depends: Size: 38400 @@ -7,4 +7,4 @@ Architecture: arm Zy-Model: all IsBuiltin: N -Filename: Entware-ng_20181002_arm_006.zpkg +Filename: Entware-ng_20260821_arm_008.zpkg --- Entware-ng_20181002_arm_006/control/postinst +++ Entware-ng_20260821_arm_008/control/postinst @@ -18,7 +18,7 @@ # ============================================================================ PKG_NAME="Entware-ng" THIS_SCRIPT="postinst" -PKG_VERSION="20181002zypkg006" +PKG_VERSION="20260821zypkg008" PKG_FIRMWARE=4 ############################################################ @@ -136,9 +136,10 @@ ExchangeDownloadUrl() { - if [ -f /tmp/.MetaRepository/tmp/lasturl ] ; then + local LASTURL="/tmp/.MetaRepository/tmp/lasturl" + if [ -f ${LASTURL} && ! -s ${LASTURL} ] ; then local url=$(cat /tmp/.MetaRepository/tmp/lasturl ) - sed -i "s|^PKG_DOWNLOAD_URL=http://downloads.zyxel.nas-central.org/Users/Mijzelf/fw5|PKG_DOWNLOAD_URL=${url}|" ${PKG_ROOT}/etc/init.d/${PKG_NAME} + sed -i "s|^PKG_DOWNLOAD_URL=http://zyxel.ddnss.eu/Users/Mijzelf/zypkg-repo/fw5|PKG_DOWNLOAD_URL=${url}|" ${PKG_ROOT}/etc/init.d/${PKG_NAME} fi } --- Entware-ng_20181002_arm_006/control/postrm +++ Entware-ng_20260821_arm_008/control/postrm @@ -18,7 +18,7 @@ # ============================================================================ PKG_NAME="Entware-ng" THIS_SCRIPT="postrm" -PKG_VERSION="20181002zypkg006" +PKG_VERSION="20260821zypkg008" PKG_FIRMWARE=4 ############################################################ --- Entware-ng_20181002_arm_006/control/preinst +++ Entware-ng_20260821_arm_008/control/preinst @@ -18,7 +18,7 @@ # ============================================================================ PKG_NAME="Entware-ng" THIS_SCRIPT="preinst" -PKG_VERSION="20181002zypkg006" +PKG_VERSION="20260821zypkg008" PKG_FIRMWARE=4 ############################################################ --- Entware-ng_20181002_arm_006/control/prerm +++ Entware-ng_20260821_arm_008/control/prerm @@ -18,7 +18,7 @@ # ============================================================================ PKG_NAME="Entware-ng" THIS_SCRIPT="prerm" -PKG_VERSION="20181002zypkg006" +PKG_VERSION="20260821zypkg008" PKG_FIRMWARE=4 ############################################################ Only in Entware-ng_20260821_arm_008: data.tar.gz --- Entware-ng_20181002_arm_006/data/etc/init.d/Entware-ng +++ Entware-ng_20260821_arm_008/data/etc/init.d/Entware-ng @@ -20,7 +20,7 @@ THIS_SCRIPT="Entware-ng" PKG_FIRMWARE=4 -PKG_DOWNLOAD_URL=http://downloads.zyxel.nas-central.org/Users/Mijzelf/fw5 +PKG_DOWNLOAD_URL=http://zyxel.ddnss.eu/Users/Mijzelf/zypkg-repo/fw5 ############################################################ ## Check if we are in upgradig mode. From the point of view of the package ## an upgrade is a uninstall followed by a install. So if you want to preserve @@ -519,6 +519,7 @@ [ $PKG_OLDKERNEL -eq 0 ] && sed -i "2isrc/gz Mijzelf ${MIJZELF_URL}" /opt/etc/opkg.conf /opt/bin/opkg update + [ "${CURARCH}" = "armv7" ] && /opt/bin/opkg install opkg && /opt/bin/opkg upgrade /opt/bin/opkg install profile-hook if [ ! -f /opt/usr/lib/locale/locale-archive ] --- Entware-ng_20181002_arm_006/data/gui/Entware-ng/RELEASENOTES +++ Entware-ng_20260821_arm_008/data/gui/Entware-ng/RELEASENOTES @@ -1,3 +1,10 @@ +20260821zypkg008 +* Automatic update to Entware for armv7 devices during package Installation +* GUI improvements + +20260816zypkg007 +* Updated links to repository server +* GUI improvements 20160216-stick * Added a 'wait for disks to be mounted' option --- Entware-ng_20181002_arm_006/data/gui/Entware-ng/pkgcgi.cgi +++ Entware-ng_20260821_arm_008/data/gui/Entware-ng/pkgcgi.cgi @@ -46,7 +46,7 @@ Chapter_Intro() { - local title="Entware-ng ${ARCH}" + local title="Entware${ENTWARE_SUFFIX} ${ARCH}" if [ $1 -eq 0 ] ; then cat >&1 <<__END__

${title}

@@ -76,7 +76,7 @@ cat >&1 <<__END__

${title}

-It was founded as Entware project to offer an alternative to very outdated Optware packages. Within five years of development a several Entware forks was born to run on NASes, PCs and new ARM routers. Now x86, x64, MIPS, ARMv5 and ARMv7 forks are merged into Entware-ng. It's maintained by the same team as Entware before. +The Entware project was founded to offer an alternative to the very outdated Optware packages. Within five years of development several Entware forks were born to run on NASes, PCs and new ARM routers. In the meantime x86, x64, MIPS, ARMv5 and ARMv7 forks were merged into Entware-ng which was maintained by the same team as Entware before. In March 2018, Entware-ng and Entware-3x merged into a single unified project named Entware. The older -ng and -3x variants are discontinued, and all active package feeds, toolchains, and documentation now live under the unified Entware repository. __END__ # ' } @@ -93,16 +93,17 @@ cat >&1 <<__END__

${title}

-To use Entware-ng you need shell access. You'll need to enable a telnet or ssh service on the NAS for that. +To use Entware${ENTWARE_SUFFIX} you need shell access. You'll need to enable a telnet or ssh service on the NAS for that.

Firmware 5.10

You can do that on the desktop, in 'Control panel->Network->Terminal'.

Firmware 4.80

There is an installable package SSH.

Older

-You can use the 3th party package 'Tweaks' to enable the telnet service, -or Dropbear to get an ssh server. -(You can even install Anyterm, which will give you a shell in a browser.) -

If you plan to install the Entware-ng ssh server, you can choose to use the Telnet Backdoor to get one-off access. +You can use the 3th party package 'Tweaks' to enable the telnet service, +or Dropbear to get an ssh server. +(You can even install Anyterm, which will give you a shell in a brows +

If you plan to install the Entware${ENTWARE_SUFFIX} ssh server, you can choose to use the Telnet Backdoor to get one-off access.

Client side

On the client you need telnet or ssh client software. For Windows you can use PuTTY for both purposes. @@ -122,10 +123,10 @@ cat >&1 <<__END__

${title}

-Entware-ng uses OPKG package manager, detailed help can be found here. Lets find transmission packages and install it's Web UI with dependencies, just for example: +Entware${ENTWARE_SUFFIX} uses OPKG package manager, detailed help can be found here. Lets find transmission packages and install it's Web UI with dependencies, just for example:

 # opkg update
-Downloading http://pkg.entware.net/binaries/${arch}/Packages.gz.
+Downloading ${ENTWARE_URL}/Packages.gz.
 Updated list of available packages in /opt/var/opkg-lists/entware-ng.
 
 # opkg list transmission*
@@ -139,12 +140,12 @@
    
 # opkg install transmission-web
    Installing transmission-web (2.84-4) to root...
-   Downloading http://pkg.entware.net/binaries/${arch}/transmission-web_2.84-4_${arch}.ipk.
+   Downloading ${ENTWARE_URL}/transmission-web_2.84-4_${arch}.ipk.
    Installing transmission-daemon (2.84-4) to root...
-   Downloading http://pkg.entware.net/binaries/${arch}/transmission-daemon_2.84-4_${arch}.ipk.
+   Downloading ${ENTWARE_URL}/transmission-daemon_2.84-4_${arch}.ipk.
    ...
 
-

More on the Wiki

+

More on the Wiki

__END__ # ' } @@ -154,7 +155,8 @@ [ -f /opt/sbin/kernel-2.6.24-support.sh ] || return local title="Old kernel support" - if [ $1 -eq 0 ] ; then + +if [ $1 -eq 0 ] ; then cat >&1 <<__END__

${title}

__END__ @@ -163,12 +165,12 @@ cat >&1 <<__EOF__

${title}

-On your box the old kernel patch is installed. Entware-ng targets to kernel 2.6.32 and newer, while your box runs $( uname -r ). +On your box the old kernel patch is installed. Entware${ENTWARE_SUFFIX} targets to kernel 2.6.32 and newer, while your box runs $( uname -r ). The old kernel patch has installed a libc which is compiled with support down to 2.6.24. The libc version is the same as the stock one, the only difference is a configure flag. I *think* the binaries which depend on libc won't care. At least I couldn't find any problems.

When for some reason libc is reinstalled, the precious symlinks to the 2.6.24 version are broken, and you'll need to run -
/opt/sbin/kernel-2.6.24-support.sh
(as root) to restore it. This script is also run on each start of Entware-ng. +
/opt/sbin/kernel-2.6.24-support.sh
(as root) to restore it. This script is also run on each start of Entware${ENTWARE_SUFFIX}. __EOF__ # ' } @@ -185,14 +187,14 @@ cat >&1 <<__END__

${title}

- + __END__ } Chapter_FFP() { - local title="Entware-ng & FFP coexisting" + local title="Entware${ENTWARE_SUFFIX} & FFP coexisting" if [ $1 -eq 0 ] ; then cat >&1 <<__END__

${title}

@@ -202,20 +204,20 @@ cat >&1 <<__END__

${title}

-FFP and Entware-ng are both designed to exist next to the firmware, without interfering. A side effect is that they can coexist fine. But there are some small problems. +FFP and Entware${ENTWARE_SUFFIX} are both designed to exist next to the firmware, without interfering. A side effect is that they can coexist fine. But there are some small problems. It's all in the PATH. When you type a command, the shell searches it's PATH to find it, and execute it. You can examine your PATH by typing
echo \$PATH
Normally, it contains something like '/usr/bin:/usr/sbin:/bin:/sbin'. This means the shell will first look in /usr/bin for your command, then in /usr/sbin, then in /bin, ...
-Entware-ng puts itself in the PATH by prefixing it with '/opt/bin:/opt/sbin:', while FFP prefixes it with '/ffp/bin:/ffp/sbin:', but the way they do this is different.

+Entware${ENTWARE_SUFFIX} puts itself in the PATH by prefixing it with '/opt/bin:/opt/sbin:', while FFP prefixes it with '/ffp/bin:/ffp/sbin:', but the way they do this is different.

When logging in, your shell is read from /etc/passwd. By default this is /bin/sh. This shell executes /etc/profile to set it's environment. -Entware-ng hooks this by making /etc/profile to source /opt/etc/profile, which adds the Entware directories to the PATH.

+Entware${ENTWARE_SUFFIX} hooks this by making /etc/profile to source /opt/etc/profile, which adds the Entware directories to the PATH.

The FFP package exchanges the default shell in /etc/passwd by it's own shell, /ffp/bin/sh, which doesn't use /etc/profile, but /ffp/etc/profile, which appends the FFP path.

-So if you have both FFP and Entware-ng installed, your PATH will by default not include the Entware-ng directories, as you are running an FFP shell, which doesn't use /etc/profile, +So if you have both FFP and Entware${ENTWARE_SUFFIX} installed, your PATH will by default not include the Entware${ENTWARE_SUFFIX} directories, as you are running an FFP shell, which doesn't use /etc/profile, and so doesn't use /opt/etc/profile either.

-This problem can be solved by providing the full path when you want to execute an Entware-ng command:
/opt/bin/some_command
-or you can source /opt/etc/profile:
. /opt/etc/profile
The latter has the problem that Entware-ng will put it's directories in front of the FFP directories, -which means the Entware-ng binaries will be prefered above the FFP one's. (Which can be solved by providing the full path of the desired FFP binaries) +This problem can be solved by providing the full path when you want to execute an Entware${ENTWARE_SUFFIX} command:
/opt/bin/some_command
+or you can source /opt/etc/profile:
. /opt/etc/profile
The latter has the problem that Entware${ENTWARE_SUFFIX} will put it's directories in front of the FFP directories, +which means the Entware${ENTWARE_SUFFIX} binaries will be prefered above the FFP one's. (Which can be solved by providing the full path of the desired FFP binaries) __END__ # ' } @@ -234,12 +236,12 @@

${title}

Redirecting

If you copy the contents of ${PKG_ROOT}/opt/ to an USB stick (or SD card) and create an (executable) script ${PKG_ROOT}/opt/redirect.sh which outputs the new root, -Entware-ng will run from that new root.
+Entware${ENTWARE_SUFFIX} will run from that new root.
Example, copy to stick:
# cp -a ${PKG_ROOT}/opt /e-data/f8f5f38463c16267000c311ac176a098/
The redirect script could be:
#!/bin/sh
 
 echo /e-data/f8f5f38463c16267000c311ac176a098/opt
But as it is a script, you can also use blkid or something like that to find the mountpoint. If the returned value is not a directory, it's ignored.

Self containing stick

-It's also possible to have a self containing stick, which starts itself. Download the latest zipfile here, +It's also possible to have a self containing stick, which starts itself. Download the latest zipfile here, unzip it to a FAT formatted USB stick, plug it in the box, and boot it. __END__ # ' @@ -292,7 +294,7 @@ cat >&1 <<__EOF__

${title}

-The changelog of Entware-ng itself can be found here. +The changelog of Entware${ENTWARE_SUFFIX} itself can be found here. __EOF__ [ -f ${PKG_ROOT}/gui/${PKG_NAME}/RELEASENOTES ] || return cat >&1 <<__EOF__ @@ -319,9 +321,18 @@ DownloadLogfile ${logfile} return fi - - ARCH=$( basename $(grep -v "^#" /opt/etc/opkg.conf | grep packages | awk '{print $3}' ) ) + ARCH=` awk -F'\/' '/armv[57]$/ {print $NF}' /opt/etc/opkg.conf ) ` + ENTWARE_URL=` grep -v "^#" /opt/etc/opkg.conf | grep packages | awk '{print $3}' ` + [ ENTWARE_URL="" ] && ENTWARE_URL=` grep -v "^#" /opt/etc/opkg.conf | grep entware | awk '{print $3}' ` + ARCH=` echo ${ENTWARE_URL} | awk -F'\/' '{print $NF}' ` + if [ $ARCH = "armv5" ] ; then + WIKI_URL="https://github.com/Entware/Entware-ng/wiki" + ENTWARE_SUFFIX="-ng" + else + WIKI_URL="https://github.com/Entware/Entware/wiki" + ENTWARE_SUFFIX="" + fi HtmlHeader