rzander / ruckzuck

software package manager for windows
https://ruckzuck.tools
Microsoft Public License
222 stars 20 forks source link

Install issue #128

Closed ajtak-angelus closed 3 years ago

ajtak-angelus commented 3 years ago

Hi, I have please two problems. 1) the application cannot be installed if there is diacritics in the path c:\users\uživatel\appdata\local\temp (ěščřžýíé etc) - implement UTF-8 in the path? Tested on RuckZuck and RZGet 2) rzget install RuckZuck does not work.

Thank you very much

rzander commented 3 years ago
  1. To be able to reproduce, the Username has some special characters? Do you get an error when it downloads the content ?

  2. rzget install ruckzuck will not work as ruckzuck is a portable app and cannot be installed. It's in the repository to allow updating ruckzuck.exe. If you check the metadata, you will see that it looks for a ruckzuck process to find the path where ruckzuck.exe is located.

ajtak-angelus commented 3 years ago
  1. MPC-HC Team MPC-HC 1.9.9 (64-bit) 1.9.9 Downloading...... done. Installing...ERROR:An object at the specified path C:\Users\JI8DC8~1 does not exist. ERROR:This command cannot be run due to the error: Systém nemůže nalézt uvedený soubor. ERROR:You cannot call a method on a null-valued expression. WARNING: Product not detected after installation. ... Error. The installation failed.

C:\Users\JI8DC8~1 - correct is C:\Users\Jiří Or change the download folder?

  1. ok, thanks.
rzander commented 3 years ago

I tried to reproduce , but everything is working fine here: image

martinlugger commented 3 years ago

Hello Rzander I did a deeper testing. I found: If you have a Username with a char "." in the name and 4 chars after the char "." the download is always OK but the installation fails. If the length of the username is equal 12chars or more, the installation succeeds. Windows creates per default the user environment variable with the 8.3 notation path. You should be able to reproduce the problem:

User:U.1234 ============

U 1234_Error

User:U1.1234 ============

U1 1234_Error

User:U12345.1234 ================

U12345 1234_Error

User:U123456.1234 ================

U123456 1234_NO-Error

User:Martin.Test ================

martin test_Error

User:MartinTe.st ================

MartinTE st_NO-Error

rzander commented 3 years ago

A "normal" Set-Location $env:temp does also not work... -> https://superuser.com/questions/1524767/powershell-uses-the-short-8-3-form-for-envtemp. image

In general, I would say that this is a PowerShell Issue... I have changed the way how RZ is setting the location: https://github.com/rzander/ruckzuck/commit/f086c259f0634f75565da64650d34c0f476cac12 You can try the following preview version if the Issue is fixed: RZGet_Preview.zip

... let me know if the preview version does fix the issue ....

martinlugger commented 3 years ago

Hello, yes the RZGet_Preview.zip is doing the job. The fix is working well. Thank you for fixing the RZGet.exe.