Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AppImage build #501

Closed
AsciiWolf opened this issue Sep 29, 2019 · 19 comments
Closed

AppImage build #501

AsciiWolf opened this issue Sep 29, 2019 · 19 comments
Labels

Comments

@AsciiWolf
Copy link

Please, consider distributing VeraCrypt for Linux as AppImage.

@alt3r-3go
Copy link
Contributor

alt3r-3go commented Sep 29, 2019

There are also #187 and #162, along the same lines. I've recently looked into the Linux installer while dealing with #171 and I think there's really a need to come up with something here, as that custom installer IMHO makes no sense these days and a standardized one would be much more appropriate. I personally plan to look into this at some point unless someone beats me to it.

@ElMostafaIdrassi
Copy link
Contributor

Starting 1.24, Debian and RPM packages are available. See #511 and #512. This is a step forward into creating AppImages as it is only a matter of writing a .yml file. Will look into it in the near future hopefully.

@prog-amateur
Copy link

Starting 1.24, Debian and RPM packages are available. See #511 and #512. This is a step forward into creating AppImages as it is only a matter of writing a .yml file. Will look into it in the near future hopefully.

Hello, I am not at all a developer, but I really would like to get Veracrypt as an AppImage (portable version for Linux). After reading and followed the step-by-step AppImage procedure, I have encountered an issue (procedure is successful but Veracrypt-x86_64.AppImage doesn't launch itself).

So, I just would like to share my question to AppImage team, because I am sure we are close to the solution, maybe you can also help to find it :
AppImage/AppImageKit#1004

In any case, thank you so much for your kind work with Veracrypt, an excellent app !

@prog-amateur
Copy link

Hello, I have found a workaround to make an AppImage !!!
I hope somebody here will read and adjust it to correct any error. Just for information, I am on Debian 10, and I do this process under the ~/Document folder.

Please find bellow how I have proceed to make it possible :


- # 1. First, we need to make a directory called the AppDir (here we call it 'veracrypt.AppDir')  : 

cd ~/Documents
mkdir -p veracrypt/veracrypt.AppDir


- # 2. Then, we have to download the generic '.tar.bz2' linux Veracrypt installer : 

wget -c https://launchpad.net/veracrypt/trunk/1.24-hotfix1/+download/veracrypt-1.24-Hotfix1-setup.tar.bz2
tar -xf veracrypt-1.24-Hotfix1-setup.tar.bz2 -C veracrypt_archive/
cd veracrypt_archive


- # 3. Then we have to : 
#- launch the installer 
#- accept the license, 
#- select extract 
#- and go to '/tmp' folder in order to extract the 'tar.gz' content into 'veracrypt.AppDir' : 

./veracrypt-1.24-Hotfix1-setup-gui-x64 
cd /tmp
tar -xf veracrypt_1.24-Hotfix1_amd64.tar.gz -C ~/Documents/veracrypt/veracrypt.AppDir/


- # 4. Copy the '/usr/share/applications/veracrypt.desktop' file into 'veracrypt.AppDir' : 
cd ~/Documents/veracrypt/veracrypt.AppDir/
cp ./usr/share/pixmaps/veracrypt.xpm .
cp ./usr/share/applications/veracrypt.desktop .


- # 5. Edit the veracrypt.desktop file as below to avoid any error message : 
nano veracrypt.desktop 

# veracrypt.desktop content shall be :
[Desktop Entry]
Encoding=UTF-8
Version=1.0
Name=VeraCrypt
GenericName=VeraCrypt
Comment=VeraCrypt
Exec=veracrypt
Icon=veracrypt
Terminal=false
Type=Application
Categories=Utility;


- # 6. Make the AppRun executable (and rename 'AppRun-x86_64' into 'AppRun' otherwise an error message happens) : 

wget -c https://github.com/AppImage/AppImageKit/releases/download/12/AppRun-x86_64
mv AppRun-x86_64 AppRun
chmod a+x AppRun


- # 7. Finally, we can package the whole 'veracrypt.AppDir' folder as an AppImage : 

cd ..
wget -c https://github.com/AppImage/AppImageKit/releases/download/12/appimagetool-x86_64.AppImage
chmod a+x appimagetool-x86_64.AppImage
./appimagetool-x86_64.AppImage veracrypt.AppDir ./Veracrypt-x86_64.AppImage

You can find your Veracrypt-x86_64.AppImage under ~/Documents/veracrypt/, already executable. You just need to double click or if you want from a terminal, launch ./Veracrypt-x86_64.AppImage under ~/Documents/veracrypt/.

I don't know why, but the AppImage is not launchable from the USB drive, so you have to move it in a folder znd make it executable.

That's all folks. Now, please check by yourself and make it possible to the communauty, thank you very much !

@idrassi
Copy link
Member

idrassi commented Nov 15, 2019

@prog-amateur Thank you very much for taking the time to provide these clear steps for creating an AppImage from official VeraCrypt binaires.
I will test it on my side and I will probably provide an official AppImage based on your work.

@prog-amateur
Copy link

Avec plaisir. That's a very good news if you succeed to reproduce and publish it, thank you so much for your kind help !

@alt3r-3go
Copy link
Contributor

@idrassi, have you had a chance tolook further into this? If not I'm thinking of giving it a try sometime during teh upcoming weekend.

@stale
Copy link

stale bot commented Dec 30, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix label Dec 30, 2020
@stale
Copy link

stale bot commented Jan 6, 2021

This issue has been automatically closed because it has not had recent activity. This probably means that it is not reproducible or it has been fixed in a newer version. If it’s an enhancement and hasn’t been taken on for so long, then it seems no one has the time to implement this. Please reopen if you still encounter this issue with the latest stable version. You can also contribute directly by providing a pull request. Thank you!

@stale stale bot closed this as completed Jan 6, 2021
@sunknudsen
Copy link

@prog-amateur Thank you very much for taking the time to provide these clear steps for creating an AppImage from official VeraCrypt binaires.
I will test it on my side and I will probably provide an official AppImage based on your work.

@idrassi I can't find AppImage releases on https://www.veracrypt.fr/en/Downloads.html.

Did this idea get tossed? On Tails, an AppImage release would be very helpful.

@sunknudsen
Copy link

sunknudsen commented Mar 19, 2021

I don't know why, but the AppImage is not launchable from the USB drive, so you have to move it in a folder znd make it executable.

@prog-amateur Did you ever manage to get things working on a USB flash drive? This would be required to run AppImage on Tails right?

Btw, perhaps the "not launchable" issue is caused by the fact flash drive is formatted using FAT or exFAT which doesn't support file permissions (required to chmod +x for example).

@sunknudsen
Copy link

sunknudsen commented Mar 19, 2021

I followed @prog-amateur guide and was able to create AppImage.

Now, when I try to mount a volume using VeraCrypt, I get the following error.

Failed to obtain administrative privileges: sudo /tmp/.mount_Ver********/usr/bin/veracrypt: command not found

Ideas? Investigating...

@sunknudsen
Copy link

I confirm running VeraCrypt AppImage using sudo solves above issue (but feels like a bad practice).

@sunknudsen
Copy link

Forgot to try the most basic approach to getting VeraCrypt to work on Tails...

Step 1: download veracrypt-1.24-Update7-setup.tar.bz2 here

Step 2: double-click veracrypt-1.24-Update7-setup.tar.bz2 and extract veracrypt-1.24-Update7-setup-gui-x64 to desktop (~/Desktop).

Step 3: run ~/Desktop/veracrypt-1.24-Update7-setup-gui-x64 in a terminal and select “Extract .tar Package File”.

Step 4: run nautilus /tmp, double-click veracrypt_1.24-Update7_amd64.tar.gz and extract usr/bin/veracrypt to persistent (~/Persistent).

There you have it… simply run ~/Persistent/veracrypt in a terminal and VeraCrypt opens without having to go over the install process over and over.

Bonus step: create a ~/Persistent/veracrypt.AppImage file with a single line (./veracrypt) and make it executable (chmod +x ~/Persistent/veracrypt.AppImage).

The veracrypt.AppImage icon can now be double-clicked to start VeraCrypt without using a terminal.

@sunknudsen
Copy link

Hey @idrassi,

Working on an episode form the privacy guides.

Is there a way to extract usr/bin/veracrypt from veracrypt-1.24-Update7-setup-gui-x64 using a single command vs having to run veracrypt-1.24-Update7-setup-gui-x64, use GUI to extract veracrypt_1.24-Update7_amd64.tar.gz (accepting license terms) and finally extract usr/bin/veracrypt?

Thanks!

@rafaelazvdo
Copy link

Hey @sunknudsen

Very nice man, I followed your tutorial to create a Veracrypt AppImage, and success, I can run it from a USB Flash Drive formatted in NTFS or exFAT in almost all the main linux distros in the market.

@NRGLine4Sec
Copy link

Hi @sunknudsen
This is how I am doing it :

tmp_dir="$(mktemp -d)" && \
wget -q -P "$tmp_dir" 'https://github.com/veracrypt/VeraCrypt/releases/download/VeraCrypt_1.25.9/veracrypt-1.25.9-setup.tar.bz2' && \
tar xjf "$tmp_dir"/veracrypt-1.25.9-setup.tar.bz2 --directory="$tmp_dir" && \
"$tmp_dir"/veracrypt-1.25.9-setup-gui-x64 --nox11 --noexec --target "$tmp_dir" && \
tail -n +$(sed -n 's/.*PACKAGE_START=\([0-9]*\).*/\1/p' "$tmp_dir"/veracrypt_install_gui_x64.sh) "$tmp_dir"/veracrypt_install_gui_x64.sh > "$tmp_dir"/veracrypt_installer.tar && \
tar -C / --no-overwrite-dir -xpzvf "$tmp_dir"/veracrypt_installer.tar; \
rm -rf "$tmp_dir"

@999px
Copy link

999px commented Jul 5, 2024

@sunknudsen

Forgot to try the most basic approach to getting VeraCrypt to work on Tails...

Step 1: download veracrypt-1.24-Update7-setup.tar.bz2 here

Step 2: double-click veracrypt-1.24-Update7-setup.tar.bz2 and extract veracrypt-1.24-Update7-setup-gui-x64 to desktop (~/Desktop).

Step 3: run ~/Desktop/veracrypt-1.24-Update7-setup-gui-x64 in a terminal and select “Extract .tar Package File”.

Step 4: run nautilus /tmp, double-click veracrypt_1.24-Update7_amd64.tar.gz and extract usr/bin/veracrypt to persistent (~/Persistent).

There you have it… simply run ~/Persistent/veracrypt in a terminal and VeraCrypt opens without having to go over the install process over and over.

Bonus step: create a ~/Persistent/veracrypt.AppImage file with a single line (./veracrypt) and make it executable (chmod +x ~/Persistent/veracrypt.AppImage).

The veracrypt.AppImage icon can now be double-clicked to start VeraCrypt without using a terminal.

Thank you very much, everything works. But for the new version "veracrypt-1.26.7-setup.tar.bz2" you need to use the file "veracrypt-1.26.7-setup-gtk3-gui-x64" (specifically with gtk3, I don't know what that is, but the version without gtk3 doesn't work very well).

There is also one QUESTION: VeraCrypt Portable turns out to be somewhat crippled, at least the "Language" option does not work, it only launches in English. How can I make the interface language selection work?

@Jertzukka
Copy link
Contributor

There is also one QUESTION: VeraCrypt Portable turns out to be somewhat crippled, at least the "Language" option does not work, it only launches in English. How can I make the interface language selection work?

The language selection for non-Windows version was added after 1.26.7, so it is not available yet on that release. If you want to change the language on that version, you'll have to set your environment variable to the language of your choice, for example by exporting a env variable export LANG=fi_FI.UTF-8 or launching it through env tool env LANG=fi_FI.UTF-8 veracrypt with your chosen language.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

10 participants