06:04 < bridge> I'm redoing my CMake DDNet build thing again, since I got a new PC and 06:04 < bridge> where's.. where's the DDNet section? 06:04 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1083978816940167219/image.png 06:05 < bridge> I'm redoing my CMake DDNet build thing again, since I got a new PC and 06:05 < bridge> where's.. where's the DDNet project? 06:05 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1083978816940167219/image.png 06:05 < bridge> I followed all the steps as close as I could, but isn't there supposed to be a DDNet project under crapnet? 07:02 < bridge> game-client 08:00 < bridge> Wasn't CMake built into Visual Studio? 08:00 < bridge> How do you get that up again? 08:01 < bridge> Like, the DDNet github says you have to manually use the CMake app, but when I was doing my pull requests it was just in Visual Studio 09:31 <+ChillerDragon> the things on the screenshots are targets you can build those are executables 09:31 <+ChillerDragon> i think wait whats flew and gmock doing there haha 09:43 < bridge> cmake is standalone 09:44 < bridge> visual studio just has integrated it 09:44 < bridge> for ppl who dont know 09:47 < bridge> Ryo windows pro 09:48 < bridge> So I Download 20gb and wait 10hours to get a slow sluggish ide that doesn’t have a build system ? 09:48 < bridge> xd 09:58 < bridge> i installed cmake support on my VS 09:58 < bridge> i just forgot how to like make it run 10:00 < bridge> because im watching chiller's guide to build clients again and im doing it all right except for the fact that, in the video cmake is running in VS, while in my case its kind of.. not? 10:02 < bridge> :justatest: 10:02 < bridge> do you think this is related to my problem or was that completely different 10:03 <+ChillerDragon> honestly i always thought vs ships cmake 10:04 <+ChillerDragon> https://cmake.org/download/ if ryo is right you can give downloading cmake a try 10:04 <+ChillerDragon> then reopen vscode 10:04 <+ChillerDragon> vs* 10:04 < bridge> i have cmake 10:04 <+ChillerDragon> oh 10:04 <+ChillerDragon> hm 10:04 < bridge> i have both the app and the support in VS LOL 10:04 <+ChillerDragon> and it just doesnt run? 10:05 <+ChillerDragon> did you open vs in the correct folder? 10:05 <+ChillerDragon> send some screenshots 10:05 <+ChillerDragon> that show as much as possible not some crops 10:06 < bridge> i clone the repo, and normally theres an output box at the bottom that decompiles everything 10:06 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1084039664140308522/image.png 10:08 < bridge> it was completely automatic and all i really had to do is go into the folder and it started 10:08 < bridge> and then i follow the rest of your build tutorial and everything would be fine 10:09 < bridge> what else should i show 10:12 <+ChillerDragon> https://zillyhuhn.com/cs/.1678525921.png 10:12 <+ChillerDragon> at the top can you click on the dropdown 10:12 <+ChillerDragon> to pick the DDNet executable? 10:13 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1084041282030145606/image.png 10:13 <+ChillerDragon> iirc this is bad 10:13 <+ChillerDragon> xd 10:13 < bridge> i didnt compile it with cmake yet, this was JUST cloned so 10:13 < bridge> i didnt decompile it with cmake yet, this was JUST cloned so 10:13 < bridge> should i decompile with cmake app and show what that looks like 10:14 <+ChillerDragon> yea whatever that means xd 10:15 <+ChillerDragon> as far as i remmeber it it was right click open vs here and it just works :D 10:15 <+ChillerDragon> im so tempted to boot in windows now and redo the compile tut 10:16 <+ChillerDragon> but i still have ptsd from my last windows boot when i debugged a chillerbot issue :D 10:17 <+ChillerDragon> i noticed so many users have bors +r powers these days. Is there a discord role we can ping to merge something? :D like @bors 10:17 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1084042367251787837/image.png 10:17 <+ChillerDragon> how do u open vs 10:17 <+ChillerDragon> but looks kinda good 10:18 <+ChillerDragon> what does configzre srartup project show? 10:18 < bridge> open the app and click the folder where i cloned the repo 10:18 < bridge> usually it **should** work as intended 10:18 <+ChillerDragon> ah 10:18 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1084042738909073448/image.png 10:18 <+ChillerDragon> could you try the other way around for me but its probably same result 10:19 <+ChillerDragon> go in explorer to the code and then right click -> open vs here 10:19 <+ChillerDragon> i assume its same tho 10:19 <+ChillerDragon> i do not recognize much from my windows days 10:19 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1084042964319342632/image.png 10:19 < bridge> OH THIS is a good sign 10:19 <+ChillerDragon> @fokkonaut is the only vs fan i know he might be up to speed with recent versions 10:20 <+ChillerDragon> yea clicking random buttons is also what i would do at this point 10:20 < bridge> So I set the source directory to the Source folder or the decompiled folder? 10:21 <+ChillerDragon> what is a decompiled folder xd 10:22 <+ChillerDragon> make the source the whole folder you cloned 10:22 <+ChillerDragon> that contains the CMakeLists.txt 10:22 <+ChillerDragon> ok fak it im booting into windows now xd 10:25 < bridge> Okay, so I was in the build folder, and since I had to do the entire clone I exited out and went in there, but CMake was still off. 10:25 < bridge> I tried to go into the settings to enable it but 10:25 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1084044308442787961/image.png 10:25 < bridge> And then the program crashes 10:28 < bridge> usually to run cmake after clone project you need just open CMakeLists.txt in root and press ctrl+s or save, it's trigger cmake refresh 10:28 < bridge> if any error maybe it was not installed or installed wrong 10:53 <+ChillerDragon> how does rust even affect the windows build these days? whats the recommended way of installing rust on windows? 11:00 <+ChillerDragon> oh wow windows released a package manager in 2020 has anyone tried `winget`? 11:03 < bridge> // https://keivan.io/the-day-appget-died/ 11:03 <+ChillerDragon> ms moment 11:08 <+ChillerDragon> aw shit thats a sad story they yoinked his appget ._. 11:09 <+ChillerDragon> but im really tempted to use winget instead of choco. The choco logo is just soo ugly. And if windows is pushing it its probably just getting stronger. And seems like they yoinked all the appget things which seem nice to me at first glance. 11:10 <+ChillerDragon> he did make it in the readme tho so its not that they silently stole it and removed his credits 11:18 <+ChillerDragon> seems like windows users just combine package managers scoop + choco + winget haha what a mess 11:23 < bridge> it has numerous build systems 11:25 < bridge> rustup 11:26 < bridge> it’s alright. kind of a wrapper around registry un/install stuff and doesn’t use the pkg management API as much as it should 11:26 <+ChillerDragon> rustup runs on windows? 11:26 < bridge> why wouldn’t it 11:27 <+ChillerDragon> because its windows idk 11:27 < bridge> 😕 11:27 <+ChillerDragon> so every windows user needs to install rustup to build ddnet is that in the docs? 11:28 < bridge> did you run cmake (generate the makefiles)? it should error there if it has dependency location issues or anything of the sort, most things that would mysteriously fail would happen in the generation step 11:28 < bridge> wdym decompile 11:29 < bridge> idk how that’s exclusive to windows 11:29 < bridge> there are obviously other ways 11:41 <+ChillerDragon> what da heck is C:\Strawberry and why is uninstalling vs harder than installing it im so lost on windows honestly i cant even delete a folder 11:43 <+ChillerDragon> also how to rebind volume keys without installing malware? windows is the hardest os there is 11:59 < bridge> Strawberry Perl 11:59 < bridge> Uninstalling VS is very easy, what issues are you having 12:00 < bridge> Can’t 12:01 < bridge> They are not sent to the receiving applications through a media control server, they are sent as raw event data like all other keyboard data. Or at least, that’s how it used to be, and the OS shell media shit doesn’t allow for remapping 12:06 <+ChillerDragon> im super nervouse on windows somehow :D 12:06 <+ChillerDragon> deleting the vs folder says a program is using it going through the windows uninstall programs ui the uninstall button is greyed out 12:07 < bridge> well yeah??? 12:07 < bridge> use the VS installer to uninstall it 12:07 < bridge> it’s way more than just the app. many SDKs and shit littered around the disk 12:07 < bridge> then you can uninstall the installer 12:09 <+ChillerDragon> i started with that 12:09 <+ChillerDragon> first i updated the vs installer 12:09 <+ChillerDragon> then i installed all using the vs installer 12:09 <+ChillerDragon> then i manually deleted 20 c++ thingies using the uninstall button 12:09 <+ChillerDragon> then i run some choco uninstall script 12:09 <+ChillerDragon> then i deleted a bunch of folders in C:\ 12:10 < bridge> Did you restart already? 12:10 <+ChillerDragon> yea once 12:10 < bridge> Some files are only deleted after restarting 12:10 <+ChillerDragon> still greyed out 12:10 <+ChillerDragon> but yea ima go again 12:10 <+ChillerDragon> since i just emptied my trash bin which required admin priv haha 12:10 <+ChillerDragon> it all feels like such a meme 12:10 <+ChillerDragon> and gcc is still found 12:11 <+ChillerDragon> ah ye mingw is still there 12:11 <+ChillerDragon> idk how to properly uninstall that 12:11 <+ChillerDragon> there is no mingw installer and it doesnt appear in programs and features 12:11 <+ChillerDragon> i even installed the cygwin installer to uninstall it but didnt help 12:12 <+ChillerDragon> im about to delete C:\MinGW :nuke: 12:13 <+ChillerDragon> yea that removed the last gcc i had in path poggies 12:15 <+ChillerDragon> yo @Robyt3 are you windows main user? u have some tips on how to setup stuff? 12:15 <+ChillerDragon> what package manager do you use? 12:16 <+ChillerDragon> holy shit whats C:\Qt 42GB :D 12:16 <+ChillerDragon> ima delete shit until my system breaks! 12:31 < bridge> Most Windows users don't even know what a package manager is lol 12:32 < bridge> For most of the past you go to the website of the program and download the installer (additional skill is required to avoid malware links) 12:32 < bridge> Windows Store is basically a package manager, but I refuse to use it 12:32 < bridge> For all development tools I use MSYS2 12:34 <+ChillerDragon> how do you keep them up to date? 12:34 <+ChillerDragon> my current speedrun on a fresh machine to compile ddnet on linux is around 10mins and on windows around 1 hour 12:34 < bridge> Windows Store can auto-update, MSYS2 has `pacman -Syuu` (run twice), some programs have auto-updater included, other programs need to be redownloaded from the website 12:35 <+ChillerDragon> pacman? :D 12:35 <+ChillerDragon> where do you run pacman? in powershell? 12:35 < bridge> Yeah, that's the package manager in MSYS2 12:35 <+ChillerDragon> mysys2 ships its own emulator and shell right? 12:35 < bridge> I run it in "MSYS2 MSYS" 12:35 <+ChillerDragon> i think i have seen it earlier on my uninstall hunt 12:35 < bridge> Yeah, it should include almost everything 12:36 <+ChillerDragon> so you only use this terminal 12:36 <+ChillerDragon> no powershell no cmd etc? 12:36 < bridge> I also installed MinGW via MSYS2 because it was a mess before that 12:36 <+ChillerDragon> no wsl? 12:36 < bridge> Not for updating 12:36 < bridge> Haven't tried using WSL yet 12:36 <+ChillerDragon> ou no? 12:36 <+ChillerDragon> its pretty dope 12:36 <+ChillerDragon> (typed from my wsl) 12:36 <+ChillerDragon> in win11 it even allows you to run linux gui apps 12:36 < bridge> Haven't had the need yet, MSYS2 also does the trick 12:37 <+ChillerDragon> and you install msys2 how? 12:37 < bridge> And I'll skip Win 11 and go straight to Win 12 12:37 <+ChillerDragon> fair 12:37 <+ChillerDragon> will win12 be any better? 12:37 < bridge> Hopefully better than Win 11 12:37 <+ChillerDragon> isnt it building on top of that? 12:38 < bridge> From the feedback I see online it's like an open beta where users are supposed to find the bugs 12:38 < bridge> Not something I want to use in production 12:38 <+ChillerDragon> btw i finally found a way to continue uninstalling the last 2 vs i had in some legacy win ui i am waiting since 10 min for it to apply the uninstaller in some fancy gui 12:38 < bridge> https://www.msys2.org/wiki/MSYS2-installation/ 12:39 <+ChillerDragon> is msys2 any new? 12:39 <+ChillerDragon> im a big confused with msys2 mingw and cygwin 12:39 <+ChillerDragon> bit* 12:39 <+ChillerDragon> but big also works i guess 12:39 < bridge> I read somewhere that cygwin would be somewhat more performant than mingw, but I don't have any issues with MinGW 12:39 <+ChillerDragon> is it arch like and the same pacman from archlinux? 12:40 < bridge> I installed MinGW in MSYS2, so I can update it from there 12:40 <+ChillerDragon> yea you mentioned that but why 12:40 <+ChillerDragon> why not use msys directly? 12:40 <+ChillerDragon> doesnt it ship a windows c compiler? 12:40 < bridge> So I don't have to download the individual tools and libraries 12:41 <+ChillerDragon> do you have vs installed? 12:41 < bridge> It caused issues in the past where I had different versions of tools mixed together 12:41 < bridge> Yeah, but I rarely use VS 12:41 <+ChillerDragon> i see 12:41 <+ChillerDragon> what editor u use? 12:41 < bridge> For ddnet I just use Sublime Text 12:41 < bridge> For Java I use Eclipse 12:41 <+ChillerDragon> and the shell in msys2 is bash? 12:42 < bridge> Yeah, bash is included in MSYS2 12:42 <+ChillerDragon> and `pwd` prints what? `C:\Users\etc..` ? 12:42 < bridge> ``` 12:42 < bridge> C:\Users\Robert>pwd 12:42 < bridge> /c/Users/Robert 12:42 < bridge> 12:42 < bridge> C:\Users\Robert>which bash 12:42 < bridge> /usr/bin/bash 12:42 < bridge> ``` 12:42 < bridge> It does some path mapping I guess 12:42 <+ChillerDragon> interesting 12:43 < bridge> <<~{Barsik}~>> vcpkg? 12:43 <+ChillerDragon> amazing it uses / and \ 12:43 <+ChillerDragon> xd 12:43 < bridge> So /usr/bin maps to a folder in the MSYS2 installation 12:43 <+ChillerDragon> in wsl its some /mnt/c/ etc 12:44 < bridge> At this point everything works for me, so I don't really want to break my build process again 12:44 <+ChillerDragon> yea sounds sane 12:44 <+ChillerDragon> i mean mine worked super solid too 12:44 <+ChillerDragon> but its like a 10 yr old win machine i learned developing on so it was such a mess 12:45 <+ChillerDragon> not that i care about this win setup but i guess it would make sense to update my win compile tutorial 12:45 <+ChillerDragon> to be less bloated 12:46 <+ChillerDragon> the msys2 setup seems sane 12:47 <+ChillerDragon> ok lol so the ideal windows development environment is archlinux? xd https://stackoverflow.com/a/25755481 12:47 <+ChillerDragon> good meme 13:32 <+ChillerDragon> da hegg is nmake? 13:33 <+ChillerDragon> https://paste.zillyhuhn.com/mS 13:33 <+ChillerDragon> does discord preview the paste snippets btw? 13:34 < bridge> no 13:35 < bridge> https://www.reddit.com/r/ProgrammerHumor/comments/11ofqw6/too_smart_to_get_played/ 13:35 <+ChillerDragon> sad 13:36 <+ChillerDragon> fstd check useragent for discord crawler and send previewable paste html in pstd :p 13:36 < bridge> There is no preview because https://paste.zillyhuhn.com does not support The Open Graph protocol for that (https://ogp.me). 13:37 <+ChillerDragon> what kaffeine said fstd ^ 13:37 <+ChillerDragon> wait only image not plain text or html? 13:37 <+ChillerDragon> are you saying pastebin is creating a image of the text for the preview? 13:43 <+ChillerDragon> https://paste.zillyhuhn.com/tI 13:43 <+ChillerDragon> does this work? xd 13:44 <+ChillerDragon> i guess i could adapt my paste post script to wrap it in thise tags thanks @Kaffeine 13:51 < bridge> it shows this 13:51 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1084096290260013166/image.png 14:01 <+ChillerDragon> looks hot doesnt it? 14:02 <+ChillerDragon> thanks for the image btw 14:39 < bridge> ey is there anyway to render keystrokes while rendering a demo? 14:40 < bridge> Raw keystrokes are not recorded in demos, so that's not possible 14:41 < bridge> i can see them in the demo so why arent they enabled while rendering? 14:41 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1084108856524812408/image.png 14:43 < bridge> Check cl_video_showhud and cl_video_show_direction variables 14:47 <+ChillerDragon> TIL running cmake . in the project root instead of a build folder puts a cache file there and when later moving to a build folder you can delete its content all you want it will use the parent folders cache 14:48 <+ChillerDragon> only took me 2h to figure out 14:50 < bridge> kk ty 15:17 <+ChillerDragon> windows is easy they said 15:17 <+ChillerDragon> ``C:/Users/Chiller/Desktop/teeworlds/src/engine/shared/demo.cpp:129:1: internal compiler error: in i386_pe_seh_unwind_emit, at config/i386/winnt.c:1275`` 15:18 < bridge> is this msvc? 15:19 <+ChillerDragon> its scoops gcc 15:19 <+ChillerDragon> https://scoop.sh/#/apps?s=0&d=1&o=true&q=gcc&id=fd50c09a38b69bd72e3483de086df59b976dcfbd 15:20 < bridge> perhaps that is the problem? ^^ 15:20 <+ChillerDragon> ima try clang 15:20 < bridge> I wouldn't call it the windows way if you're downloading gcc :p 15:20 <+ChillerDragon> ok fair 15:20 <+ChillerDragon> im not using msys mingw or cygwin tho 15:21 <+ChillerDragon> im trying to find the fastest windows compile setup 15:21 <+ChillerDragon> shit clang has the same error 15:21 <+ChillerDragon> thats weird 15:23 < bridge> why not try msvc? 15:23 < bridge> I am currently re-implementing my gRPC/Protobuf stuff into DDNet but somehow it wont work 15:23 < bridge> 15:23 < bridge> In my cmake/* I do have a file called "FindGRPC.cmake": 15:23 < bridge> ``` 15:23 < bridge> find_package(Protobuf REQUIRED) 15:23 < bridge> include_directories(${PROTOBUF_INCLUDE_DIRS}) 15:23 < bridge> include_directories(${CMAKE_CURRENT_BINARY_DIR}) 15:23 < bridge> 15:23 < bridge> include(FetchContent) 15:23 < bridge> FetchContent_Declare( 15:23 < bridge> gRPC 15:23 < bridge> GIT_REPOSITORY https://github.com/grpc/grpc 15:24 < bridge> GIT_TAG v1.52.1 # e.g v1.28.0 15:24 < bridge> ) 15:24 < bridge> set(FETCHCONTENT_QUIET OFF) 15:24 < bridge> FetchContent_MakeAvailable(gRPC) 15:24 < bridge> ``` 15:24 < bridge> 15:24 < bridge> Which is working so far ( it clones the repository and all of its submodules ) 15:24 < bridge> 15:24 < bridge> In the CMakeList I've added 15:24 < bridge> ``` 15:24 < bridge> add_library(proto-objects OBJECT "${CMAKE_CURRENT_LIST_DIR}/proto/server.proto") 15:24 < bridge> 15:24 < bridge> target_link_libraries(proto-objects PUBLIC protobuf::libprotobuf gRPC::grpc gRPC::grpc++_unsecure) 15:24 < bridge> 15:24 < bridge> set(PROTO_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/src/game/generated") 15:24 < bridge> set(PROTO_IMPORT_DIRS "${CMAKE_CURRENT_LIST_DIR}/proto") 15:24 < bridge> 15:24 < bridge> protobuf_generate( 15:24 < bridge> LANGUAGE cpp 15:24 < bridge> But it fails with 15:24 < bridge> ``` 15:24 < bridge> CMake Error at /usr/share/cmake-3.18/Modules/FindProtobuf.cmake:227 (add_custom_command): 15:24 < bridge> add_custom_command called with OUTPUT containing a "<". This character is 15:24 < bridge> not allowed. 15:24 < bridge> Call Stack (most recent call first): 15:24 < bridge> CMakeLists.txt:1880 (protobuf_generate) 15:24 < bridge> ``` 15:24 < bridge> It worked on my previous attempt, but only if I install everything globally on the system which is not best practice & recommended by Google 15:25 <+ChillerDragon> @heinrich5991 how do you recommend installing msvc? whats that again the vs compiler? 15:47 <+ChillerDragon> ok i give up wont redo my windows compile tut :D 15:48 <+ChillerDragon> i guess there is a reason nobody seems to use scoop :D 15:53 < bridge> I guess check where thte `<` comes from 15:57 <+ChillerDragon> yea whats at ``/usr/share/cmake-3.18/Modules/FindProtobuf.cmake:227`` ? 15:58 <+ChillerDragon> and ``CMakeLists.txt:1880`` 15:58 <+ChillerDragon> i guess on irc only half of the output arrived due to ratelimit 15:59 <+ChillerDragon> could you just link your repo? 16:42 < bridge> link repo? It's fucking gores man 😄 16:42 < bridge> it's closed source 17:02 < bridge> gores bad 17:03 < bridge> agpl would have prevented that 17:05 < bridge> github should have a button on a repo that says "go to your fork" or smth 17:06 < bridge> click the fork button 17:06 < bridge> I think 17:07 < bridge> ah not the button but the down arrow 17:07 < bridge> it shows ur forks 17:07 < bridge> good to know 17:08 < bridge> updated twmap to 0.10 17:08 < bridge> didnt know about the vek crate 17:08 < bridge> https://crates.io/crates/vek 17:08 < bridge> twmap uses it 17:08 < bridge> https://github.com/yoanlcq/vek/wiki 17:12 < bridge> What exactly should be bad about being closed source? 17:12 < bridge> You're working on DDNet, its open source. Everything you wanna do, you can 17:13 < bridge> my four essential freedoms are not met 17:14 < bridge> ``` 17:14 < bridge> The freedom to run the program as you wish, for any purpose (freedom 0). 17:14 < bridge> The freedom to study how the program works, and change it so it does your computing as you wish (freedom 1). Access to the source code is a precondition for this. 17:14 < bridge> The freedom to redistribute copies so you can help others (freedom 2). 17:14 < bridge> The freedom to distribute copies of your modified versions to others (freedom 3). By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this. 17:14 < bridge> ``` 17:14 < bridge> You can host Gores maps with DDnet 17:14 < bridge> my client is communicating with a closed source software 17:14 < bridge> You dont have to play on KoG-Gores 17:14 < bridge> u wont win on this on me 17:14 < bridge> So basically even if we open source kog, you still would have conflicts 17:14 < bridge> Our maps provider is cloudflare R2 17:14 < bridge> why? 17:15 < bridge> hmm yeah but my conflicts would be with cloudflare 17:15 < bridge> So you are downloading maps from a closed source system 17:15 < bridge> Yeah 17:15 < bridge> agpl would have prevented closed source kog 17:15 < bridge> shame 17:15 < bridge> is the video recorder broken for anyone else 17:16 < bridge> Still the question, what benefit would you get from kog source? 17:16 < bridge> my freedoms i listed 17:16 < bridge> gRPC & Redis intregation? 17:16 < bridge> if you dont value those, thats on you 17:16 < bridge> i value them highly 17:16 < bridge> You can host gores maps with DDNet, which is open source 17:16 < bridge> Dont get the point 17:16 < bridge> nnono 17:16 < bridge> you dont get the point 17:16 < bridge> but its ok 17:16 < bridge> your a closed source dev 17:16 < bridge> 🙂 17:17 < bridge> we simply have different values 17:17 < bridge> i value user freedom 17:17 < bridge> you value... having a closed source network? whathever 17:17 < bridge> I am working on a lot of open source tools & maintain them, but in kog I dont see any benefit or value for going open source 17:17 < bridge> Only more overhead 17:17 < bridge> thats such a lame excuse ngl 17:18 < bridge> 🤓 17:18 < bridge> No excuse, just hitting the hard facts. Maintaining an open source project adds overhead 17:18 < bridge> i dontsee facts here, only a scared person 17:18 < bridge> If you get paid for it, its different 17:19 < bridge> you can make ur it open source and be a total dictator about the code in ur repo 17:19 < bridge> its fine if u dont want to be BDFL for the project 17:19 < bridge> you can even totally dismiss any contribution 17:19 < bridge> yet be open source 17:19 < bridge> others can fork, investigate, learn, improve on their own 17:19 < bridge> u dismiss user freedom by a lame excuse 17:20 < bridge> Its DDNet 😄 17:20 < bridge> Download DDNet recent version & you do have KoG 17:20 < bridge> its ok this is worthless xd 17:22 < bridge> u know ryo u wont change anyones mind the way you argue 17:22 < bridge> honestly, i never expect them to change their mind, cuz people rarely change 17:23 < bridge> i know im a bit overbearing, but thats how i am 17:38 <+ChillerDragon> @Avolicious if nobody benefits from kog code whats the harm in sharing it? i mean you can also apply your changes to ddnet and share that code base i do not mind. But i would like to run cmake my self and play around with it 17:40 <+ChillerDragon> ah didnt read the overhead part? whats the overhead? having to maintain community made prs and issues? 17:40 <+ChillerDragon> i guess there is read only open source too 17:40 < bridge> One of it 17:40 <+ChillerDragon> tw does that :D 17:40 < bridge> Mostly support 17:41 <+ChillerDragon> just dont support then? 17:41 < bridge> This is not my philosophy of being open source 17:41 <+ChillerDragon> ok 17:41 <+ChillerDragon> did u fix grpc yet? 17:41 < bridge> Yeah 17:41 <+ChillerDragon> poggies 17:41 < bridge> Currently fixing some stuff for Alpine and GLIBC 17:42 <+ChillerDragon> kubernetes moment 17:42 < bridge> We do use K3s 17:42 <+ChillerDragon> tons of work zero useful 17:42 <+ChillerDragon> xaxaxax 17:42 < bridge> But the containers are currently around 500MB to 1GB in total size 17:42 <+ChillerDragon> im big docker/kubernetes hater 17:43 < bridge> I have now managed to use alpine with glibc and go down to 40 MB 17:43 <+ChillerDragon> gj 17:43 < bridge> So you are not a big fan of being scalable 17:43 < bridge> chiller did u know kubernetes and such astuff is the only way to web scale? 17:43 <+ChillerDragon> well thats the only argument people ever bring 17:43 < bridge> kek 17:43 <+ChillerDragon> but i dont buy it 17:44 <+ChillerDragon> i can also scale w out kubernetes 17:44 < bridge> i also dont buy it 17:44 <+ChillerDragon> btw wat u need grpc for? 17:44 < bridge> Not within a reasonable timeframe 17:44 <+ChillerDragon> how does it scale faster? 17:44 < bridge> Get rid of mysql support ^^ 17:44 <+ChillerDragon> oof 17:44 < bridge> add mongodb 17:44 < bridge> it is web scale 17:44 <+ChillerDragon> wdym? 17:44 <+ChillerDragon> xd 17:44 <+ChillerDragon> xxxxxxxxxxxxxxD 17:44 <+ChillerDragon> it supports sharding 17:44 < bridge> https://www.youtube.com/watch?v=b2F-DItXtZs 17:45 <+ChillerDragon> how does grpc replace mysql? 17:45 < bridge> i guess he fetches and sends data using grpc calls 17:45 < bridge> Yes 17:45 < bridge> instead of having the mysql client in the client 17:45 < bridge> Correct 17:45 <+ChillerDragon> ah i see 17:45 < bridge> Bans are also synced across the fleet 17:45 < bridge> well server* 17:46 < bridge> FIFO files are not used anymore 17:46 <+ChillerDragon> so you implement your own database protocol? 17:46 <+ChillerDragon> sounds like work 17:46 < bridge> does grpc use protobuf 17:46 <+ChillerDragon> where do you store it in the end? still mysql? 17:46 < bridge> No, it terminates at the gRPC server 17:46 < bridge> yes 17:46 < bridge> or do they bloat with json 17:46 < bridge> xd 17:46 < bridge> No 17:46 < bridge> protobuf 17:46 < bridge> Its SQL, yes 17:46 <+ChillerDragon> ok back to scaling 17:46 < bridge> https://github.com/hyperium/tonic 17:46 < bridge> pog library 17:47 <+ChillerDragon> you have like what? around 10 vps for kog running kubernetes clusters on them? if the load gets too high how do you scale? 17:47 < bridge> honestly grpc is not a bad idea 17:47 < bridge> well idk what deps it adds 17:47 < bridge> Using Terraform to get more servers if available 17:47 <+ChillerDragon> i see 17:48 < bridge> but its hilarious cuz ddnet is double or triple the size 17:48 < bridge> and makes do 17:48 < bridge> xd 17:48 <+ChillerDragon> but then u scale using terraform not using kubernetes 17:48 < bridge> Wrong 17:48 <+ChillerDragon> xd 17:48 < bridge> im also ootl on the words and programs for this 17:48 <+ChillerDragon> you could also run a apt install and a git clone ur self 17:48 < bridge> but i never needed it either 17:48 <+ChillerDragon> or via terraform i mean 17:48 < bridge> its like preparing for the apocalipse when just spinning 1 server would do 17:49 <+ChillerDragon> its one pod per tw server anyways right @Avolicious? 17:49 <+ChillerDragon> you can just scale up more servers right? 17:49 < bridge> Yes 17:49 < bridge> scale up to the moon 17:49 < bridge> Correct 17:49 < bridge> 🚀 17:49 <+ChillerDragon> but do you actually do that? 17:49 < bridge> Yes 17:49 <+ChillerDragon> scale down servers and up again depending on the user load? 17:49 < bridge> We use ArgoCD for our deployment 17:49 < bridge> No 17:49 <+ChillerDragon> idk dat 17:50 < bridge> There is no dynamical scaling enabled yet 17:50 <+ChillerDragon> do you manually trigger it? 17:50 < bridge> Yes 17:50 <+ChillerDragon> how often? 17:50 < bridge> Depends on if we get a new location or not 🙂 17:50 <+ChillerDragon> im still not convienced somehow 17:51 < bridge> The more enjoyable part is the maintenance 17:51 <+ChillerDragon> deen for example also just runs a provision script on a new location and is ready pretty fast 17:51 < bridge> its cuz he enjoys the tech 17:51 < bridge> ArgoCD keeps everything in sync, dont need to do anything on the hosts itself 17:51 < bridge> so he uses it 17:51 < bridge> Using Ansible to keep them updates 17:51 <+ChillerDragon> like what? os updates? 17:51 < bridge> Using Ansible to keep them updated 17:51 <+ChillerDragon> hm 17:51 < bridge> No 17:51 < bridge> Ansible for Host stuff, ArgoCD for the K3s 17:51 < bridge> Terraform for git declarative infrastructure 17:51 <+ChillerDragon> jesus u use it all 17:51 < bridge> xd 17:52 < bridge> a mad sysadmin 17:52 <+ChillerDragon> how much time do you spend on setting it up? 17:52 < bridge> Not that much, using it for big scale projects in my daily work 17:52 <+ChillerDragon> and was it worth saving on running apt update every now and then? 17:52 < bridge> It is indeed 17:52 < bridge> SSH Key rotation works like a charm 17:52 < bridge> idk if i would trust auto appt updates 17:53 <+ChillerDragon> why do you rotate ssh keys? 17:53 <+ChillerDragon> i inherited mine from my grand pa 17:53 < bridge> he gotta protect the source code with max security 17:53 <+ChillerDragon> i see 17:53 < bridge> Mostly security 17:53 < bridge> We use HashiCorp Vault for secrets and HashiCorp Boundary for SSH 17:53 <+ChillerDragon> o dat mf 17:53 < bridge> the corporations 17:53 <+ChillerDragon> thats imo the only advantage of closed src 17:54 <+ChillerDragon> not using hashicorp 17:54 <+ChillerDragon> just put secrets in the private git repo in plain text 17:54 < bridge> We dont have secrets in the git repo 17:54 < bridge> xddd 17:54 <+ChillerDragon> but why 17:54 < bridge> Because we use a vault 17:54 <+ChillerDragon> then you do not profit on closed src 17:54 < bridge> chiller do u save ur passwords on a private repo 17:54 <+ChillerDragon> yes 17:55 < bridge> don't do it 17:55 <+ChillerDragon> i mean i can hate the new kids devops all day but i gotta admit im still interested in your setup 17:55 <+ChillerDragon> why not heinrich? 17:56 < bridge> because git repos tend to become public at some point :p 17:56 <+ChillerDragon> ?xd 17:56 <+ChillerDragon> wdym 17:56 < bridge> chiller did u ever use pass 17:56 <+ChillerDragon> yes 17:56 <+ChillerDragon> its my main pw manager 17:56 < bridge> nice 17:56 <+ChillerDragon> for work and private 17:57 <+ChillerDragon> how does a git repo tend to become more public than some annoying secret vault? 17:57 < bridge> Why should it be annoying? 17:57 <+ChillerDragon> i used it bro 17:57 <+ChillerDragon> i was annoyed 17:57 < bridge> Maybe you used it wrong 17:57 < bridge> 🤔 17:57 <+ChillerDragon> ye for sure i did 17:57 < bridge> well ur vault is probs encrypted 17:58 <+ChillerDragon> probably also use kubernetes and ansible wrong xd 17:58 < bridge> Might be 17:58 < bridge> The interesting part is hashicorp vault sidecar for k3s/k8s 17:58 <+ChillerDragon> but i gotta say the little xp i have with terraform was pleasing 17:59 <+ChillerDragon> how did u convince the old russian to bloat in all that crap? :D 17:59 < bridge> Who? 17:59 <+ChillerDragon> no front 17:59 <+ChillerDragon> qshar 18:00 <+ChillerDragon> or did he rq already? 18:00 < bridge> is qshar active 18:00 < bridge> No need to convince 18:00 < bridge> It was part of the maintenance project 18:00 < bridge> whenver i go to kog discord i only see rly stupid discussions xd 18:00 < bridge> Making it easier 18:00 <+ChillerDragon> kog discord doesnt have any bridges 18:00 <+ChillerDragon> its sad 18:01 <+ChillerDragon> does qshar now use all the k3s stuff instead of whatever he had before? 18:01 <+ChillerDragon> how hands on is he these days? 18:01 < bridge> There is no need to do anything with k3s 18:01 <+ChillerDragon> seems like you kinda fully overhauled his infrastructure 18:01 <+ChillerDragon> does he even understand how it works? :D 18:01 < bridge> Why shouldnt he? 18:01 < bridge> Qshar is a smart guy 18:01 <+ChillerDragon> uhm idk because you did it? 18:02 < bridge> So because I used modern tech, nobody else would know how it works? 18:02 <+ChillerDragon> what did he use before? 18:02 < bridge> Before servers where setup semi-automatic 18:03 < bridge> which leads to high maintenance times 18:03 <+ChillerDragon> ok whatever that means sounds different than the current setup 18:03 < bridge> Its different of course 18:03 <+ChillerDragon> so one has to learn that right? 18:03 < bridge> Yes 18:03 <+ChillerDragon> if someone replaces your infrastructure isnt there a chance it can be confusing? 18:04 < bridge> Why should it be? 18:04 < bridge> Everything is documented 18:04 <+ChillerDragon> xd 18:04 <+ChillerDragon> ok 18:04 <+ChillerDragon> maybe i should ask qshar him self you clearly think its all obvious 18:04 < bridge> Go for it 🙂 18:04 <+ChillerDragon> if its all documented why not make it open source then? xd 18:04 < bridge> What would be the benefit? All of it is available for anyone 18:05 < bridge> Do you want my configuration files 18:05 < bridge> ? 18:05 <+ChillerDragon> yes 18:05 < bridge> Ah I see 18:05 < bridge> Thats not how open source works ^^ 18:05 <+ChillerDragon> why not? 18:05 < bridge> All tools we are using are free to use for everyone 18:05 < bridge> Mostly all of them are open source 18:05 < bridge> Configuration is not open sourceable 18:05 <+ChillerDragon> you clearly have at least one repo with infrastructure as code right? 18:05 < bridge> Yes 18:06 <+ChillerDragon> why is it not opensourceable? 18:06 < bridge> Because the configuration is based upon our network & how we would like to run it 18:06 <+ChillerDragon> so? 18:06 < bridge> Network configuration differs 18:06 < bridge> DDNet runs their servers different than we do 18:06 <+ChillerDragon> ok 18:06 < bridge> might still be interesting to look at though 18:06 <+ChillerDragon> and? 18:07 < bridge> like the ddnet-scripts repo 18:07 < bridge> also not really useful for others 18:07 <+ChillerDragon> i still look at ddnet scripts that have hardcodet paths with deen in them xd 18:07 < bridge> but still interesting 18:07 <+ChillerDragon> it has some useful pieces actually 18:08 <+ChillerDragon> if you go through the effort of using secret vaults and documenting everything might as well share it right? 18:08 < bridge> If I'll find the time, I'll write a blog post about it 18:09 <+ChillerDragon> xd also cool 18:09 <+ChillerDragon> but there is no need to put in additional work to share what you currently have 18:10 <+ChillerDragon> im sure you also just find secret vaults annoying and the repo is full of confidental stuff hehe :p 18:10 < bridge> True, just open sourcing all our config files would be no effort 18:10 <+ChillerDragon> are you being irconic? 18:10 <+ChillerDragon> ironic* 18:10 <+ChillerDragon> a 18:10 < bridge> But I dont see any benefit yet of open source our configuration, its highly built upon how we run our clusters 18:10 <+ChillerDragon> i dont see a harm 18:10 <+ChillerDragon> the benefit is i want to see it 18:11 < bridge> Thats easy 18:11 < bridge> https://developer.hashicorp.com/terraform/language 18:11 < bridge> https://developer.hashicorp.com/vault/docs 18:11 < bridge> https://docs.ansible.com/ 18:11 <+ChillerDragon> omg 18:11 <+ChillerDragon> trol 18:11 <+ChillerDragon> ok i go rq 18:12 < bridge> All we used is also being written in the official docs, no hidden secret sauce, trust me 18:13 <+ChillerDragon> yo @fokkonaut next time someone asks for fddr code just link c++ standard and say its all in there xd 18:13 < bridge> xd 18:16 < bridge> the kog source code is here 18:16 < bridge> https://libraryofbabel.info/ 21:06 < bridge> One day I'll bother with writing ansible playbooks to deploy ddnet servers 21:37 < bridge> sounds cool 🙂 21:37 < bridge> do you know ansible? 21:38 < bridge> ansible, terraform, etc.. 21:39 < bridge> All of that are cool 21:54 < bridge> Thats fun 22:25 < bridge> A fair bit though I've never written any playbook to be deployed, so not sure if counts 😄