Nrfutil offline install not works

Hello everyone

I need to install Nrfutil offline, computers may not have access to the internet, i follow this istruction and prepare the offline directori whit the comand "nrfutil prepare-offline off_line", after copied this dircetory and the nrfutil.exe in an other directory, and in windows command line lounch the follow command "nrfutil install device --from-offline ./off_line" and i have the follow answer:

Error: Failed to prepare registry from offline source

Caused by:
    0: Failed to initialize intermediate package index
    1: config value 'safe.directory' was not found; class=Config (7); code=NotFound (-3)

in the same machine, if i digit "nrfutil install device", the packet is retrieved from the internet and everything installs correctly and works.

nrfutil 7.7.1 (25b8911 2024-02-07) on Windows 10

I can't understand where I'm wrong ... thanks in advance for reply

Sam

Parents
  • Hi, 

    I cannot reproduce the issue. Maybe the download package is not downloaded completely or for other reasons, but good to know you fixed the issue by installing via the Internet. 

    Regards,
    Amanda H. 

  • Hi

    thanks for reply, but i not resolveed my problem ... I absolutely need to install ""nrfutil  device" on machines that do not have an internet connection

  • Hi, 

    Sam.Art said:
    I did it all over again to be safe, I inserted a USB stick (E:), downloaded “nrfutil.exe” ( link ) I went to the download folder and typed the command “nrfutil prepare-offline E:/nrfutil-offline”, this is the result

    Could you try another USB stick?

    Sam.Art said:
    nrfutil 7.7.1 (25b8911 2024-02-07)

    Your version is a bit old. You can upgrade the nrfutil by this command: nrfutil self-upgrade

    Then upgrade the installed commands: nrfutil upgrade

    Sam.Art said:

    I did another test, if I bring the 'nrfutil-offline' subfolder to the USB stick and try to install on the machine without connection (Windows 10) with 'nrfutil install device --from-offline E:/nrfutil-offline', I get:

    Error: Failed to bootstrap core functionality before executing command.

    When do you download the package? Could you try this zip file nrfutil-offline.7z? Unzip it to your USB stick.

    -Amanda H. 

  • HI
    I tried with at least 4 USB sticks, always the same.
    I re-downloaded “nrfutil.exe” (again), put it in the USB stick where I unzipped your compressed file and attempted to install it on a physical Win10 machine, even with internet access this is the result:

    Then again on this machine I recreated my 'offline' package and tried to install it from a USB stick, this is what I got:

    I'll try to update the version on my PC and redo the package, but at this point I have little hope, I'll let you know then, but I'm afraid we're missing something...

  • Hi, 

    Your nrfutil version is quite out of date. Please try running nrfutil self-upgrade and then running it again (for various reasons it is required to do it twice at this particular transtion point but it should be needed to do it twice in fufure.)

    If it doesn't recognised self-upgrade as a subcommand then please re-download nrfutil from the Nordic website https://www.nordicsemi.com/Products/Development-tools/nRF-Util

    Once you've done either of those then please try the prepare-offline command again.

    -Amanda H.

  • Hello

    I finally understood the mystery, is the twice upgrade ... now have the lastest version and all works, but I'm afraid I can't solve my problem, from what I understand so far I should do the 'nrfutil self-upgrade' command twice which requires internet connection on a machine that doesn't have it... I saw that it depends from the '.nrfuit' folder in the user directory, I have to do some tests then I'll let you know

  • Hi

    I think I have solved my problem, in practice I copy the .nrfutil folder into the Windows user folder (taken from a PC where the tools I need are already installed and functioning) and from the tests I have done this avoids the need to upgrade and installations with active internet connection.

    But is there an implementation, C or C++ or other languages, of nrfutil to include in your own executable?

Reply
  • Hi

    I think I have solved my problem, in practice I copy the .nrfutil folder into the Windows user folder (taken from a PC where the tools I need are already installed and functioning) and from the tests I have done this avoids the need to upgrade and installations with active internet connection.

    But is there an implementation, C or C++ or other languages, of nrfutil to include in your own executable?

Children
  • Unfortunately, there are no such resources and currently no plans to provide that.

  • last thing, where can I find the Nrfutil license? Are there any limitations for its redistribution within third-party software?

  • Hi, 

    Sorry for the late reply. You can view the license by the command: nrfutil device --license

    $ nrfutil device --license
    Displaying contents of /home/user/.nrfutil/share/nrfutil-device/LICENSE
    
    Copyright (c) 2022 Nordic Semiconductor ASA
    All rights reserved.
    
    SPDX-License-Identifier: LicenseRef-Nordic-1-Clause
    
    This software may only be used in binary form, and it must not be redistributed,
    reverse engineered, decompiled, modified and/or disassembled.
    Changing configuration files for the software is permitted.
    
    THIS SOFTWARE IS PROVIDED BY NORDIC SEMICONDUCTOR ASA "AS IS" AND ANY EXPRESS
    OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
    OF MERCHANTABILITY, NON-INFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE ARE
    DISCLAIMED. IN NO EVENT SHALL NORDIC SEMICONDUCTOR ASA OR CONTRIBUTORS BE
    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
    GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
    OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    
    This software includes components from other Nordic Semiconductor projects whose licenses differ from that of nrfutil itself; their individual licenses are included below.
    
    (snip)
    
    $ nrfutil --version
    nrfutil 7.13.0 (8289424 2024-07-01)
    commit-hash: 82894242d19ff24a1541712312b3ea3af0ca8f85
    commit-date: 2024-07-01
    host: x86_64-unknown-linux-gnu
    build-timestamp: 2024-07-01T07:32:31.582129656Z
    classification: nrf-external

    Also here https://github.com/NordicSemiconductor/pc-nrfutil/blob/master/LICENSE 

    The answer based on the licensing terms is that it is not allowed to redistribute it. You could ask your user to download as this example instead of redistributing. 

    -Amanda H.

  • Many thanks, for license clarification ... but in pratically update the fw in simple and massive mode is impossible: nrfutil is not redistribuible and there aren't a workaround in c or c++ or other languages.

Related