Time |
Nick |
Message |
00:00 |
|
seasharp joined #luanti |
00:07 |
|
SFENCE joined #luanti |
00:41 |
|
SFENCE joined #luanti |
00:43 |
|
FileX joined #luanti |
01:16 |
|
SFENCE joined #luanti |
02:10 |
|
FileX joined #luanti |
02:12 |
|
Can0xfBows_ joined #luanti |
02:26 |
|
SwissalpS joined #luanti |
02:35 |
|
SwissalpS joined #luanti |
03:17 |
|
SFENCE joined #luanti |
04:00 |
|
MTDiscord joined #luanti |
04:21 |
|
est31 joined #luanti |
04:33 |
|
YuGiOhJCJ joined #luanti |
04:38 |
|
est31 joined #luanti |
04:57 |
|
qqe joined #luanti |
04:59 |
|
kyle56 joined #luanti |
05:14 |
kyle56 |
is there a way for client mods to alter the main menu lua? like add new tabs with custom menus or something? |
05:18 |
[MatrxMT] |
<Blockhead256> no, the main menu is a third sandbox separate from the CSM and server Lua environments. You have to ship custom `builtin` code to change the main menu |
05:42 |
|
kyle56_has_conne joined #luanti |
05:49 |
kyle56_has_conne |
@Blockhead256 ah ok. thx |
05:50 |
|
kyle56_has_conne left #luanti |
06:30 |
|
FileX joined #luanti |
07:41 |
|
FileX joined #luanti |
07:57 |
[MatrxMT] |
<Bracket> no you don't, there is a "main menu script" setting which you can point to your own menu |
07:58 |
[MatrxMT] |
<Bracket> you could probaly leace builtin as is |
07:58 |
[MatrxMT] |
<Bracket> leave* |
08:22 |
|
est31 joined #luanti |
08:25 |
|
Pexin joined #luanti |
08:28 |
|
qqe joined #luanti |
08:43 |
gry |
hi qqe ? |
09:03 |
[MatrxMT] |
<Blockhead256> wow, I did not realise it, but this has been a feature since formspec was first used for the main menu |
09:21 |
|
alias joined #luanti |
09:42 |
|
Pexin joined #luanti |
09:45 |
|
mrkubax10 joined #luanti |
09:46 |
|
fanshen joined #luanti |
09:49 |
[MatrxMT] |
<Blockhead256> https://forum.luanti.org/viewtopic.php?p=445936#p445936 |
10:15 |
|
fluxionary joined #luanti |
10:36 |
|
fluxionary joined #luanti |
10:37 |
[MatrxMT] |
<Bracket> funny im working on one |
10:44 |
|
SFENCE joined #luanti |
11:02 |
|
SFENCE joined #luanti |
11:09 |
repetitivestrain |
my two cents respecting https://github.com/luanti-org/luanti/issues/16240: i do not understand what measures currently exist to facilitate interfacing games and mods with arbitrary custom map generators |
11:10 |
repetitivestrain |
with my map generator, for instance, engine decorations and ores are not placed, and not only are built-in biomes not generated, but also the built in two-coordinate temperature/humidity system cannot encompass my biome system at all |
11:11 |
repetitivestrain |
and i expect the same to be true of all Lua map generators, on which account this proposal is pretty premature |
11:12 |
repetitivestrain |
in my estimation games should simply be afforded the capacity to override the main menu and decide which of their own map generators to present to the users |
11:13 |
repetitivestrain |
(not to mention that any attempt by mods to alter terrain in on_generated is apt to be reverted almost immediately by the post-generation pass) |
11:20 |
|
mrkubax10 joined #luanti |
11:37 |
|
mrkubax10 joined #luanti |
11:37 |
MTDiscord |
<luatic> I'm not fond of the idea of the engine forcing a "compatibility layer" onto games either. |
11:38 |
MTDiscord |
<luatic> Ultimately these are two conflicting goals: Better mod / game interoperability versus creative freedom for game developers. In my opinion we should prioritize the latter. |
11:49 |
|
FileX joined #luanti |
12:19 |
|
ireallyhateirc joined #luanti |
13:03 |
|
cheek_pain joined #luanti |
13:24 |
|
SFENCE joined #luanti |
13:25 |
|
luatic joined #luanti |
13:25 |
MinetestBot |
luatic: Dec-16 14:50 UTC <lmat> I was able to craft copper using technic:coal_alloy_furnace. The fact that this is not discoverable using the crafting guide is an horrible user experience. It looks like that has been noted: https://github.com/minetest-mods/technic/issues/585. Thank you again! |
13:31 |
Oblomov |
hello all, a questione: my son has started playing some luanti games, but he would like to modify one specific texture |
13:31 |
MTDiscord |
<damotrix> that's the most aggressive "thank you again" I've seen |
13:32 |
Oblomov |
I know how to create texture packs, but if the intent is to override only a couple of images, is it still necessary to copy all the other over? or is it possible to tell luanti to “fall back” to the official/default ones when missing from the texture pack? |
13:33 |
MTDiscord |
<damotrix> @Oblomov lol I was about to recommend making a texture pack |
13:34 |
MTDiscord |
<damotrix> and no it's not necessary to copy other textures over, I've made a texture pack as a text to change only 1 image |
13:34 |
Oblomov |
damotrix: that's the path I want to teach him, but my understanding is that this needs overrides for everything? or am I mistaken? |
13:34 |
Oblomov |
oh ok |
13:34 |
Oblomov |
*phew* |
13:34 |
MTDiscord |
<damotrix> nope, doesn't need overrides for everything :D |
13:34 |
Oblomov |
I've only ever seen “complete” packs, hence the question. thanks 8-) |
13:34 |
MTDiscord |
<damotrix> that'd be super annoying if a mod added a new texture tbf |
13:34 |
MTDiscord |
<damotrix> yeah |
13:35 |
Oblomov |
makes sense |
13:35 |
Oblomov |
I think the docs could be a bit more explicit on this, since the howtos I've seen start from the assumption that you want to replace everything |
13:35 |
MTDiscord |
<damotrix> true |
13:36 |
Oblomov |
if I get some time, after tutoring my kid I'll see if there's something I can do about the docs |
13:37 |
[MatrxMT] |
<Blockhead256> doc/texture_packs.md doesn't imply that every texture has to be in a pack, that must be a prior assumption you're working with. How would a texture pack even work with mods if that were the case? |
13:38 |
[MatrxMT] |
<Blockhead256> I guess you can look at writing it into the docs so that it removes that line of thinking explicity |
13:39 |
[MatrxMT] |
<Blockhead256> you might not have seen it, but my joke texture pack only has one texture https://content.luanti.org/packages/Blockhead/baby_sun/ |
13:50 |
|
SFENCE joined #luanti |
13:58 |
|
Markow joined #luanti |
14:03 |
Oblomov |
OK my son is very happy with his new texture. thanks all. |
14:04 |
Oblomov |
but yeah, I was thrown off by the docs suggesting you copied all the originals over |
14:04 |
[MatrxMT] |
<Blockhead256> that would just be to have all the filenames in place more easily |
14:16 |
|
SFENCE joined #luanti |
14:16 |
MTDiscord |
<wsor4035> what docs specifically are you refering to? |
14:27 |
|
silverwolf73828 joined #luanti |
14:28 |
|
chilledfrogs joined #luanti |
14:42 |
Oblomov |
wsor4035: https://docs.luanti.org/for-creators/creating-texture-packs/ |
14:42 |
|
jaca122 joined #luanti |
14:42 |
Oblomov |
there's to be said that https://docs.luanti.org/for-players/texture-packs/ does specify that individual files can be overridden instead |
14:44 |
MTDiscord |
<wsor4035> if you wouldnt mind making an issue saying that the for-players one should link to for-creators to aboiud duplicate info, and also mentioning the copying comment, would appreciate it |
14:44 |
|
luatic joined #luanti |
14:44 |
Oblomov |
the for-players does link to the for-creators |
14:45 |
MTDiscord |
<wsor4035> i mean that the for-players shouldnt have any creating information, just send them striaght to the other one, avoid duplicate/potentially confusing info |
14:47 |
MTDiscord |
<wsor4035> hmm, not sure why for-creators calls out Below is a brief overview of the texture structure as of version 5.1 - nothing changed before that..... i think? there is the ability to nest media (or something) that came in a later version |
14:50 |
MTDiscord |
<wsor4035> at any rate, it should say why that version |
14:50 |
Oblomov |
wsor4035: hm actually the for-players having brief instructions on how to override individual textures isn't such a bad idea |
14:51 |
Oblomov |
although possibly the information could be more balanced. I'll think about it a little bit |
14:52 |
MTDiscord |
<wsor4035> think of it as code, do you write duplicate functions are slight variations everywhere? or centralize it in once place for ease of maintainability |
14:55 |
MTDiscord |
<wsor4035> @rollerozxa did you per chance write the for-creators article? it orginally came from the wiki, but it does sorta somewhat seem like your writing, trying to figure out why 5.1 |
14:57 |
MTDiscord |
<rollerozxa> hmm I don't think so, I might have touched the page a bit on the original wiki but not much more than that, I remember it being weird and in need of a more encompassing rewrite which I never ended up doing |
14:59 |
MTDiscord |
<wsor4035> ah, well thanks |
14:59 |
MTDiscord |
<wsor4035> i guess ill have a poke around tonight to see if i can figure out why 5.1 and when nesting or whatever im thinking of became a thing |
15:05 |
MTDiscord |
<rollerozxa> why it's that version is probably just because it was originally written then |
15:05 |
MTDiscord |
<rollerozxa> subdirs in media folders became a thing in 5.4 I think? but I don't know if it might have been supported prior to that for texture packs which do things a bit independently from the server media loading |
15:07 |
|
est joined #luanti |
15:17 |
|
luatic joined #luanti |
15:22 |
|
est31 joined #luanti |
15:31 |
|
ltuyen joined #luanti |
15:32 |
ltuyen |
hello from the luanti player again! |
15:47 |
|
SFENCE joined #luanti |
16:22 |
|
SFENCE joined #luanti |
16:45 |
|
SFENCE joined #luanti |
16:49 |
|
ltuyen joined #luanti |
16:49 |
|
bracket joined #luanti |
16:50 |
ltuyen |
I don’t think so. |
16:50 |
|
ltuyen left #luanti |
16:50 |
|
bracket joined #luanti |
16:53 |
|
SFENCE joined #luanti |
16:53 |
bracket |
what license does luanti builtin have? The one used for the engine itself too? |
16:54 |
sfan5 |
yes |
16:57 |
bracket |
I hate that licenses are so long D: |
16:57 |
MTDiscord |
<warr1024> not all are |
17:00 |
|
SFENCE joined #luanti |
17:28 |
|
SFENCE joined #luanti |
17:29 |
jonadab |
Share-alike licenses pretty much have to be excessively verbose, in order to accomplish the inherently complicated thing they're trying to accomplish. That's also why they're pretty consistently mutually incompatible with one another. |
17:29 |
jonadab |
Permissive licenses can be shorter. |
17:40 |
bracket |
the LGPL says that I may modify the code in anyway and use it in anyway except to cause harm as long as I make it open source or some conditions when its propetary |
17:40 |
bracket |
is that correct |
17:41 |
[MatrxMT] |
<Blockhead256> except to cause harm? sounds like the hippocratic license |
17:41 |
[MatrxMT] |
<Blockhead256> that had better not be an AI summary |
17:54 |
MTDiscord |
<wsor4035> not a lawyer, not legal advise, but the lgpl basically is 1. doesnt infect your project AS LONG AS you dynamically link to it 2. have to release any changes/modifications to it 3. do whatever you want with it |
17:55 |
MTDiscord |
<wsor4035> re 1, you can make your project whatever license rather than lgpl or higher. I.E. you can have a MIT project, or propraitary project, etc and use a lgpl piece of code (assuming its dynamically linked to) |
17:58 |
jonadab |
Yeah, the LGPL is intended principally for libraries (especially important system libraries like libc, or widget sets) that you want arbitrary software to be able to link to, but the library itself to be share-alike. |
17:59 |
jonadab |
Bit of a special case, and probably not a license you need to think about too much, unless you are writing libraries that will be used by other software written by other people. |
17:59 |
[MatrxMT] |
<Blockhead256> Luanti itself is LGPL, and putting your mod under it means it doesn't have the "viral" effect on the whole project that normal GPL would |
18:00 |
jonadab |
Oh, the engine is LGPL? Ok, I somehow was not aware of that. |
18:00 |
[MatrxMT] |
<Blockhead256> even Luanti has libraries as well |
18:00 |
jonadab |
That does make it more relevant here. |
18:00 |
jonadab |
Considerably more relevant. |
18:01 |
MTDiscord |
<wsor4035> libraries if you drink the gpl flavored koolaid anyways |
18:01 |
jonadab |
But modules written in lua would presumably not be much impacted by the license of the engine, unless they ship with it or something. |
18:02 |
jonadab |
Does your Perl script need to care what license the perl interpreter uses? No. |
18:04 |
|
SFENCE joined #luanti |
18:20 |
bracket |
Blockhead: I was just assuming a licence wouldn't allow you do to illegal stuff |
18:23 |
MTDiscord |
<warr1024> Licenses grant you permission to do things otherwise reserved by copyright, sometimes in exchange for some restrictions you have to follow that are relevant to the author and their rights or what they want to accomplish with the software. |
18:23 |
MTDiscord |
<warr1024> The fact that it's illegal for you to do things that are against other laws is irrelevant to copyright. |
18:24 |
[MatrxMT] |
<Blockhead256> it's certainly not like 007 where we can give people licences to kill |
18:24 |
MTDiscord |
<warr1024> A license can only grant you permission to do things that are reserved by copyright. It cannot grant you permission to do things that you are disallowed by other law. It cannot impose other restrictions on you, other than restrictions you agree to apply yourself in exchange for grant of permissions for things covered. |
18:26 |
MTDiscord |
<warr1024> A license can't grant you permission to kill. A license also can't take away your right to, say, post videos online. It CAN require you to waive your right to do so as a condition for one of the permissions it CAN grant you, and it can revoke those grants of permission if you perform the action you've promised not to do. |
18:27 |
MTDiscord |
<warr1024> IIRC there are licenses out there with "do no evil" clauses where you would lose permission if you did evil. Thoese licenses are bullshit, of course, because evil can't be legally defined anyway. They're even worse than non-commercial licenses. |
18:34 |
ireallyhateirc |
copyleft licenses were designed to effectively cancel copyright but were not and shouldn't be a form of fighting <insert thing you don't like> |
18:35 |
|
SFENCE joined #luanti |
18:39 |
jonadab |
"In order to use this software, you must agree that Michigan is bad and their football team sucks." Heheheh. |
18:40 |
jonadab |
Although proprietary licenses often _try_ to levy all kinds of restrictions that aren't necessarily legally enforceable. |
18:41 |
jonadab |
Which is one of the reasons they always have one of those "if any part of this is invalid then the rest of it still applies" clauses. |
18:42 |
ireallyhateirc |
as for crayons licenses (non-copyleft) then it's pretty much coding in your free time so someone can put it to their proprietary product and sell for money |
18:43 |
jonadab |
Eh, depends. Really active projects seem to do ok with permissive licenses. OpenSSH for example. |
18:44 |
ireallyhateirc |
depends on the project's nature and willingness of downstream to contribute and/or donate to the project |
18:44 |
jonadab |
(It's not worth anybody's time to maintain a proprietary patch-set for a very active project, because upstream changes would cause you merge nightmares every five minutes. And if you don't stay up to date with upstream, you quickly become irrelevant.) |
18:45 |
jonadab |
But yes, it depends on the nature of the project. |
18:46 |
MTDiscord |
<warr1024> "must agree that Michigan is bad and their football team sucks" ... that's actually a very easy requirement to meet. It only requires you to agree, doesn't require you to publicize this agreement anywhere, and only requires you to agree once and doesn't disallow you from rescinding the agreement. Also leaves a ton of room open for "sucks", i.e. "is the best team but not as good as they could be" could be justifiable. Basically a |
18:46 |
MTDiscord |
do-nothing clause. |
18:46 |
MTDiscord |
<warr1024> As for crayon licenses, we disallow them all on CDB, copyleft or not. |
18:47 |
ireallyhateirc |
WTFPL ? |
18:48 |
ireallyhateirc |
a permission to use this software is hereby granted for anyone owning a dog |
18:48 |
MTDiscord |
<warr1024> WTFPL is pseudo-crayon |
18:48 |
bgstack15 |
I dislike the "permissive" licenses because they permit developers to take away rights from the users. |
18:49 |
MTDiscord |
<warr1024> It's basically only allowed due to "grandfathering" and the amount of stuff under it from a certain era of the project. I don't remember whether steps have been taken to disallow it outright, but it's always been heavily discouraged on CDB. |
18:49 |
ireallyhateirc |
can't you just relicense WTFPL to something else? |
18:50 |
ireallyhateirc |
WTFPL seems to implicitly allow relicensing lol |
18:50 |
MTDiscord |
<warr1024> in theory, maybe |
18:50 |
MTDiscord |
<warr1024> that "implicitly" part is problematic |
18:50 |
ireallyhateirc |
the court would have to define "do what the f you want" |
18:50 |
MTDiscord |
<warr1024> if it were just the swearing then we wouldn't have so much trouble with it |
18:51 |
MTDiscord |
<warr1024> I've suggested at one point that the WTFPL disallows me from using a piece of software for work purposes if I'm not interested in the project. |
18:51 |
ireallyhateirc |
and I doubt the copyright holder cares |
18:52 |
MTDiscord |
<warr1024> Something like ISC doesn't require you to WANT to use the software for a particular purpose, you can do it just because you need to. |
18:53 |
ireallyhateirc |
I agree that the wording is dumb but it seems that I can relicense the software if I want to |
18:54 |
|
SFENCE joined #luanti |
18:54 |
ireallyhateirc |
but whether or not the author needs to be credited is ambiguous |
18:54 |
ireallyhateirc |
probably yes to avoid plagiarism, but do you have to preserve the license document? |
18:55 |
mmuller |
just curious, how does content db enforce licensing? Is it automated, audited or something else? |
18:55 |
MTDiscord |
<warr1024> Permissive licensing means "I created this software because I wanted the software to exist. I get value from having it and using it. If you do too, that's great, but that's your personal business and I won't pry." Copyleft licensing means "I'm part of a social movement, and if you want access to these cool features, you need to be part of the movement too. We're trying to destroy the evil commercial software world by fighting fire with |
18:55 |
MTDiscord |
fire. Join us and we will provide torches and pitchforks." |
18:56 |
MTDiscord |
<warr1024> CDB enforces licensing by a combination of manual review and community feedback. |
18:56 |
mmuller |
cool. |
18:57 |
MTDiscord |
<warr1024> Editors attempt to validate licensing and rights, and detect certain violations, before approval. If anything slips through the cracks (we've even seen some slip into MTG itself) then things are reported by the community and handled after that; authors generally have a short grace period (like a day or something) to correct any issues or else the package needs to be promptly removed from access. |
19:02 |
MTDiscord |
<warr1024> FOSS is, as a general umbrella, about software granting individual liberty. Permissive software approaches individualistically: each individual grants the necessary liberties to each other individual. Copyleft approaches it collectivistically: you get your rights from the collective, and make your contributions to it, as long as you uphold its values. |
19:09 |
|
SFENCE joined #luanti |
19:16 |
bgstack15 |
Here's one of those acerbic rants about why the permissive licenses are not good according to this one dude: https://lukesmith.xyz/articles/why-i-use-the-gpl-and-not-cuck-licenses/ |
19:16 |
bgstack15 |
I realize not everybody is interested in Luke Smith's perspectives in general. I'm not verse in all of his opinions, but I agree with this one. |
19:16 |
bgstack15 |
*versed |
19:16 |
|
Verticen joined #luanti |
19:18 |
|
Thermoriax joined #luanti |
19:20 |
MTDiscord |
<warr1024> lol, "cuck" licenses ... that really makes it a pretty scathing criticism of the kind of people who would use copyleft licenses, rather than permissive ones 😆 |
19:20 |
MTDiscord |
<jordan4ibanez> What a title |
19:22 |
MTDiscord |
<warr1024> I've seen a lot of people use the "jeolosy" argument, i.e. "I hate the idea that somebody else is profiting from work I did" to justify copyleft. Other people benefiting from work I did is literally the reason why I license my work at all. |
19:23 |
bgstack15 |
You say that, but do you carry the burden of all those people pestering you for support, like the cUrl guy? |
19:25 |
* cheapie |
peeks in, sees licensing talk again |
19:25 |
cheapie |
This is why I just pick a license that's not possible to violate in the first place for my stuff, easier than figuring out what I want to allow |
19:25 |
cheapie |
(not possible to violate as in there isn't anything it prohibits) |
19:25 |
MTDiscord |
<warr1024> Heh, that's the nice thing about permissive licensing: I don't have to feel bad just ignoring the pestering. I'm not part of a crusade, I don't have fellow acolytes I have to politick with. I just write code. |
19:26 |
cheapie |
It's also like warr1024 said, I write them because I want them to exist and I don't really care too much what else happens |
19:26 |
MTDiscord |
<warr1024> cheapie: ❤️ |
19:27 |
MTDiscord |
<warr1024> you writing software without caring whether/how I use it also helps lighten the implied reciprocal burden for me 😄 |
19:27 |
* cheapie |
nods, has run into that a bit with asset licensing |
19:28 |
cheapie |
Most of the assets I use these days are ones I make myself, but at least for celevator I did use a few CC0 sounds from elsewhere |
19:28 |
cheapie |
(I actually ship a list of them with attribution, despite there not being a requirement for that) |
19:29 |
MTDiscord |
<warr1024> I used to like permissive licensing, but lately I'm leaning more toward "zero" (attribution-optional) ones. Attribution requirements are actually probably unnecessary for what I want anyway. I would need to prove my authorship of software to be able to enforce attribution requirements anyway, and being able to prove that I did the work is the main value I ever wanted from it anyway. |
19:30 |
cheapie |
Same, I used to use a custom BSDish license for my Luacontroller programs but moved to "zero"-style licenses for those a few years ago too |
19:30 |
MTDiscord |
<warr1024> Attribution requirements might actually be redundant, because claiming that I didn't write software is effectively defamation anyway, and that's orthogonal to copyright. |
19:31 |
cheapie |
Every so often something mildly annoying does happen (like there's a fork of one of my mods up on ContentDB that doesn't mention me at all) but that's probably not something I would bother doing anything about even if I /had/ chosen a license that required attribution |
19:31 |
MTDiscord |
<warr1024> So I'd rather remove the burden of worrying "is this form of attribution legally sufficient". Nah, just don't contradict me if I point out what I did, and that's sufficient. |
19:33 |
MTDiscord |
<warr1024> CDB actually requires attribution independent of license terms. We need to know the true origin of things in order to validate the licenses to begin with. Even if the original author waived right to attribution we can't know that if we don't know the original author, work, and terms. |
19:33 |
cheapie |
I think they might not have realized the original author was me in the first place, judging by the description |
19:34 |
cheapie |
The package in question is https://content.luanti.org/packages/spinning-cubes/firealarm/ |
19:34 |
cheapie |
It's a fork of https://cheapiesystems.com/git/firealarm/ |
19:35 |
cheapie |
If you want to push for attribution for ContentDB policy reasons that's up to you, my license doesn't require it |
19:35 |
jonadab |
Yeah, my real preference is to just place most of the code I write into the public domain, but then Europeans always say garbage like "you can't do that, it's illegal", so in practice I tend to end up using licenses like CC0, saves arguments. |
19:35 |
MTDiscord |
<warr1024> If you see stuff like that, you should probably report it. It's fine to point out that the license doesn't require attribution, but all parties that are involved (including the author, CDB staff, and all downstream users) deserve to know the pedigree of works they're using, and we should take steps to make sure that information ends up somewhere it can be used. |
19:36 |
bgstack15 |
Some jurisdictions (not sure which) don't have the concept of "public domain," which is why CC0 exists, indeed. |
19:36 |
cheapie |
I did informally mention it to a different ContentDB staff member outside of here (just like a "heh, look at this one") but I'm not sure he ever saw. I didn't see reason to actually push the report button. |
19:36 |
jonadab |
bgstack15: People say that, but nobody can ever name such a jurisdiction. |
19:36 |
bgstack15 |
Good thing I know my jurisdiction and which license to use (GPL-3.0-only) |
19:36 |
cheapie |
jonadab: Yeah, I've heard that from a few people - I usually use The Unlicense which seems to say about the same things |
19:37 |
MTDiscord |
<warr1024> I dislike the CC0 now somewhat because of the whole "public domain, but if that doesn't work, here's a fallback license that's basically the same thing." It seems like an unnecessary complication, and it kind of hurts portability into/out of public-domain-recognizing jurisdictions ... so I just prefer to use 0BSD or something that skips to the "fallback" license case and makes things concrete from the start. |
19:37 |
MTDiscord |
<wsor4035> i saw it, at 3am, and forgot to look at it once it was a more sane hour |
19:37 |
MTDiscord |
<jordan4ibanez> License warr ||you must now laugh|| |
19:38 |
jonadab |
Philosophically, it doesn't make any sense for a jurisdiction to exist that doesn't have a concept of public domain, because that would imply they have no access to any written work that's older than copyright law, which is only plausible in a sci-fi or fantasy setting, not in the real world. |
19:39 |
MTDiscord |
<wsor4035> anyways, in response, - in package approval, i did comment on it needing a license file and attribution, maybe they stripped it out in a new release or some jazz? or i screwed up in approving it |
19:39 |
cheapie |
It does have a license file (renamed from the name I had given it but I think the content is the same) |
19:40 |
MTDiscord |
<warr1024> I think when people say "public domain doesn't exist" I don't think they necessarily mean "there are certain places where 'public domain' is a meaningless term", I think the mean that the impact of that term on specific rights varies. IIRC in places in the EU certain moral rights cannot be waived or transferred (in order to prevent employers from coercing creative workers from selling those rights away) whereas in other places like the USA |
19:40 |
MTDiscord |
you can sell practically any right you have to a work. If you can't waive certain rights you get under (C) then you effectively can't fully "public domain" a thing, you will always retain some control over certain aspects of it. |
19:40 |
cheapie |
With it being an older mod I had originally called the license file COPYING as I did back before ContentDB decided it /must/ be called LICENSE |
19:40 |
MTDiscord |
<wsor4035> and for licenses that dont require attribution, we require it so we can actually check stuff |
19:41 |
MTDiscord |
<warr1024> CDB editors may get packages where all information pointing to the possibility of it being a fork may be removed, and this removal may be allowed by law (due to zero licensing) but is still disallowed by CDB rules. We might have no way to know ahead of time, but community reports could help. |
19:41 |
cheapie |
Yeah, I get the point, I'll report that sort of thing if I see it again |
19:42 |
MTDiscord |
<warr1024> The "copying" filename is a GNU/FSF thing and should probably only ever be used for their own licenses. |
19:43 |
MTDiscord |
<jordan4ibanez> Yep, put the link/license on CC0 so people can find the thing |
19:43 |
MTDiscord |
<wsor4035> also, ive said it before, and ill say it again, if you want your game to be approved faster, and its of the soup variety, use submodules |
19:43 |
* cheapie |
briefly ponders submitting a package with the same license text present under 20 different file names :P |
19:43 |
MTDiscord |
<wsor4035> and its better for maintainability |
19:44 |
bracket |
what exactly is a submodule? mods that rely on each other |
19:44 |
bracket |
? |
19:44 |
cheapie |
(but nah, I just use LICENSE now since it's what ContentDB wants, I don't have any strong feelings towards one name or another) |
19:44 |
MTDiscord |
<wsor4035> wouldnt really care cheapie |
19:44 |
MTDiscord |
<warr1024> cheapie: if we distributed packages as tar.gz, I'd say don't do it because it's stupid. But we distribute them as zip, which doesn't have cross-file compression, so don't do it because it's stupid AND bloaty. |
19:44 |
MTDiscord |
<wsor4035> bracket: use your search engine of choice and look up git submodule |
19:44 |
bracket |
K |
19:45 |
MTDiscord |
<warr1024> git submodules are a controversial git feature that is a big pain in the ass, possibly almost as much of a pain in the ass as every other thing people do to work around them, or because they don't know about them. |
19:45 |
|
SFENCE joined #luanti |
19:46 |
MTDiscord |
<wsor4035> git submodules are terrible, just the least terrible as compared to anything else you can do |
19:46 |
MTDiscord |
<warr1024> pretty much |
19:46 |
bracket |
ah nice |
19:46 |
cheapie |
I like submodules for the one use case of maintaining a repository with all of the mods for a given server, other than that they're kinda meh |
19:46 |
MTDiscord |
<wsor4035> remember when luanti had submodules at home? now that was dumb af |
19:46 |
MTDiscord |
<warr1024> there was a time when we wanted to include irrlicht inside luanti engine as a submodule, but we hated submodules, so we reinvented them instead, and instead of using the git submodule command, you had to do some weird stuff with a text file and some scripts 😆 |
19:46 |
MTDiscord |
<jordan4ibanez> No I don't actually |
19:46 |
MTDiscord |
<wsor4035> warr: 🥷 |
19:47 |
MTDiscord |
<jordan4ibanez> Ohhhhhh |
19:47 |
MTDiscord |
<warr1024> you referenced it, I explained it, we are not the same |
19:47 |
MTDiscord |
<jordan4ibanez> I am lagging lol |
19:47 |
MTDiscord |
<wsor4035> the text file didnt even exist till like one or two version before irrmt got put in the engine |
19:47 |
MTDiscord |
<wsor4035> iirc anyways |
19:48 |
cheapie |
On a mostly-unrelated note, I was looking through some of the celevator documentation, sometime I should actually note somewhere that 16seg.xcf is the source for all of the textures/celevator_pi_<two hex digits>.png files |
19:48 |
MTDiscord |
<warr1024> hmmm, so before it, what did we do to build the engine? You Just Had To Know? |
19:48 |
bracket |
i just now noticed there is warr and wsor |
19:48 |
SpaceManiac |
people are sleeping on git-subtree |
19:48 |
MTDiscord |
<warr1024> no relation |
19:48 |
MTDiscord |
<wsor4035> now that is where my memory falters, i think you build it from buildbot or something? it was rather cursed |
19:49 |
MTDiscord |
<wsor4035> git subtree is actually teribble in my opinon |
19:49 |
cheapie |
I do remember the IrrlichtMt repo but I don't remember having to do anything special to make it work, I just remember it as an "install this instead of Irrlicht" thing |
19:49 |
MTDiscord |
<jordan4ibanez> Why doesn't C++ have a package manager? |
19:49 |
MTDiscord |
<jordan4ibanez> Welp, this was the wrong place to ask that question I think |
19:49 |
MTDiscord |
<wsor4035> git subtree sounds cool see you have everything in a clone, but its way easier to fuck it all up |
19:50 |
cheapie |
jordan4ibanez: Because your system probably has one |
19:50 |
MTDiscord |
<wsor4035> and also negates any speed benefit in cdb approval |
19:50 |
MTDiscord |
<warr1024> I remember that the irrlichtmt repo had to be cloned into a specific place inside the MT repo, and you had to have the correct corresponding version, the tag of which was in a text file somewhere in the docs. So it was possible to build it from a script but kinda a pain in the ass. |
19:50 |
MTDiscord |
<wsor4035> you could also build it out of tree? its own package and link luanti to that |
19:51 |
SpaceManiac |
git subtrees only require the "git subtree pull"er to know how to use it correctly; git submodules require everyone who contributes to or even clones the repo to know how to use submodules correctly |
19:51 |
MTDiscord |
<wsor4035> spacemaniac: its not obvious its a subtree, so its very easy for people to make changes and commits to them where screws over the whole thing |
19:52 |
MTDiscord |
<wsor4035> the only people in luanti that use it notably is mineclonia, at least last i checked |
19:52 |
MTDiscord |
<wsor4035> seems to work for them |
19:52 |
SpaceManiac |
"screws over" meaning merge conflicts on next pull I suppose? |
19:52 |
MTDiscord |
<wsor4035> yeah, vs a submodule you fuck it up write then and there and can trash it all and reclone 😛 |
19:53 |
SpaceManiac |
in a pro environment I regularly had coworkers accidentally rolling back the submodule because they don't understand when to run and when NOT to run "git submodule update" |
19:53 |
MTDiscord |
<warr1024> The biggest problem I have with submodules is their dependence on 3rd party hosted repos to remain available. |
19:54 |
MTDiscord |
<wsor4035> also, havent checked, does dependabot (or whatever bot) even support subtrees? thats like half the reason i use submodules |
19:54 |
MTDiscord |
<warr1024> Other than that, you don't necessarily have to know or think about them as a casual user as long as you do the correct versions of the incantations to clone repos. |
19:54 |
MTDiscord |
<wsor4035> warr: yeah, but no different than depend on a third party mod, etc |
19:54 |
MTDiscord |
<wsor4035> (i.e. keep backups) |
19:54 |
MTDiscord |
<warr1024> As for having coworkers screw up a git repo, submodules have never been a prerequisite to that; I've seen people invent all sorts of ways to lose work that I'd have never even thought of. |
19:55 |
SpaceManiac |
it's not the only way, but the submodule mistake was particularly repetitive |
19:56 |
MTDiscord |
<warr1024> wsor: if git submodules offered a way to specify a cache somewhere (like everything else in git, they include their own verification, so even 3rd party caches are usable) I'd be a lot more comfortable with them |
19:57 |
MTDiscord |
<wsor4035> i mean, once you have a clone of your project anywhere, you have a backup of them |
19:57 |
MTDiscord |
<warr1024> My favorite way to lose work (both personally, and that I've seen other people do) is to go too long between commits, realize you want to undo the work in one file, and accidentally use a too-aggressive reset command and lose it all. |
19:57 |
MTDiscord |
<warr1024> IIRC you have a "shallow" backup of just that one revision. It'd be nice to be able to expand that to the full history. |
19:57 |
MTDiscord |
<wsor4035> i personally like git stash since i threat as a trash can, that has a recycle bin on the odd chance i screw something up |
19:57 |
MTDiscord |
<wsor4035> *treat |
19:58 |
SpaceManiac |
git submodules are the right choice in some situations, like if you control both repos and the upstream is also meant to stand independently, and you want the downstream repo to always point to a specific real version of the upstream |
19:58 |
MTDiscord |
<warr1024> stash is basically like a branch that you can't (or at least it's not obvious how) push to a server. I use it for small half-assed stuff. Anything more signficant and I'd tend to just create a topic branch, and actually push it. |
19:59 |
SpaceManiac |
I find subtrees are way easier to work with for the case where you're depending on some third-party repo (e.g. C++ library) that you may or may not be patching |
19:59 |
MTDiscord |
<wsor4035> yeah, but for trash cases, i dont really care about it at all, so should never need to push it somewhere |
19:59 |
MTDiscord |
<warr1024> git submodules are probably the right choice in more situations than not, given that you've got 2 projects that shouldn't be maintained in a single tree to begin iwth. |
19:59 |
MTDiscord |
<warr1024> well, if it's REALLY trash, then just undo it all. If you're stashing it, it must have some value. |
20:00 |
MTDiscord |
<warr1024> If it has value, I want to be sure I don't lose access to it until that value-having attribute changes. |
20:00 |
MTDiscord |
<wsor4035> isnt git undo per file and no way of getting it back? |
20:02 |
MTDiscord |
<warr1024> you can use "git checkout" to undo a single file. If you do that, any changes you HAD are toast, unless you stashed it away in some way. If you git reset --hard, same for every file. |
20:04 |
MTDiscord |
<warr1024> I've actually kinda wished that git had "microcommits" that it could get from editor undo buffers, and would be "collasped" away by default, but if you wanted you could expand them and reach versions between commits. We have tags for coarse changes, commits for finer ones ... and the finer we can push the limit, the less risk of irrevocably losing work. |
20:09 |
sfan5 |
one could argue that squashing is not the way git is intended to be used |
20:09 |
sfan5 |
the way linux recommends to make commits results in much more commits but also sort of what you want |
20:11 |
|
SFENCE joined #luanti |
20:12 |
MTDiscord |
<warr1024> I sort of feel like "squashing" should be implemented as a display filter. Like flagging commits as especially significant, and allowing you the option to roll up smaller contributing commits when you view them in the log, and such. |
20:12 |
MTDiscord |
<luatic> time for infinite commit nesting |
20:12 |
MTDiscord |
<warr1024> Personally I hate any workflow that involves destroying or collapsing history information outside of extreme circumstances like repo corruption or something. |
20:13 |
sfan5 |
by the linux model I don't think you will have many "especially significant" commits |
20:14 |
MTDiscord |
<warr1024> There are only a handful of numbers in computing: 0, 1, 2, and omega. If you want to have more levels than a dichotomy, you should just allow arbitrarily many of them and let people implement their own workflows. |
20:14 |
sfan5 |
for example if you implement a big feature you have a 4 refactors, 6 commits doing prepration by adding some parameters or something and then one final commit that connects everything together at the final place |
20:14 |
MTDiscord |
<warr1024> A project that doesn't need commits to be especially significant is sort of the ideal :-) |
20:14 |
sfan5 |
you could say that the last one is especially siginificant. but it might as well be just 5 LOC changes. |
20:14 |
ireallyhateirc |
related but unrelated, I will probably have to move Blender files from my repo to git LFS |
20:15 |
MTDiscord |
<warr1024> oof, daaaamn, how big are they? |
20:15 |
ireallyhateirc |
44MB for one character |
20:15 |
MTDiscord |
<warr1024> oh |
20:16 |
MTDiscord |
<warr1024> I wouldn't call that NEARLY big enough to LFS |
20:16 |
ireallyhateirc |
contains stuff like clothing and multiple versions of stuff but I consider that to be the "source code" |
20:16 |
MTDiscord |
<warr1024> git starts to struggle a bit when files are getting into the GB range, but you'd have to have some kind of crazy-weak machine to have a hard time with 44MB |
20:16 |
ireallyhateirc |
it's not really about me wanting to use LFS badly, it's more that git hosting has limits on git and git LFS data |
20:16 |
MTDiscord |
<warr1024> yeah, blend files are absolutely source code |
20:16 |
|
jaca122 joined #luanti |
20:17 |
ireallyhateirc |
I think codeberg has somethign 200-500MB git storage and 1GB LFS ? |
20:17 |
MTDiscord |
<warr1024> ah, if you're dealing with a 3rd party host imposing limitations, 🤷 may not be much you can do about that I guess. |
20:17 |
ireallyhateirc |
well both codeberg and gitgud say I can request more storage if needed |
20:18 |
MTDiscord |
<warr1024> LFS is like an inverse-submodule: taking code that logically should be in-tree and hosting it externally. It's kinda like the worst of both worlds. |
20:18 |
ireallyhateirc |
that's probably not necessary for ordinary projects, but a game which ships all Blend files is going to get fat at some point |
20:19 |
MTDiscord |
<warr1024> NodeCore's largest bland file is only about 900kb (only about as big as the distribution package of the entire game itself) so not that big by blend standards, I think. |
20:19 |
ireallyhateirc |
my models are quite high-poly for Luanti standards |
20:20 |
MTDiscord |
<warr1024> The CDB distribution is an "optimized" version for download time, and it doesn't include some of the media source that's not necessary for running it. Users are expected to have access to the git repo if they want the full source. |
20:25 |
* cheapie |
giggles just a bit at "bland file" |
20:26 |
ireallyhateirc |
hmmm no one said "bland" |
20:28 |
cheapie |
[15:19:10] <MTDiscord> <warr1024> NodeCore's largest bland file |
20:31 |
MTDiscord |
<warr1024> it was a typo, but you're free to derive entertainment from it |
20:33 |
|
SFENCE joined #luanti |
20:33 |
|
luatic joined #luanti |
20:40 |
ireallyhateirc |
at least it wasn't a bald file |
20:40 |
MTDiscord |
<warr1024> It actually is. It's a player model, and the player's hair is defined by the texture, not the model. |
20:41 |
|
luatic joined #luanti |
20:42 |
|
Talkless joined #luanti |
21:02 |
|
Talkless joined #luanti |
21:03 |
|
ineva joined #luanti |
21:22 |
|
Talkless joined #luanti |
21:27 |
|
SFENCE joined #luanti |
21:33 |
|
SFENCE joined #luanti |
22:04 |
|
Kimapr_ joined #luanti |
22:09 |
|
SFENCE joined #luanti |
22:34 |
|
panwolfram joined #luanti |
22:45 |
|
Verticen joined #luanti |
23:05 |
|
Eragon joined #luanti |
23:17 |
|
Fleckenstein joined #luanti |
23:51 |
|
FileX joined #luanti |
23:55 |
|
SFENCE joined #luanti |