Sorry not fmar(and @fmar please tell me to butt out if overstepping the line with interferring with your thread/contribution, thanks
), but I read little up on your two questions, and is little complicated(the first one). For second, then not in deluge natively, but could e.g. search for a windows(mingw or cygwin) build of mktorrent, e.g. quickly found this:
https://github.com/q3aql/mktorrent-win-builds/releases - I looked at the extracted contents on linux, and newest release is little bigger because include alot of extra stuff you don't need, so only use the bin subfolder - the next-newest link is smaller, but uses older cygwin, the changelog states, don't know how relevant. You need specify dirs/files with forward slashes, not backwards, usually with many cygwin apps I remember. Also, saw a python script you could extract and place into your deluge folder and run with python.exe from there, either take the 0.97 release and copy the two files under src folder into deluge dir, or take the newest release and the single file under src dir, but that version need an extra module not included with deluge, so if using that, then additionally need download this:
https://files.pythonhosted.org/packages ... ne-any.whl, extract it(if not having 7-zip and cannot extract it, then rename to end in .zip instead of .whl and extract, and move the 3 extracted folders into deluge folder under 'Lib\site-packages'). Here's link for python-script:
https://github.com/rsnitsch/py3createtorrent/releases Docs:
https://py3createtorrent.readthedocs.io ... /user.html
Now for first issue, which is why I write even - yes you're correct in your theory, and is general windows issue, not deluge(and not related to this unofficial installer neither), e.g. qbittorrent added support for this a year ago or so. The python.exe included with this unofficial installer includes from upstream an embedded manifest supporting long paths _if_ having it enabled(win10 1607+) through the reg-key 'longpathsisenabled':
https://www.howtogeek.com/266621/how-to ... haracters/
However, the alternative exe loader this unofficial installer utilizes, actually doesn't use python.exe but loads deluge's py-code direct through python39.dll, so the needed manifest isn't seen, and I believe there's already a manifest embedded into that alternative loader already, meaning cannot just add external deluge.exe.manifest file as ignored. However I don't really know how will work i.e. if even needed a manifest for py-scripts, so could try if works just by setting that key and restarting. If not, then need e.g. extract the manifest with resource-hacker or alike from python.exe and embed/overwrite it onto the deluge.exe binary(would be nice to script this in the build-scripts and add option in nsis-template to enable this long-paths option during install, but i'm not working on this anymore as said, but idea for others maybe - I think there's an app mt.exe that can embed manifests from command-line, or else reshacker can be controlled through command-line also I believe - Edit: Could just add longpathaware property to embedded manifests of w64.exe/t64.exe with e.g reshacker, and then would always be available in built deluge binaries, and as said add new option to installer through the nsis template to set the needed reg-key). The relevant part is just the longpathaware setting there, so could also just add this to already embedded manifest instead if wanted.
If doesn't work, then as workaround could open deluge through python.exe and not the dll through overriding the own embedded alternative exe loader, by opening python.exe and running:
Code: Select all
from deluge.ui.ui_entry import start_ui
start_ui()
Then gets loaded through python.exe and inherits embedded manifest. Same when running the python script for creating torrents previously mentioned btw, as uses python.exe.
Very last, when getting it to work with the enabled reg-key, then another problem still exist, and affects all apps, not just deluge on windows - when overriding max_path to support 37000+ chars in path-depth, then internal API functions in windows still restricts individual path elements to be max 255 chars long, meaning all this is moot if having a folder or file in your 260+ chars long path that is 255+, unfortuently, but better than nothing of-course.
...for a maximum total path length of 32,767 characters. This type of path is composed of components separated by backslashes, each up to the value returned in the lpMaximumComponentLength parameter of the GetVolumeInformation function (this value is commonly 255 characters).
https://docs.microsoft.com/en-us/window ... n?tabs=cmd
https://docs.microsoft.com/en-us/window ... formationa
Sorry for long-windedness