section83/MacYTDL

[Bug report] env: python3 no such file or directory

1alessandro1 opened this issue · 6 comments

Good evening,

I've installed:

  • MacYTDL 1.19.4 and
  • python3.9.9 pkg and
  • The latest yt-dlp to date in /usr/local/bin
  • alongside ffmpeg and ffprobe.

I've also read in the documentation that to use MacYTDL with yt-dlp in macOS 10.14.6 (18G9323) I have to provide the following .dylib:

  • libcrypto.44.dylib
  • libssl.46.dylib

Which were taken from a new macOS Catalina installation (build 19H1615 from 13-12-2021)

This is the current situation in /usr/local

immagine

However, when I make the switch to yt-dlp:

immagine

even though I've pre-tested it from the command line:

immagine

I get the following error:

immagine

I think this problem is related to the fact that the python3.9.9 .pkg can't modify the $PATH for MacYTDL. I've tried to click on Modify and add it myself though:

Previously:
immagine

After my modification:

immagine

But by doing so, the problem persists even after sudo codesign --force --deep --sign - MacYTDL.app/ (since I edited the applescript)

Let me know what I can do to debug this issue on 10.14.

FYI, MacYTDL works perfectly with just youtube-dl since it only uses the default python2.7 bundled in macOS.

Thank you for making contact.

The copy of YT-DLP installed by MacYTDL has Python 3.8 built in. So, you do not need to install Python 3.9. I am currently running MacYTDL on a Mojave install without the $PATH issue. I will install Python 3.9 to test what happens.

AFAIK, code signing doesn't enable AppleScript to work. Code signing will just make it harder to debug the issue.

I have uploaded an unsigned copy of MacYTDL 1.19.4. You can edit the code in that without the code signing problem. To help debug problems, run MacYTDL in Script Editor. Script Editor will highlight the line of code which caused the error.

BTW, apologies for the lack of translation for much of MacYTDL. I hope to update the translations soon.

Interesting that the FFmpeg version number is so weird. Is that a custom FFmpeg install or did MacYTDL handle the install ?

UPDATE:

I think the problem is that you installed the Unix executable of YT-DLP instead of the macOS executable. I installed Python 3.9 and the Unix version of YT-DLP. When I started MacYTDL I got the same error "env: python3: No such file or directory".

I do not know how to solve that problem. Did you follow the advice on Docs.Python.org ?

I have found a bug in the MacYTDL install code. So, I recommend you try this:

  • delete this file: /Users/[your home]/Library/Preferences/MacYTDL/MacYTDL.plist;
  • delete the Unix yt-dlp executable;
  • run MacYTDL;
  • agree to create the preferences file;
  • hopefully, MacYTDL will display the Main dialog;
  • click on Utilities;
  • choose Switch to YT-DLP;
  • hopefully, yt-dlp will be installed.

Let me know how you get on.

Thanks for all of your support! It warms my heart that there are people who care about their users.

Tomorrow morning I'll reply to every question you've wrote above, and make the tests you asked for, thank you!

Thanks for all of your support! It warms my heart that there are people who care about their users.

My pleasure. MacYTDL is my retirement project and I am very happy that people find it useful (when I fix the bugs).

Cheers.

Sorry for the delay, I was very busy last week and I couldn't find some time to reply...

Anyway, I followed your advice to remove the app and Preferences, update to v1.20 and let the app download YT-DLP and now everything works perfectly (with the additional libraries in /usr/local of course)

Many thanks for the support, and sorry for the delay again! 👍

everything works perfectly

Now, I do like to see that !

Many thanks for the update.