SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
The Polish finance ministry publishes an application for sending tax declarations over the Internet (called "e-Deklaracje Desktop"). It's supposed to work on Windows, Mac and Linux. It requires Adobe Air and Adobe Reader.
I downloaded from get.adobe.com/air the last version of Adobe Air that was released for Linux, but the graphical installer failed with an error:
Quote:
Adobe AIR could not be installed because this is not a supported Linux distribution. Only RPM- and Debian-based Linux distributions are supported.
The rpm tool is present in Slackware, but Adobe Air uses commands such as "rpm -q rpm" which fail on Slackware (and on any OS that uses something other than rpm or dpkg to install most packages in the system). Adobe Air is not open source and the installer code is in a 20MB binary .so file, but using strace one can find out what commands it runs on the system.
I had to create a simple wrapper so that Adobe Air can use rpm on Slackware.
#!/bin/sh
if [ "$1" = "-q" -a "$2" = "rpm" ]
then
echo rpm-4.12.0.1-1.i586
exit 0
elif [ "$1" = "--qf" -a "$2" = '%{VERSION}' -a "$3" = "-q" -a "$4" = "rpm" ]
then
echo 4.12.0.1
exit 0
elif [ "$1" = "-U" ]
then
exec /bin/rpm --nodeps "$@"
else
exec /bin/rpm "$@"
fi
It can be used like this:
# airwrap ./AdobeAIRInstaller.bin
# airwrap "/opt/Adobe AIR/Versions/1.0/Adobe AIR Application Installer"
The first command starts the installation of the Adobe Air environment (you can download the installer from the Adobe website). The second command starts the installation of an application from an .air file.
Here are some screenshots in my local language from the installation and running of Adobe Air and an Air application on Slackware 14.2 32-bit:
A Slackware package, airwrap.txz, can be downloaded from dropbox here: airwrap.txz.
Searching this forum I haven't found anyone using a similar method to run Adobe Air on Slackware, so perhaps this post will be useful. The same method could also work on other distributions such as Arch with a little modification.
Dugan's solution is probably best because you will get a more recent version of Air. Failing that, I still don't think installing an rpm on Slackware directly is a good idea and can be avoided. Just extract the contents of the archive instead.
Switch to an empty working directory and fetch the binary.
You can move the files under the build directory into place or create a .SlackBuild to automate all of this and allow you to easily uninstall at a later date.
[EDIT]: I see the Slackbuild for Reader still uses the tar.bz2, even though the bin is 13.5 Mb smaller. That is a lot of wasted bandwidth by all the people who have used this SlackBuild over the years. Oh well, I tried…
Quote:
Originally Posted by ruario
I did once suggest this […] to the maintainer for the SBo SlackBuild but never heard back (although the Arch PKGBUILD maintainer did take my suggestion).
Last edited by ruario; 01-04-2019 at 06:32 AM.
Reason: Added self-quote
Adobe Air doesn't work the same way as Adobe Reader. It requires either rpm or dpkg to install .air applications on the system. So if you extract and install the files using your method, you won't be able to run "/opt/Adobe AIR/Versions/1.0/Adobe AIR Application Installer" because it fails to detect either rpm or dpkg (possibly you can use "airwrap" from the first post to run it but I haven't tested with this kind of installation).
As for Wine I associate it with glitches and problems in various applications so I wouldn't be happy using it (or recommending it) for a tax declarations app for example (which works fine on supported Linux distributions).
Adobe Air doesn't work the same way as Adobe Reader. It requires either rpm or dpkg to install .air applications on the system. So if you extract and install the files using your method, you won't be able to run "/opt/Adobe AIR/Versions/1.0/Adobe AIR Application Installer" because it fails to detect either rpm or dpkg (possibly you can use "airwrap" from the first post to run it but I haven't tested with this kind of installation).
Then I would suggest you look at tweaking your “airwrap” with a system that does not call the real rpm but rather a similarly named shell script that extracts, converts and installs them with native tools. You don't want to be installing rpms if you can avoid it. AFAIK rpm is provided to allow you to query rpm meta-data and assist with repacking. You are not supposed to use it to install anything but of course it is your system and your choice.
P.S. Please don't take my criticism the wrong way. Your idea and method is clever, I just think that avoiding rpm altogether should be the end goal.
All criticism is fine. What you're suggesting is more ambitious but requires more work. It's possible that calls to "rpm -q <app_name>" and "rpm -e <app_name>" (if made by Adobe Air) would need to be handled specially, if Air applications are not managed by rpm on the system. Also updating an Air application to a new version would need to be tested.
If rpm in Slackware is only meant for querying package files then why does the rpm description in Slackware even suggest using --force and --nodeps options
Code:
rpm: rpm (RPM package format tool)
rpm:
rpm: RPM is a tool from Red Hat Software used to install and remove
rpm: packages in the .rpm format. When installing RPM packages on
rpm: Slackware, you may need to use the --nodeps and --force options.
rpm: Before installing any binary package, it's wise to examine it to
rpm: see what it's going to do, and if it will overwrite any files. You
rpm: can use rpm2tgz to convert .rpm packages to .tgz packages so you
rpm: can look them over.
In reading the description it is clear that Pat was recommending looking at the binary file first! He then goes on further to recommend that a proper Slackware package be created. There are many recent threads on this forum about using rpm2tgz and the errors it will create and the successes, you should review them. Since I have used rpm and rpm2tgz to install Brave and originally Palemoon, I'm very familiar with these tools and find I totally agree with ruario, don't use them if you want a working Slackware system.
Sometimes programs come with their own installers/updaters and using them is the only easy way. Sometimes it's similar but the programs rely on rpm or dpkg instead. Using these tools has this advantage over custom installers that you can see the list of installed files and the installation scripts.
I agree with the Slackware advice to check the files and scripts when installing an rpm. In the case of Adobe Air and Air applications all files are installed under /opt/<dir>. The installation scripts mainly create application menu shortcuts, desktop sbortcuts and update the MIME type and file extension database.
I don't believe that using rpm or rpm2tgz safely will make a Slackware system broken.
Another Slackware user from Poland here. It's funny but as soon as I have read the subject I already knew what problem it's going to describe. I've also been using e-deklaracje app for a few years but I had a different method for starting it on Slackware. I tried it now again and it still seems to work well. I first download 'Adobe AIR 2.6 SDK Linux (35.8 MB)' from https://helpx.adobe.com/air/kb/archi...k-version.html, unzip e-deklaracjedesktop.air to ../app/ext directory and run it like that:
Application starts, I didn't try to submit the tax declaration though. I remember that a couple of years ago I asked people on #slackware for help and someone was so kind that he even provided a tarball with some binaries. It was the very first time I realized that free open source software can have better support than commercial software.
Anyway, I don't use e-deklaracje anymore these days as they started to provide pre-filled reports and you only need a web browser to access them. It was a bad idea to use Adobe Air in the first place, Adobe stopped supporting Linux in 2011.
In reading the description it is clear that Pat was recommending looking at the binary file first! He then goes on further to recommend that a proper Slackware package be created. There are many recent threads on this forum about using rpm2tgz and the errors it will create and the successes, you should review them. Since I have used rpm and rpm2tgz to install Brave and originally Palemoon, I'm very familiar with these tools and find I totally agree with ruario, don't use them if you want a working Slackware system.
Instead of modifying one's real system one could consider using a throw-away virtual machine for that kind of 'tests'. I definitely would.
Yes, it is another method which could be used, I've seen something similar when looking at past threads about Adobe Air. I can understand why some people will prefer this method, but it's hard to tell if Air applications will always work correctly when started this way (using the SDK instead of the runtime and using "adl").
Quote:
Originally Posted by average_user
Anyway, I don't use e-deklaracje anymore these days as they started to provide pre-filled reports and you only need a web browser to access them. It was a bad idea to use Adobe Air in the first place, Adobe stopped supporting Linux in 2011.
In my case for example I need to declare extra income in the PIT-36 form, it's not covered by the pre-filled reports.
I can sort of understand why they chose Adobe Reader for the interactive forms and why Adobe Air to integrate with Reader but as you say it's not a good idea if they want to support Linux.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.