What's new

Scribe Unable to install Scribe 3.0_2 via amtm or command line

  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

Morpheo

New Around Here
After scribe problem, i uninstalled it and now I'm unable to reinstall.
The error is:

" ASUSWRT-Merlin version 380.68 or later with Entware is required! "

But FW version is 386.10 and I have also tried to reinstall Entware.
No success via amtm or command line.
What happened? :D
 
I have a similar issue in that scribe 3.0.0 and above won't actually run properly. If I go the uninstall route them on reinstall amtm complains the files don't exist - the servers ping just fine. I'm wondering if there's a way to draw the original git files for 2.2.4 which never had a problem.
Okay, not so similar but both linking to amtm and the scribe install
 
The error is:

" ASUSWRT-Merlin version 380.68 or later with Entware is required! "
This is the pre-installation check you are failing:
Code:
    if [ ! -x "/opt/bin/opkg" ] || [ "$fwname" != "$merlin" ] || [ "$( ver_num "$fwvers" )" -lt "$( ver_num "$fwreqd" )" ]
and this is the function that computes the version number
Code:
ver_num(){ echo "$1" | sed 's/v//; s/_/./' | awk -F. '{ printf("%d%02d%02d\n", $1, $2, $3); }'; }
So scribe is not finding an executable opkg (no Entware), or not finding merlin firmware, or computing that your version is less than 380.68. What does that ver_num function compute for you?
 
Last edited:
This is the pre-installation check you are failing:
Code:
    if [ ! -x "/opt/bin/opkg" ] || [ "$fwname" != "$merlin" ] || [ "$( ver_num "$fwvers" )" -lt "$( ver_num "$fwreqd" )" ]
and this is the function that computes the version number
Code:
ver_num(){ echo "$1" | sed 's/v//; s/_/./' | awk -F. '{ printf("%d%02d%02d\n", $1, $2, $3); }'; }
So scribe is not finding an executable opkg (no Entware), or not finding merlin firmware, or computing that your version is less than 380.68. What does that ver_num function compute for you?
That ver_num function returns nothing for me

This whole thing is getting weird to me:
Selection_002.png


After uninstalling scribe and rebooting scribe was still listed with no version number. The red bit is since I checked for updates. There's nothing I can do. Something is seriously messed up.

Just noticed you have AX88U too, hmmmmm can't blame hardware. Leaving this thread, I'm messing things up for the OP
 
To return to the OP's question, ver_num returns 3861000 for 386.10, and it returns 3806800 for 380.68, so it should be OK.
 
Ok, I have tried to reinstall scribe but the error is the same.
Tried to execute command line for line:

Img01.png

The addon has been downloaded correctly and converted to executable...
When I do "scribe install", after some second this appear:

img02.png


and the addon deleted from the /jffs/scripts folder.

Code:
ver_num(){ echo "$1" | sed 's/v//; s/_/./' | awk -F. '{ printf("%d%02d%02d\n", $1, $2, $3); }'; }

This return me nothing

I think it's an nvram problem: is it possible for the firmware version to be retrieved from an nvram variable?
I have to try to factory reset and reconfigure everything...
Stay tuned :)
 
Post the output of these commands first:
Code:
ls -l /opt/bin/opkg
/bin/nvram get buildno
/bin/uname -o
 
This return me nothing
How can that be? delete ver_num(){, and the ; } at the end. Because in bash we are not defining a function.

Then in the "$1" put what you want to be evaluated. Enter.
 
Ok, I have tried to reinstall scribe but the error is the same.
Tried to execute command line for line:

View attachment 49713
The addon has been downloaded correctly and converted to executable...
When I do "scribe install", after some second this appear:

View attachment 49714

and the addon deleted from the /jffs/scripts folder.

Code:
ver_num(){ echo "$1" | sed 's/v//; s/_/./' | awk -F. '{ printf("%d%02d%02d\n", $1, $2, $3); }'; }

This return me nothing

I think it's an nvram problem: is it possible for the firmware version to be retrieved from an nvram variable?
I have to try to factory reset and reconfigure everything...
Stay tuned :)

Please show the results of the commands @dave14305 requested. ver_num is a red herring here.

Code:
ls -l /opt/bin/opkg
/bin/nvram get buildno
/bin/uname -o
 
How can that be? delete ver_num(){, and the ; } at the end. Because in bash we are not defining a function.

Then in the "$1" put what you want to be evaluated. Enter.
I wonder ...
@elorimer, what do you get with:
Code:
ls -l /opt/bin/opkg
/bin/nvram get buildno
/bin/uname -o
 
Not sure it helps you or the OP, since I am still on 2.4.4, but:
Code:
elorimer@RT-AX88U:/tmp/home/root# ls -l /opt/bin/opkg
-rwxr-xr-x    1 elorimer root        860208 Jul 23  2022 /opt/bin/opkg
elorimer@RT-AX88U:/tmp/home/root# /bin/nvram get buildno
388.2
elorimer@RT-AX88U:/tmp/home/root# /bin/uname -o
ASUSWRT-Merlin
elorimer@RT-AX88U:/tmp/home/root# echo "388.2" | sed 's/v//; s/_/./' | awk -F. '{ printf("%d%02d%02d\n", $1, $2, $3)
; }';
3880200
 
