Hello, So I have discussed the JSW issues in other threads, but now I have decided to make a dedicated thread for it as I feel it is a major issue with projects which depend on it. JSW makes things difficult when packaging software, you need the new version of the software to "patch" (of sorts) the old version, and then you remove the new version... which is already difficult enough to do, and is something I am working on within the onedev package: https://onedev.polarian.dev/polarrepo/onedev/~issues/1 However I have been looking for other user-based improvements, JSW provides a variety of scripts, such as database backup, restoring etc. These shouldn't be added to the PATH directly as it would "blotify" it of sorts, so I was thinking of making a wrapper script/program to call these scripts depending on the command line arguments passed. This would be a very simple script. If not written in bash, it could be added as a hard dependency of the package, or as a optional dependency (wrapper script to make JSW scripts more usable). JSW programs are very non-generic to the point that the only choice you got is to dump them into /opt/ and try your best to get them to work with the package manager, did I mention JSW is proprietary and is distributed under multiple EULAs? (which makes this situation even more of a kick in the balls). I have discussed isolation and removal of JSW from the codebase, it is possible to make it optional but the developer of onedev is currently not willing to do this, unless there is good reason (aka the AUR package does well, and there is a draft package proving the support is there for it) -> this is what I think he wanted to the best of my knowledge. Once I have the main package properly working, I have got on my todo list to attempt to strip the JSW wrapper out (the docker builds to a jar without the JSW, however it is a "incomplete" build which will need patching to fully function as far as I am aware). I plan to push this in the future to onedev-oss, or rename onedev to onedev-bin and then move the non-JSW one to be onedev, and then eventually merge them into a single package if the non-JSW manages to be as stable as the JSW, but this unfortunately will be unlikely due to the strong dependency on JSW. Does anyone have any advice they can give on packaging applications using JSW, and the idea of wrapping the JSW scripts into a single executable/script which can be put within the path (preferably to /usr/bin) to make it easier for users to manage their applications? Thanks, -- Polarian GPG signature: 0770E5312238C760 Website: https://polarian.dev JID/XMPP: polarian@polarian.dev
participants (1)
-
Polarian