Installing wine on Jetson Nano

This is very old JetPack release, and since I upgraded my Jetson Nano to 4.5.1, I cannot try to reproduce the issue in 4.4 because my Jetson Nano is no longer compatible with JetPack releases older than 4.5.

how can I upgrade the jetpack only using the nvidia repos ?

I’m not sure this is possible since 4.5 does some hardware update so you will not be able to go back to 4.4. Besides, even if it is possible, it may carry over all issues you have, and will not answer the question if there is an issue on fresh installation of JetPack 4.5.1.

What this means, if for example you try fresh 4.5.1 JetPack installation on another SD card, your SD card with 4.4 will no longer work with upgraded Jetson Nano. So this makes sense only if you want to migrate to 4.5.1. But since JetPack 4.6 may be released soon (according to VisionWorks will be retired after JetPack 4.6.x, JetPack 4.6 is targeted for Q2 2021), migrating to 4.5.1 probably not worth the effort at this point (unless you really need it now), and it is better to wait for 4.6.

So,4.4 might be upgraded to 4.6 using the apt system ? Anyway,I’m trying to upgrade 4.4 to 4.5.1 using the SDK manager. There is no way that it recognizes my board. I’ve removed the jumper 48 and I have attached the usb cable from the host pc to the nano and it didn’t work. I’ve covered the jumper 48 and I’ve attached the power cable to the nano and also the usb cable to the micro usb port of the nano but again nothing.

I suggest creating new topic about this, since JetPack upgrade is not directly related to running Wine on Jetson Nano.

I never tried to upgrade JetPack using apt system, so I do not know. But as I have said, even if there is a way, it is very likely to carry over issues with package management system.

I personally prefer to upgrade JetPack on Jetson Nano this way: I backup my home directory and config files, install from scratch new JetPack on my SD card, restore my home directory, install all packages I need and pick which config files to restore in /etc, carefully checking with diff what I’m going to overwrite (blindly restoring all config files from the old system to a new system is a bad idea).

You may install nano editor with:

sudo apt update
sudo apt install nano

and retry.

1 Like

You can try the following command, it will perform necessary changes in /etc/apt/sources.list automatically:

sudo perl -pin -e "s/#* *deb-src/deb-src/" /etc/apt/sources.list && sudo apt update








Seems you have a mix of architectures in your apt sources repositories. You may use arm64 only on Jetson. Other binaries wouldn’t run (and in no way efficiently). Maybe reflashing a fresh version may save hours of debugging.

Is there simpler way, maybe just to clean it out? I hate to reflashing everything again. Had they say they will no longer support Nano I wouldn’t have spend $500 to buy 3 kits and some other stuff just to try to get a dead end kit working.

