Topic: widelands-media better findable/useable
knarf Topic Opener |
Posted at: 2024-01-03, 21:33
Hi, I am not very familiar with widelands and its development and as such, I have the viewpoint of a typical potential future contributor. However, I just had quite a hard time figuring out where to find the blender files. Everything seems to be on git nowadays and the mirror-bot is cool, but after quite some searching, I found a short note on a widelands git help page that everything "but widelands-media" is now on git. That lead me again after some digging to some old bazaar repos and finally to what I wanted: https://launchpad.net/widelands-media I hope this is correct, is it? Now my real question and a few remarks:
Please do not take these points as complaining. I just wanted to put some of my first impressions while looking "behind the scenes" into writing in the hope it helps to improve things that might naturally not be visible to long-term contributors. Edited: 2024-01-03, 21:41
Top Quote |
hessenfarmer |
Posted at: 2024-01-04, 00:31
+1 for having everything ccesible in one (maybe mirrored) place. Top Quote |
kaputtnik |
Posted at: 2024-01-04, 09:37
The reason to keep the media-repo on launchpad was just the size of the repo (~9GB). As far i remember github didn't allow to store such a big repo for free. If i understand this correctly github allows only 500MB for free. Regarding finding where all the media is found: It's in our wiki, Graphics development. This page can be found by e.g. clicking on "Development" (on the above List) -> "Contribute" -> Chapter "Graphics". Edit: Just saw that you modified the wiki yesterday and added the links. Very nice, thank you! Edited: 2024-01-04, 10:17
Top Quote |
knarf Topic Opener |
Posted at: 2024-01-04, 11:28
Would it be an option to have the media repo only on codeberg? They state on https://docs.codeberg.org/getting-started/faq/:
9 GB is large, but it should still not impact others and for media that size is not unreasonable. I do work with repos that size regularly, although not on codeberg. Top Quote |
tothxa |
Posted at: 2024-01-04, 12:07
The main problem with the media repo is that it's so big that it's practically impossible to check out. So first of all it should be split into manageable segments. I don't know the sizes of The second, still quite big problem is that media files are not well fit for version management, but we shouldn't throw away history either. At least the blender models went through several sweeping automatic or semi-automatic updates without actually checking whether they still render properly, so they do need the history, at least until they are all tested and either repaired or reverted to the last working version. My re-export efforts help with the last point, but my repo grew bigger than desirable too (for different reasons, mine has too many intermediate files). And I really need to convert it to some automated build system. Top Quote |
knarf Topic Opener |
Posted at: 2024-01-04, 13:17
My experience is that large binary files in git are ok as long as they do not change often. 9GB do take a while to checkout, but in the end that is the size of the data and whatever you do, you will need to download those data in all cases. Splitting into graphics and sound might make sense, as rarely you will need both at the same time, and even if you do, cloning two repos instead of one isn't that much more work. Also, maybe git-lfs could be an option? Top Quote |
kaputtnik |
Posted at: 2024-01-04, 13:46
I have the media-repo here, unfortunately updated in year 2019 Anyway, checking the size of directories shows:
So the biggest part is the graphics directory (5,2GB) and sounds needs just 24MB. Digging in the graphics directory tree:
graphics/tribes is the biggest directory, and there:
graphics/frisians is the biggest directory. Not sure if this repo can be split into smaller parts. Top Quote |
Nordfriese |
Posted at: 2024-01-04, 18:09
For completeness here are the most stats of the most recent revision r285 from 2023-08-20:
Maybe a lot of space could be gained by removing the prerendered hi-res PNGs for Fri and Amz from the repo. git-lfs is evil, since it is built around storing the actual content on some remote server outside the version control system itself. Splitting off the sound and music folders into a separate repo on Codeberg/GH would be easily doable – when and if someone actually wants to work with this part of the repo, which was last modified in 2011… Edited: 2024-01-04, 18:09
Top Quote |
knarf Topic Opener |
Posted at: 2024-01-04, 21:26
If no development happened on sounds/music for that long, the number by @kaputtnik should still be accurate and then we talk about 26 MB compared to 14 GB. I don't think it makes sense to split this off at this point. Edited: 2024-01-04, 21:27
Top Quote |
blind3rdeye |
Posted at: 2024-01-04, 23:35
I don't know much about the graphics stuff, but I'd say this is a good idea. In my view, files that are generated from some other source in the repo probably shouldn't be included in the repo themselves (unless there is a special reason for it). So if the PNGs can be recreated from the other files, then we probably don't need to keep all their historical version. Top Quote |