2024-12-26, 08:59 PM
(This post was last modified: 2024-12-26, 09:02 PM by raulo1985. Edited 1 time in total.)
(2024-12-22, 05:42 PM)qwerty12 Wrote:(2024-12-21, 12:51 AM)raulo1985 Wrote: - When you say save vc_redist.x64.exe as bundle/win/Bundle.wxs, do you mean renaming the .exe file and its extension to Bundle.wxs? Sorry for the noob question.
That's my reading of the workflow file, yes - save the exe file asBundle.wxs
in abundle/win
folder, which you probably will need to create first in the folder where you cloned the source. You might need to perform the path substitution to Bundle.wxs that the workflow does - read the workflow for details - but I would try without doing that first.
Quote:- Regarding your last paragraph, I actually want to learn how to modify all the client settings defaults (specially with Tizen client, JMP and WebOS client) so I can remotely install everything by myself and not rely on my relatives tech abilities to do it (it takes too much time, and still somehow they usually end up with a bad configured client). So I’m interested on modifying every setting that you can modify when going to your profile pic at your client (playback, subtitles, even the order of how the libraries are shown if possible, etc). I’ve successfully build and deploy clients for Tizen TVs and WebOS TVs, but haven’t found a way to modify those defaults. Like I mentioned on my other thread, I found that in the appSettings.js and userSettings.js files almost all those settings are mentioned, but I don’t know much about coding so I’ll probably break everything if I modify those files without some assistance/guidance.
Even if you change them, you'll need to do so again the next time you upgrade Jellyfin. And because in the distributed builds of Jellyfin those files are minified, and probably have a different name from one version to the next, that's not really a sustainable approach in the long term IMO. (OTOH, you could say the same thing about custom builds of clients...)
Quote:But one thing that could be also useful for this purpose is what you said, to have the server’s ip/ddns/username/password already set up so the client not only has its defaults already configured after installation/deployment, but also automatically logs in to the server without having to type the username and password. How can that be done? What should I modify in the find-webclient.js file for that purpose?
I do not directly know. I have no affiliation with Jellyfin as a project whatsoever and I am not at all familiar with the clients' intricacies. (I posted here because I'm not new to using the Microsoft toolchain to build my own simple stuff.) I've never used JMP myself. My following suggestions are probably useless partly because of that. ChatGPT will know more than me.
I believe the actual developers hang out in Matrix rooms. At most, I've changed how things work on the server side (thank you, HarmonyLib and the Jellyfin plugin system).
If my cursory look is correct, I think that file gets executed when JMP is showing the screen to input the server address. The idea is something like this (there's examples of some of this in the file): you get theElement
that represents the server addressinput
, fill it in with a value, find the Element that represents the "proceed" button and simulate a click on that. I don't know if that JavaScript file continues to remain loaded when Jellyfin's login screen is displayed; if so, there's mechanisms to detect when new Elements are created, when the URL is changed etc. etc. And if that JavaScript doesn't remain loaded, look into QtWebEngine's API to see if you can determine when the login page is displayed and modify JMP to inject your own JavaScript at that point.
Quote:At least when I look into that file of my already installed and configured JMP, I don’t see anything that mentions or points to my server (and when I execute the program, it automatically logs in).
Surely in%APPDATA%
or%LOCALAPPDATA%
there's some sort of "jellyfin media player" folder that has the settings? I think the web part of Jellyfin relies on the browser's LocalStorage to persist the settings - QtWebEngine probably churns out a database etc. file containing the settings.
Quote:In other words, I don’t know what to modify on a client before building it so, after being installed, it auto logs in to my server so the person at the client side don’t have to do, hopefully, anything after deployment (if that’s possible of course).
That would make two of us
Thanks again for taking the time to reply in detail. Greatly appreciate it.
Because of some family/health issues I haven't been able to try your suggestions, but I will. So, for the meantime, I've only gotten to the point already mentioned (the screenshot, with the exe file created, but failing while executing it). I'll look into your suggestions to try to make it work, and hopefully build an installer after that (in my case, this is like a parrot trying to build a spaceship, but who knows, I could learn something).
I have no issue with re building from source with the modified settings every time I upgrade. I don't upgrade that often (lets say, once every one or two months), and building jellyfin-web (with the already modified files) is pretty easy and not time consuming. But from time to time I create accounts for other relatives, and most of them don't know anything about tech (you know, I simply know how to search for answers in Google, and that automatidally makes me the god of troubleshooting of the family). So, since apparently most of the default settings that you configure at your client are set in jellyfin-web (server side), I like the idea of being able to modify those defaults so when a relative installs the app, its defaults are already modified to the values I want. And I wouldn't be able to do so if those defaults depend on the clients themselves (I would have to rebuild every client and send it to them, it's easier for my use case if the defaults are indeed set at server side).
For example, after modifying the default display language in those files (server side) and rebuild jellyfin-web, if a new client tries to connect to the server, it will have that specific language already set (because it's the new default setting), right? That's the way I understand it, but I could be wrong. But if I'm correct about that, that would be a solution for me, since rebuilding jellyfin-web is easy and, most importantly, I wouldn't have to rely on the clients (and my relatives) to have their new clients already set up as soon as they are installed.
The exception would be to have the server's ip (or ddns) and the users credentials already set up, from your reply I get that that's a trickier task. But I'll look into it.
Ultimately, that's my goal: if possible, to have all the web based official clients configured with different default settings than the current ones after they are installed, and, hopefully, have the server's address alredy set up too. Since those default settings appear to be stored in jellyfin-web and not in every client, an ideal solution for me is to know how to modify the specific files / code that controls them, and re build every time I upgrade. I'll try with those files, at least with the ones I think I understand (to set up the server's address, that seems trickier, so I'll start with the other settings first).
But, after saying that, I still want to be able to create a working executable (and installer) for Windows, and looks like the task is harder than I thought (in other words, I'm still too noob for that without some help). As soon as I have the time, I'll try your suggestions.
Thanks again!