ok man. thanks to the help of @Honey_Patouceul,I have upgraded the jetpack. (And I have also removed the # from the deb-src). The version that I have now is 4.5.1. I have tried again to install your files,but the result is the same as before :

root@zi-desktop:/home/zi/qemu# sudo apt -y install ./libkrb5support0_1.17-6ubuntu4.1_arm64.deb

Reading package lists… Done
Building dependency tree
Reading state information… Done
Note, selecting ‘libkrb5support0’ instead of ‘./libkrb5support0_1.17-6ubuntu4.1_arm64.deb’
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
libgtk-3-0 : Depends: libcups2 (>= 1.6.2) but it is not going to be installed
Depends: librest-0.7-0 (>= 0.7) but it is not going to be installed
Recommends: libgtk-3-bin
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

what’s the name of the desktop manager that you were using when you have written the tutorial ?

this command :

sudo perl -pin -e "s/#* *deb-src/deb-src/" /etc/apt/sources.list && apt update

produces this situation on my side :

W: Target Sources (universe/source/Sources) is configured multiple times in /etc/apt/sources.list:4 and /etc/apt/sources.list:15
W: Target Sources (multiverse/source/Sources) is configured multiple times in /etc/apt/sources.list:4 and /etc/apt/sources.list:25
W: Skipping acquire of configured file 'stable/source/Sources' as repository 'https://download.docker.com/linux/ubuntu bionic InRelease' does not seem to provide it (sources.list entry misspelt?)
W: Target Sources (universe/source/Sources) is configured multiple times in /etc/apt/sources.list:9 and /etc/apt/sources.list:17
W: Target Sources (multiverse/source/Sources) is configured multiple times in /etc/apt/sources.list:9 and /etc/apt/sources.list:27
W: Target Sources (universe/source/Sources) is configured multiple times in /etc/apt/sources.list:45 and /etc/apt/sources.list:47
W: Target Sources (multiverse/source/Sources) is configured multiple times in /etc/apt/sources.list:45 and /etc/apt/sources.list:49
W: Target Sources (universe/source/Sources) is configured multiple times in /etc/apt/sources.list:4 and /etc/apt/sources.list:15
W: Target Sources (multiverse/source/Sources) is configured multiple times in /etc/apt/sources.list:4 and /etc/apt/sources.list:25
W: Target Sources (universe/source/Sources) is configured multiple times in /etc/apt/sources.list:9 and /etc/apt/sources.list:17
W: Target Sources (multiverse/source/Sources) is configured multiple times in /etc/apt/sources.list:9 and /etc/apt/sources.list:27
W: Target Sources (universe/source/Sources) is configured multiple times in /etc/apt/sources.list:45 and /etc/apt/sources.list:47
W: Target Sources (multiverse/source/Sources) is configured multiple times in /etc/apt/sources.list:45 and /etc/apt/sources.list:49

this is my /etc/apt/sources.list file :

deb Index of /ubuntu-ports bionic main restricted
deb-src Index of /ubuntu-ports bionic universe restricted multiverse main

deb Index of /ubuntu-ports bionic-updates main restricted
deb-src Index of /ubuntu-ports bionic-updates universe restricted multiverse main

deb Index of /ubuntu-ports bionic universe
deb-src Index of /ubuntu-ports bionic universe
deb Index of /ubuntu-ports bionic-updates universe
deb-src Index of /ubuntu-ports bionic-updates universe

deb Index of /ubuntu-ports bionic multiverse
deb-src Index of /ubuntu-ports bionic multiverse
deb Index of /ubuntu-ports bionic-updates multiverse
deb-src Index of /ubuntu-ports bionic-updates multiverse

deb Index of /ubuntu-ports bionic-backports main restricted universe multiverse
deb-src Index of /ubuntu-ports bionic-backports main restricted universe multiverse

deb http://archive.canonical.com/ubuntu bionic partner
deb-src http://archive.canonical.com/ubuntu bionic partner

deb Index of /ubuntu-ports bionic-security main restricted
deb-src Index of /ubuntu-ports bionic-security universe restricted multiverse main
deb Index of /ubuntu-ports bionic-security universe
deb-src Index of /ubuntu-ports bionic-security universe
deb Index of /ubuntu-ports bionic-security multiverse
deb-src Index of /ubuntu-ports bionic-security multiverse

#deb [arch=armhf] https://download.docker.com/linux/ubuntu bionic stable
#deb-src [arch=armhf] https://download.docker.com/linux/ubuntu bionic stable

&& mk-sbuild --arch amd64 focal \

I: Extracting libgcc1…

I: Running command: chroot /var/lib/schroot/chroots/focal-amd64 /debootstrap/debootstrap --second-stage
chroot: failed to run command ‘/debootstrap/debootstrap’: Exec format error

Here is my /etc/apt/sources.list, backup yours somewhere and create new one with the following content, then try sudo apt update and check if it finishes without errors:

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://ports.ubuntu.com/ubuntu-ports/ bionic main restricted
deb-src http://ports.ubuntu.com/ubuntu-ports/ bionic main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://ports.ubuntu.com/ubuntu-ports/ bionic-updates main restricted
deb-src http://ports.ubuntu.com/ubuntu-ports/ bionic-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://ports.ubuntu.com/ubuntu-ports/ bionic universe
deb-src http://ports.ubuntu.com/ubuntu-ports/ bionic universe
deb http://ports.ubuntu.com/ubuntu-ports/ bionic-updates universe
deb-src http://ports.ubuntu.com/ubuntu-ports/ bionic-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://ports.ubuntu.com/ubuntu-ports/ bionic multiverse
deb-src http://ports.ubuntu.com/ubuntu-ports/ bionic multiverse
deb http://ports.ubuntu.com/ubuntu-ports/ bionic-updates multiverse
deb-src http://ports.ubuntu.com/ubuntu-ports/ bionic-updates multiverse

## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://ports.ubuntu.com/ubuntu-ports/ bionic-backports main restricted universe multiverse
deb-src http://ports.ubuntu.com/ubuntu-ports/ bionic-backports main restricted universe multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
deb http://archive.canonical.com/ubuntu bionic partner
deb-src http://archive.canonical.com/ubuntu bionic partner

deb http://ports.ubuntu.com/ubuntu-ports/ bionic-security main restricted
deb-src http://ports.ubuntu.com/ubuntu-ports/ bionic-security main restricted
deb http://ports.ubuntu.com/ubuntu-ports/ bionic-security universe
deb-src http://ports.ubuntu.com/ubuntu-ports/ bionic-security universe
deb http://ports.ubuntu.com/ubuntu-ports/ bionic-security multiverse
deb-src http://ports.ubuntu.com/ubuntu-ports/ bionic-security multiverse

To backup old and create new /etc/apt/sources.list, and then copy and paste above content, you may use the following commands, then save with Ctrl+O and exit from the editor with Ctrl+X:

sudo mv /etc/apt/sources.list /etc/apt/sources.list.old
sudo nano /etc/apt/sources.list
sudo apt update

If you still have issues, you can also check what files you have in /etc/apt/sources.list.d/ directory :

ls -tlhr /etc/apt/sources.list.d/

If you are unsure which ones are causing issues, please post the output of above command here.

As I have said, upgrade without fresh install is unlikely to help, and will probably carry over the issues with packages. Something is wrong with your packages, and since I have similar packages installed and do not have the issue, it is hard to guess what is wrong. If you would like try to solve it on existing system, I suggest to use aptitude and dpkg directly to install:

sudo apt install aptitude
cd /tmp/
wget -c http://ports.ubuntu.com/pool/main/k/krb5/libkrb5support0_1.17-6ubuntu4.1_arm64.deb http://ports.ubuntu.com/pool/main/k/krb5/libkrb5-3_1.17-6ubuntu4.1_arm64.deb http://ports.ubuntu.com/pool/main/k/krb5/libgssapi-krb5-2_1.17-6ubuntu4.1_arm64.deb http://ports.ubuntu.com/pool/main/libs/libssh/libssh-4_0.9.3-2ubuntu2.1_arm64.deb http://ports.ubuntu.com/pool/main/libs/libssh/libssh-dev_0.9.3-2ubuntu2.1_arm64.deb
sudo dpkg -i --force-all ./libkrb5support0_1.17-6ubuntu4.1_arm64.deb ./libkrb5-3_1.17-6ubuntu4.1_arm64.deb ./libgssapi-krb5-2_1.17-6ubuntu4.1_arm64.deb ./libssh-4_0.9.3-2ubuntu2.1_arm64.deb ./libssh-dev_0.9.3-2ubuntu2.1_arm64.deb
sudo aptitude -f install

If there are conflicts, aptitude will offer a solution, and will print what packages it wants to install or remove to resolve, and ask if you “accept this solution?”. If you answer n, it will try to offer different solution, if you answer n again, it may find yet another solution. If you answer q, it will exit without changing anything. If you still have conflicts and are unsure if you should accept the solution offered by aptitutde, just copy and paste aptitude output (prefarably to https://pastebin.com/ and give a link, to keep the forum thread cleaner). Alternatively, you can try sudo aptitude --safe-resolver -f install, this may find a different solution. If you read carefully the solution offered by aptitude, what it is about to remove and install and decide it is a good solution, you can type Y to accept it.

Please note that aptitude can offer to remove unused packages in addition to what is actually necessary if sudo apt autoremove returns non-empty list, if you are using some “unused” packages, you need to mark them manually installed by running sudo apt install [list of packages you would like not to be removed by sudo apt autoremove].

Since compiling qemu from scratch seems to be too difficult for many users, here is precompiled deb, to install it, first remove existing qemu packages if they are installed, and then install new version of qemu (during installation it will report its version as 1:2.11+dfsg-1ubuntu7.36-1-1 for compatibility reasons but it is actually 6.0.0):

cd /tmp/ \
&& wget -c http://dragon.studio/2021/05/qemu-user-static_6.0.0_arm.deb http://dragon.studio/2021/05/qemu-binfmt-conf.sh http://dragon.studio/2021/05/qemu-debootstrap \
&& sudo chmod +x qemu-binfmt-conf.sh qemu-debootstrap \
&& sudo cp -a qemu-binfmt-conf.sh qemu-debootstrap /usr/local/bin/ \
&& sudo apt-get remove \*qemu\* \
&& sudo apt install ./qemu-user-static_6.0.0_arm.deb
&& sudo apt -y install binfmt-support debootstrap binutils ubuntu-dev-tools \
&& cd /usr/bin/ \
&& sudo rm -f qemu-*-static \
&& for exe in qemu-*; do sudo ln "$exe" "$exe-static"; done

If you choose to install precompiled deb, you do not need to mess with /etc/apt/sources.list and do not need build dependencies such as newer libssh, and getting apt build-dep to work will not be necessary too.

To register binfmt run this:

sudo qemu-binfmt-conf.sh --qemu-path="/usr/bin" --qemu-suffix="-static"

Err:10 https://apt.kitware.com/ubuntu bionic InRelease
The following signatures couldn’t be verified because the public key is not av ailable: NO_PUBKEY DE19EB17684BA42D

W: GPG error: https://apt.kitware.com/ubuntu bionic InRelease: The following sig natures couldn’t be verified because the public key is not available: NO_PUBKEY DE19EB17684BA42D
E: The repository ‘https://apt.kitware.com/ubuntu bionic InRelease’ is not signe d.
N: Updating from such a repository can’t be done securely, and is therefore disa bled by default.
N: See apt-secure(8) manpage for repository creation and user configuration deta ils.

root@zi-desktop:/etc/apt# sudo apt-add-repository ‘deb https://apt.kitware.com/ubuntu/ bionic-rc main’

Get:1 file:/var/cuda-repo-10-2-local-10.2.89-cross-aarch64 InRelease
Ign:1 file:/var/cuda-repo-10-2-local-10.2.89-cross-aarch64 InRelease
Get:2 file:/var/cuda-repo-10-2-local-10.2.89-cross-aarch64 Release [574 B]
Get:2 file:/var/cuda-repo-10-2-local-10.2.89-cross-aarch64 Release [574 B]
Hit:3 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu bionic InRelease
Hit:4 http://archive.canonical.com/ubuntu bionic InRelease
Hit:5 https://repo.download.nvidia.com/jetson/common r32.5 InRelease
Hit:6 http://ports.ubuntu.com/ubuntu-ports bionic InRelease
Hit:7 https://repo.download.nvidia.com/jetson/t210 r32.5 InRelease
Hit:8 http://ports.ubuntu.com/ubuntu-ports bionic-updates InRelease
Hit:10 http://ports.ubuntu.com/ubuntu-ports bionic-backports InRelease
Hit:11 http://ports.ubuntu.com/ubuntu-ports bionic-security InRelease
Get:13 https://apt.kitware.com/ubuntu bionic-rc InRelease [6.813 B]
Get:12 https://apt.kitware.com/ubuntu bionic InRelease [6.801 B]
Err:13 https://apt.kitware.com/ubuntu bionic-rc InRelease
The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY DE19EB17684BA42D
Err:12 https://apt.kitware.com/ubuntu bionic InRelease
The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY DE19EB17684BA42D
Reading package lists… Done
W: GPG error: https://apt.kitware.com/ubuntu bionic-rc InRelease: The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY DE19EB17684BA42D
E: The repository ‘https://apt.kitware.com/ubuntu bionic-rc InRelease’ is not signed.
N: Updating from such a repository can’t be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
W: GPG error: https://apt.kitware.com/ubuntu bionic InRelease: The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY DE19EB17684BA42D
E: The repository ‘https://apt.kitware.com/ubuntu bionic InRelease’ is not signed.
N: Updating from such a repository can’t be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

root@zi-desktop:/etc/apt# sudo apt-get install kitware-archive-keyring
Reading package lists… Done
Building dependency tree
Reading state information… Done
E: Unable to locate package kitware-archive-keyring

You can ignore those errors, they are harmless (apt update should have finished updating package lists from all other repositories before these errors). If you want to get rid of the errors, remove “https://apt.kitware.com” lines from /etc/apt/sources.list and run apt update again.

I think I manually added this repository, but this was very long time ago, so I forgot about it (it contains newer version of cmake I think, you most likely do not need it). Or if you want to keep it for some reason, just follow the instructions at https://apt.kitware.com/ to add the GPG key (but based on the fact “deb” line is commented out, their repository probably does not provide arm packages, so it is only useful if you want to compile it yourself). But this is not relevant for compiling qemu, so I edited my post to remove https://apt.kitware.com" lines.

By the way, I have updated my tutorial to use precompiled qemu package - as I already mentioned in my previous post, if messing with /etc/apt/sources.list feels difficult, just use the precompiled package I have provided. It is also much faster, since you will not have to build qemu from scratch which takes a lot of time with Nano’s CPU.