How to convert a .deb or a .rpm into a pkg.tar.zst

I’m trying to figure out how to get a tablet driver, specifically a veikk one, to work on my steam deck, which I haven’t been able to find a support forum for yet, but I do know SteamOS is based off of arch, it also uses pkg.tar.zst for installing things, and I’m unable to use the command “sudo pacman -S” for anything, as some signatures are corrupt, and refuse to fix themself no matter how hard I try. The only option I have seen is for converting a .deb, know as debtap, but that seems to be out of the question due to what it requires (SteamOS doesn’t come with it’s dependencies at all, and since I can’t install them via Konsole, I’m kinda boned). The only other thing I have tried to get the driver to install is to run the .exe version for windows through steam using proton as a compatibility, in which the drivers install, but I can’t run them, even with the use of proton. If any one of you could help me that would be appreciated, and if not I shall continue my search. (Sorry if I mis-tagged the post by the way, I’m rather new to most things linux besides Unbuntu (I used it for a day) and SteamOS (Which I’ve been using as my main computer for a little over two/three weeks now))

Well SteamOS on the Steamdeck is more or less a frozen Archlinux copy from 2022-Jan-27 23:10. deptab is an AUR package and Valve is not supporting any AUR stuff as of now. There is some interesting post at the ArchWiki. You may also check this repo for more source code stuff: evlaV / jupiter-PKGBUILD · GitLab. Also normally the system is locked to prevent additional software installations: Unlock Steam Deck Also you can use Nix to add packages as needed: Steamdeck as a Desktop

2 Likes

Never knew SteamOS forces read only (which kinda explains why installing my driver through the .exe using proton showed an error for them being read only files, which I easily fixed by making the executable), and although you didn’t answer my main question, I’d still like to thank you for solving a bigger question I have had yet to find an answer for, so thank you

Why you want to install a Windows driver via an exe file on a Linux read-only system? Which driver do you miss anyway?

I was trying to install the driver for my graphics tablet, and one of the files I downloaded as an attempt was the windows .exe to try and execute it with proton, the compatibility thing the steamdeck comes with to run the amount of games it does, as it allows linux to run one of those files, most of the time at least. You can use it to install other things as well, like the epic games launcher

SteamDeck more or less an outdated Arch based system which is used to power the SteamUI and the Steam Store so you as customer can buy and play Games you may find in the Store owned by Valve. Proton is more or less a compatibility layer so more Games not ported yet to Linux so more popular games only developed for Windows may also run via translation technology on the Linux based system too.

The SteamDeck may also been used as a normal PC based on a Linux OS. However due to the outdated nature of the given packages the AUR is not supported and so the PKGBUILDs and other scripts to install packages or software maintained by the user community is not working as it is designed for Arch Linux and not the frozen copy Valve uses to create the SteamOS 3.

Manjaro on the other hand is also based on Arch, also has its own package repositories, similar as the SteamOS, however we sync more often from Arch and therefore may have the same updated packages, at least in our unstable branch. SteamOS on the other hand did the last sync more than a year ago.

So when you enable write mode you also been able to change files of the given OS or add new files to it. However it really depends if you find the needed drivers as source to compile the driver for the given kernel version used by SteamOS. For any kernel driver you also may need to install the matching headers package, which provides the needed Source files needed to compile the Linux Kernel driver for your device, the graphics tablet. Most likely the Windows driver won’t work via Proton in that case as it can’t communicate with the Linux kernel in such a low level.

Which graphical tablet do you try to get Linux support anyway? Does that manufacturer even provide any sort of Linux drivers?

A veikk Volia L, or something close to that, and yes. It specificly supports Windows, MacOS, linux distros that use .rpm, and linux distros that use .deb, although I belive the linux ones are more recent, as I have seen some people say that veikk didn’t support linux a while back ago, it also may explain why they have no video showing you how to install it like they do for windows and macOS, which seem to have a much easier time installing (especially windows).

maybe post the link to the drivers download page, then it might be easier for us to give you some further tips on this matter.

Seems on the Veikk homepage you find the 1.2.3-1 driver. The AUR offers an older one: AUR (en) - veikk-tablet-bin

Anyhow, the content of the archives get simply copied to the root directory like this:

  cp -r "${srcdir}/etc" "${pkgdir}/etc"
  cp -r "${srcdir}/usr" "${pkgdir}/usr"
  cp -r "${srcdir}/lib" "${pkgdir}/usr"

In that case it won’t matter if you use deb or the rpm archive to get to its content. debtap could been used when having the needed dependencies installed. If you however don’t care that a package manager should keep track of the files you could also simply extract the archives as shown to the root folder to have the driver installed. In the deb archive you find the content in the data.tar.xz archive under the dot-folder. It could be done similar as this AUR package: PKGBUILD - aur.git - AUR Package Repositories

    wget https://veikk.com/image/catalog/Software/new/vktablet-1.2.3-1-x86_64.deb
    mkdir -p /tmp/vktablet-1.2.3-1
    bsdtar -xf vktablet-1.2.3-1-x86_64.deb -C /tmp/vktablet-1.2.3-1

    bsdtar -xf /tmp/vktablet-1.2.3-1/data.tar.xz" -C /

I’m going to be honest, I’m mildly confused by this. But I assume I can run one of the higher three to install it with the package you provided (The 1.0.3_3 one provided on the Arch website)? Sorry if this seems like a stupid question by the way, I’m not very familiar with most the stuff the different linux distros use

There is a script called debtap you can download, but I doubt it is what you need for this.

Or you could learn how to convert a deb package to Manjaro

1 Like