This is the results:

Code:
ASUSWRT-Merlin RT-AC68U 386.10_0 Fri Mar 10 21:21:50 UTC 2023
****@RT-AC68U-B698:/tmp/home/root# ls -l /opt/bin/opkg
-rwxr-xr-x    1 ****  root        765092 Dec  4 09:20 /opt/bin/opkg
@RT-AC68U-B698:/tmp/home/root# /bin/nvram get buildno
-sh: /bin/nvram: not found
****@RT-AC68U-B698:/tmp/home/root# /bin/uname -o
ASUSWRT-Merlin

Something is wrong in my firmware: in the folder /bin the nvram file is not present.
Some time ago (when upgrade from 386.9 to 386.10) I had to delete many variables in the nvram to free up space, probably something too much was deleted :)

I have to try factory reset and reconfigure everything and see if the problem persists.
 
Something is wrong in my firmware: in the folder /bin the nvram file is not present.
Er, yeah. That's going to be a problem:
Rich (BB code):
# router details
readonly merlin="ASUSWRT-Merlin"
readonly fwreqd="380.68"
fwname="$( /bin/uname -o )"
readonly fwname
fwvers="$( /bin/nvram get buildno )"
readonly fwvers
model="$( /bin/nvram get odmpid )"
[ -z "$model" ] && model="$( /bin/nvram get productid )"
readonly model
readonly dcd_crash="AC86"
arch="$( /bin/uname -m )"
readonly arch

nvram is in /usr/sbin on the RT-AC68U.

EDIT: Looks like it's always been in that location, even going back to the 380.x releases. So I'm not sure how this ever worked before. Maybe the explicit /bin prefix was added to the installer script only recently.

Some time ago (when upgrade from 386.9 to 386.10) I had to delete many variables in the nvram to free up space, probably something too much was deleted :)
Deleting nvram variables would not have removed the nvram program from the firmware.
 
Last edited:
What if you just run nvram get buildno; which nvram

Code:
****@RT-AC68U-B698:/tmp/home/root# nvram get buildno; which nvram
386.10
/usr/sbin/nvram

Er, yeah. That's going to be a problem:
Rich (BB code):
# router details
readonly merlin="ASUSWRT-Merlin"
readonly fwreqd="380.68"
fwname="$( /bin/uname -o )"
readonly fwname
fwvers="$( /bin/nvram get buildno )"
readonly fwvers
model="$( /bin/nvram get odmpid )"
[ -z "$model" ] && model="$( /bin/nvram get productid )"
readonly model
readonly dcd_crash="AC86"
arch="$( /bin/uname -m )"
readonly arch

nvram is in /usr/sbin on the RT-AC68U.

EDIT: Looks like it's always been in that location, even going back to the 380.x releases. So I'm not sure how this ever worked before. Maybe the explicit /bin prefix was added to the installer script only recently.
Yes, nvram on my RT-AC68U is in usr/sbin/ folder.

at this point I ask @cmkelley if the installation problem is just this: it can not retrieves the version from nvram because on AC86U the path is different?



Edit: I've tried to modify manually the path from "/bin/nvram/" to "/usr/sbin/nvram" and all install correctly...
 
Last edited:
nvram is in /usr/sbin on the RT-AC68U.

EDIT: Looks like it's always been in that location, even going back to the 380.x releases. So I'm not sure how this ever worked before. Maybe the explicit /bin prefix was added to the installer script only recently.
This change from February is where the problem started:
 
Er, yeah. That's going to be a problem:
Rich (BB code):
# router details
readonly merlin="ASUSWRT-Merlin"
readonly fwreqd="380.68"
fwname="$( /bin/uname -o )"
readonly fwname
fwvers="$( /bin/nvram get buildno )"
readonly fwvers
model="$( /bin/nvram get odmpid )"
[ -z "$model" ] && model="$( /bin/nvram get productid )"
readonly model
readonly dcd_crash="AC86"
arch="$( /bin/uname -m )"
readonly arch

nvram is in /usr/sbin on the RT-AC68U.

EDIT: Looks like it's always been in that location, even going back to the 380.x releases. So I'm not sure how this ever worked before. Maybe the explicit /bin prefix was added to the installer script only recently.


Deleting nvram variables would not have removed the nvram program from the firmware.
LOL, fixed one problem, broke another. I put explicit paths to almost everything because of the issue with grep when it found entware's grep instead of the firmware's. So yeah, fairly recent addition. FWIW, the AC86U (at least to version 386.9) has nvram in /bin, I hardly expected The Spanish Inquisition for Asus to move core utilities around. I'll just strip the path from nvram, chance are low there will be an entware nvram.

I wonder what other unforeseen differences are lurking ...
 
After scribe problem, i uninstalled it and now I'm unable to reinstall.
The error is:

" ASUSWRT-Merlin version 380.68 or later with Entware is required! "

But FW version is 386.10 and I have also tried to reinstall Entware.
No success via amtm or command line.
What happened? :D
Sorry, I can't win lately. It's fixed now in 3.0_6
 

Latest threads

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top