#dev-general
1 messages ยท Page 509 of 1
lol
I, and I'm sure other will too, refuse to provide support for obfuscation
im a bit scared since thats 7 restactions in each reaction...
why?
no obfuscation is one of the development commandments lol
why not?
- Thou shalt not obfuscate
- Thou shalt not use digital rights management
- Thou shalt release the source to thy code under a license approved by the Open Source Foundation
because I don't agree with it
- it's always leaked anyways, just google "anypaidpluginhere" leaked, not saying you should use them btw, they're probably backdoored or smth
- no contributers besides people you're working with
- spigotmc doesn't even allow strong obfuscation, proving my first point even more
then why minecraft's server software has obfuscation
I am not talking about Minecraft
because companies like to do that, thinking it gives them security
alr, but still, you won't get contributers
plus obfuscators are so expensive
at least the good ones
the free ones usually just rename the fields, classes, and methods
yeah I remember looking this up, most of them are complete rip offs
thanks
https://www.zelix.com/klassmaster/order.html $532 per license for ZKM
Zelix KlassMaster is the heavy duty Java obfuscator
I don't wanna ruin your fun but jda-kotlin already has jda.on<T>() is kinda nicer than this API, then you could just wrap that with stuff if you want something more convenient
ProGuard is good enough if you really want to go that route, no real point tho
^
the harder you try to "protect" your code, the harder the people trying to figure out what it does will try
Obfuscation bad
hmm
yeah, it's one of the 3 commandments
.
does it have task UUIDs 
also that part isn't really my "fun", the actual onReactionAddCoroutine is :))
Everything doesnt need to be open source
add jda-reactor btw dkim
yea i was thinking since i saw other ppl have it, but didn't know what it did so i decided not to
actually no, jda-ktx iirc
i do
I guess
but those first two commandments are sticking
Is that really necessary
ยฏ_(ใ)_/ยฏ
1. Thou shalt not obfuscate
2. Thou shalt not use digital rights management
- Thou shalt not steal the code of others without appropriately crediting them
I dont think any company really enforces drm for common users
Its only enforced towards other companies or places where their most profit comes from
ยฏ_(ใ)_/ยฏ
๐ ๐ ๐ ๐
I mean, most of this applies to Minecraft plugins anyway lol
๐
https://github.com/BomBardyGamer/gson-kt anyone mind reviewing this?
I wanna know if there's anything I could add/change/remove
Ctrl A + Delete
why?
@jovial warren https://github.com/BomBardyGamer/gson-kt/blob/master/src/main/kotlin/me/bardy/gsonkt/dsl.kt#L34 forgot the annotation
yeah I just noticed that lol
like literally 5 seconds before you mentioned that, since I was moving something I'm adding to it 
:))
@jovial warren What is the point of annotating something with the Dsl stuff? What advantages does it have?
what should i call my github machine account
call it ardalrex
colouring mostly
but using that annotation on classes stops you from things like declaring a block inside of a block where you're not meant to
e.g. ```kotlin
dependencies {
implementation("") {
dependencies {
// not allowed with the DSL marker iirc
}
}
}
The feature you didn't even know you needed!
โ ๏ธ NOTE: For now you'll have to manually install the latest version of App Installer with the WinGet client, by copy-pasting this whole thing below into your browser URL bar (without quotes):
" ms-appinstaller:?source=https://aka.ms/getwinget "
โ Become a channel member for exclusive features! Che...
winget has been around for ages now
oh it's finally getting out of preview?
yeah
nice
everyone's going to get it in an update. I won't switch back to windows tho xD
as a matter of fact I almost got my brother to switch to linux too so I'll be removing windows completely in the future
nice
@obtuse gale hey can you teach me how to read data with Gson's TypeAdapters? it seems kinda weird tbh
writing a deserializer for ```kotlin
data class RegistryBlock(
val properties: Map<String, List<String>> = emptyMap(),
val states: List<RegistryBlockState>
)
you got all these beginObject things and what not
instance FromJSON RegistryBlock where
fromJSON elem = RegistryBlock {
properties = fromJSON $ blah elem
states = fromJSON $ blab2 elem
}
lol
you're welcome
I mean if you use a type adapter then its basically a stream where you usually peek stuff to validate if the json is in a good format then you get it and do what you want. Or like are you implementing a TypeAdapter? If you only need deserialization isnt a normal JsonDeserializer (iirc the name is that) sufficient enough?
yeah good point
anyone know how to merge two Git branches without a merge commit or rebasing?
note that these two branches don't have diverging histories, the branch that's getting merged into master is ahead by 6 commits
just go to github repo and use the fetch and merge button
actually nvm, I just needed to avoid doing a --no-ff merge
nvm then
just merged all the latest dev changes into master
the dev branch is in preparation for the system that I'm putting in place when Krypton goes stable, which is that merges into master can only come from dev, and dev is going to produce sorta pre-release development builds that can be tested
for now though, dev is just a branch I can push to that I can fuck around with without doing shit to master lol
Does anyone know how to load a dependency from a jar while server is running?
I already created the download system but I'm not sure how to add it to the classpath
usually you'd use reflection to call the URLClassLoader#addURLs method
although it's worth mentioning that doesn't work on java 16+
๐
shush
yeah can recommend SlimJar
i cannot
๐ฅฒ
that's a gradle plugin, I need to load an external jar while server running, because I want to mantain the jar light.
That includes a library lorenzo
The plugin auto adds the dependency on the library
This then injects all your dependencies at runtime whenever you want
If in a spigot plugin, onLoad is probably ideal
oh, ok
Heres an example
https://github.com/guilds-plugin/Guilds/blob/master/src/main/java/me/glaremasters/guilds/Guilds.java#L116
16 suppourt bm
we need to finish rewriting PDM
barely started
not sure we can really compete with SJ though
Whats the point lol
yeah
grrrrrrrr
maybe it's time you accept defeat BM
The only reason me and matt worked on this is because bm gave up
Rather im asking him to join lol
yeah
fine
You're in?
lol
lemme star slim jar
to late
or make it private xD
no
NO
yes
Lemme check
it doesnt even send a notification
github bad
hithub coming soon will revolutionise this
lol
haters will say it's not possible
I cant find the link in the invite page bm
The collab invite seems to have that
but not org invite
inconsitent design
therefore
github bad
hithub good
๐
realists will say you'll give up within the first 5 minutes
thats gonna blow up
lol
i have just been busy with devden
sure
that's literally exactly half of Krypton's stars and I swear SJ's been out like half the time
@old wyvern You should watch this https://www.youtube.com/watch?v=vTMEdHcKgM4
I got a bit tired of my simple heightmap-based planets and decided to experiment with generating them using the Marching Cubes algorithm instead, so that I could add a 'terraforming' ability for shaping the world with caves and tunnels and so on. I hope you enjoy!
If you'd like to get early access to the project files (they'll be made freely av...
๐ฎ
I love his videos, so many cool things, and he's joining everything together now
me2
Like his projects are continuations of each other now?
Kinda, he's more like getting every feature and adding to one project on this one video
ohhh, looks very interesting!
yeah for example, he made planets, then he made athomsphere, then he made terrain generation for those planets
something like that
ah
Ive seen this video of his earlier once
https://www.youtube.com/watch?v=cWpFZbjtSQg
Experimenting with portals, for science.
The project is available here: https://github.com/SebLague/Portals/tree/master
If you'd like to get early access to new projects, or simply want to support me in creating more videos, please visit https://www.patreon.com/SebastianLague
Resources I used:
http://tomhulton.blogspot.com/2015/08/portal-rende...
Ooh that one was awesome too
I am confused. Didn't he post the Terraforming video before? Is this a repost? Or am I thinking of something else?
Oh it might have been the Hydraulic Erosion I am thinking of.
Lmao
that's just minecraft + raft or whatever the other game is called
This sounds fun
Let me type my way out of his glorious war!
its a game idea generator
ah
๐ฎ
oh nvm. I was thinking about his Procedureal Landmass Generation series
Yeah, he kinda uses that one too
someone tell me what I should implement into Krypton next lol
I'm bored and can't quite decide
minehraft compatibility
make it work
Is it playable?

define "playable"
is it fully minecraft with connectivity
Has entities, world generation, etc
no
Then it doesn't work lmao
๐ฅฒ
I need something more specific than just "make it work"
I can't do entities until Nicole tells me how far she is with them
hurry up nicole
Do world generation then
๐ฅฒ
update the docs
lol
do the blocks update in real time when I update them using the API?
Also had to downgrade my IJ, the plugins that weren't working were too needed ๐ฉ
if not, then fix that as well
downgrade from the dev?
the API is very untested lol
Yeah
I actually don't know
well i gtg rn but maybe later or tomorrow will finally fix my plugin and see how it works xD
I did it! KT [15:02:26 INFO] [QueensWhitelist]: [FileWatcher] Detected modifications on file config.yml, reloading configs.
Ayy nice
it wasn't even harder ||no I'm lying I'm working on that for like 6 hours now, help me||
mmmmmm some nice nightmare fuel
Integer.valueOf 
operator fun plus ๐
imagine toInt
oof i dont have a demo server anymore
did you not know that they're a thing?
you can create bash files that will get run when you perform certain actions, to avoid you pushing something stupid lol
nope
Yeah BBG itโs very pog you told me that
how do I send plugin message from sponge to bungee ๐ข ?
I tried https://forums.spongepowered.org/t/send-a-message-to-bungeecord/7119 but there's no Connection#sendCustomPlayload method (guess the thread is out to date)
Seems you need to use channels
i just discovered ffmpeg is written in assembly
the developers must be in agony
lmao
Who pinged me
I did
Isnโt there a cpp version for native stuff in java?
shut up loser
you can run it in java using the actual original ffmpeg binary thing tho
theres a lot of libs out there
i personally use this one: https://github.com/kokorin/Jaffree
nope you
Oh cool! What are you working on that needs it?
No your ass
mml
yeah ffmpeg wrappers are usually good enough
Mml?
that gif looks like me (obama)
No it doesnt
yes it does
Ah lol I see, doesnโt ffmpeg just take pictures and turn it into video? Or can It do the reverse too?
ffmpeg does a whole lot of shit
It can encode, it can play so many damn extensions
it can grab gifs, do whatever shit
you can replace your video editing software with it if you want
Oh wow, thatโs pretty insane... I really havenโt used it lol
I am using it currently to fetch frames from an mp4 video efficiently
How so?
cause using java for this would be too slow
you can do everything a video editing software does by using commands in ffmpeg
Lol
it even adds overlays and stuff
Ultimate flex huh
Lol
A lot of video editing software uses ffmpeg internally anyway
mhm
It's like the standard for that sort of stuff
but incredibly complicated, I've never really gotten the hang of it
pretty much all the video editing operations you see are just ffmpeg commands
being ran
when was it first released?
Lmao
Huh well thatโs pretty cool! I hope to never have to use it!
all the wrappers and stuff for java do the work for me
so i dont have to deal with the actual Process itself
how did u get that
๐
Oh
๐
epoch converter?
ofc lol
Lmao
that doesnt sound very functionally pure
no wonder I see all the 0s at the end
๐
Smh imagine not being able to do it in your head
๐
d;Instant#now
public static Instant now()```
Obtains the current instant from the system clock.
This will query the system UTC clock to obtain the current instant.
Using this method will prevent the ability to use an alternate time-source for testing because the clock is effectively hard-coded.
the current instant using the system clock, not null
d;Instant#past
public Instant plus(TemporalAmountย amountToAdd)
throws ArithmeticException, DateTimeException```
Returns a copy of this instant with the specified amount added.
This returns an Instant, based on this one, with the specified amount added. The amount is typically Duration but may be any other type implementing the TemporalAmount interface.
The calculation is delegated to the amount object by calling TemporalAmount.addTo(Temporal). The amount implementation is free to implement the addition in any way it wishes, however it typically calls back to plus(long, TemporalUnit). Consult the documentation of the amount implementation to determine if it can be successfully added.
This instance is immutable and unaffected by this method call.
an Instant based on this instant with the addition made, not null
amountToAdd - the amount to add, not null
ArithmeticException - if numeric overflow occurs
DateTimeException - if the addition cannot be made
Could not find spigot-api-1.16.5-R0.1-SNAPSHOT.jar (org.spigotmc:spigot-api:1.16.5-R0.1-SNAPSHOT:20210517.222435-81).
Searched in the following locations:
https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/spigotmc/spigot-api/1.16.5-R0.1-SNAPSHOT/spigot-api-1.16.5-R0.1-20210517.222435-81.jar```
Good one gradle ๐
maven
AnNoYiNg
ew imagine using Spigot
even if I'm making a Spigot plugin, I'll always depend on the Paper API
Sir
I'm actually saving that
lol is not bad though, it's a simple game from the mechanic perspective
smh bbg
smh Gaby
bukkit!
does it?
It does
when i did recursion
it made an infinite loop
of the file that is being walked (folder in this case ig)
lmao
I'm not sure though...
if I used File and used File#listFiles it worked
Is that site not working for anyone else? https://repo.extendedclip.com/content/repositories/placeholderapi/
:(
Send us what you're doing with it pulse
Yeah no, you won't understand a shit about it
Lmao
But yeah basically
I had two implementations with the same logic. Except one used Path
and another used File
and one used File#listFiles (or whatever it was), and the other Files#walk
Is that possible that I get somehow ban from that site?
Does not seem to load for me either, so probably not
Oh well thanks
final File[] children = f.toFile().listFiles();
if (children != null) {
for (final File child : children) {
if (child.isDirectory() || (child.isFile() && child.getName().contains(extension))) {
folders.add(child.toPath());
}
}
}
vs
try (final Stream<Path> stream = Files.walk(f)) {
stream
.filter(
x ->
Files.isDirectory(x)
|| (Files.isRegularFile(x)
&& x.getFileName().toString().contains(extension)))
.forEach(folders::add);
} catch (final IOException e) {
e.printStackTrace();
}
also idk wtf that indentation is, google format is so cursed
with streams
what the fuck is that
You dont need to try catch that
use predicates properly
and if you're checking for the extension you should probably check if it endsWith
I don't?
cause intellij says that Files.walk needs it for some reason
Files.walk is meant to be used in a try-with-resources
Yeah
what the heck is that formatting
no i do... but im being serious if i want to show you what it says
So...
catch?
If it throws a checked one then yes
Ah true, just confirmed from the docs
Yugi for how long have you been dabbing by now?
and also wdym by this

Pulse you should probably cache that predicate
Yeah
And yea, you dont need to check if its a regular file after checking for directory id assume
Since it uses a side effect I think (iirc) an optimization would be to cache it
hm yeah true
?
wat
Idk
Always thought lambdas that uses side effects are slower or less optimized than pure ones
Shouldnt be, its a just a reference capture
Cant confirm it but by the looks from luckperms as an example it seems like it
Lambdas are just in itself slightly slower than their imperitive counterparts
LuckPerms caches most lambdas which uses side effects iirc
also what kind of side effects could Files.isDirectory(Path) have?
I mean.... that's the purpose of it
yeah uh.. Files.walk does indeed include the parent file
Yea
No the x.getFileName().toString().contains(extension)
Might be wrong I actually donโt know if itโs true
just add a filter(path -> !path.equals(whatever))
Predicate.not(whatever::equals) ๐
JDK 9+ I believe
also, why can't Path literally have something like an overloaded function to avoid us from getFileName().toString()
ugh
11 actually
Ah well fair then
?
Because if we want to get the file name, we always have to do that
I have a ton of those in my code, and it feels repetitve and ugly
pure is better ๐
if at least there was smthing like Files.getName(Path p)
The Path api is somewhat verbose lol
how hard is it to make that utility method yourself

not a great argument I must admit
lmao I didn't think about making a utility method with the class before
๐
I guess you have a point piggy
conclure havent u said urself u like verbosity?
Lombok users be like
๐
AbstractAbstractionFactoryImplOverLordDestroyedMechaPhantomBeastSupplierProvider
sounds like a papi 3 class
When will papi3 release
never
We have BukkitPlayerStatisticsFunctionProvider
Btw piggy, gaby is making the 2.0 js expansion right?
I think thatโs our longest name
Damn thatโs long
lol
Lol
Hehe
yeah but this is a legitimate class pulse
that plugin is a monstrosity
^
But his is too!
this actually has a purpose
but his does too
it provides functions for bukkit player statistics

DeluxeAysncJoin fans vs terrible-plugin enjoyers vs pdm appreciators
terrible-plugin ๐
idk
ExternalDependencyDataProviderFactory ๐
@surreal quarry
So like
helpchat hates the number 3, just like valve
I am gonna start on papi27 now
Ominous Number
I believe papi3 installs satan.exe on your pc
Sounds horrific
Absolutely
oct 3
I shall prepare my Axe!
๐ถ
I may donate some yugi oh cards on ur bday
๐ฎ
=remind me 3 October "Yugi bday"
Yugi bday
papi 3 itself doesnโt install satan
but papi 3 js expansion does install native stuff on ur pc
Sadly no
it installs v8
Sad ๐ซ
Are there no major non-native ones?
Or was it chosen for speed?
it was chosen because its the only option that solves the issue we initially had
Is it still using nashorn or will it be using something like graal instead ?
before nashorn was deprecated we were still looking for an alternative because people wanted es6 support
Why did it assume next year? xD
Didnt thein update 2.0 with es6 suppourt?
nashorn doesnโt have proper es6 support
the only java js engine that has full es6 is graal
but graal needs jvm args to work on openjdk, and in a newer openjdk version (thereโs a JEP) theyโre completely removing the graal jit compiler, so it wonโt work at all
Oh thatโs unsettling
hi
hello
Hi
hi
so the only 2 java based options left are nashorn and rhino
Rhino is so fucking primitive
itโd be a major step down to use it
Are you an anarcho capitalist
and choosing nashorn doesnโt solve the original issue
Hmm and creating one yourself isnโt an option piggy?
huh??
v8 is the only choice
Or I mean yeah itโs probably hella time consuming
thatโs a gigantic task conclure
yeah making a js engine isn't trivial lmao
now v8 gives us es6, which is what we originally wanted
and also has the benefit of speed
but sadly its native
so if you run freebsd or arm youโre fucked
Oof
Noooo! The 3 people running minecraft servers on freebsd
xD
They're gonna be distraught
Are there no binaries for those platforms?
only 64 bit mac/linux/windows
rip
Iโm sure v8 actually does have binaries for other platforms
its just the java binding Iโm using doesnโt
Seems like it would
using j2v8 btw
It needs manual memory management so I gotta learn how to do that
donโt think its too hrs
hello ๐
hard
hello!
basically the whole "strong encapsulation" thing was just a farce to destroy pdm
they were jealous of its success
lol
They don't actually care about protecting internals
Java 16 encapsulation was created by the elitists to destroy PDM
๐ฎ
Gosling!!
Gosling strikes back
slimjar developers created java 16 
That man is the devil
๐คข ๐คฌ
silence
lmao
Imagine looking through a sort of magic window, and through that window, you see another person, life-size and in three dimensions. Project Starline is a technology project from Google that combines advances in hardware and software to enable friends, families and co-workers to feel together, even when they're cities (or countries) apart. Learn ...
idk
i think he died
i've just been busy with work and other things tho
w-work?
things?
Do you not spend 24hs a day doing absolutely nothing? Wasting time?
damn
Couldn't be me
Same tbh
Rewriting my commands framework is so boring holy shit ๐ฉ
Rewrite it in
holy shit do i hear matt is working on the BELOVED FRAMEWORK????
Something like that ๐ซ
๐
i'm this close to quitting it
Relatable
can people just not read or something?
It's so boring, like, first time was fun and all because i was learning something new, now it's mostly rewriting what i have but better, and it's just awful
Young Tim Gaming
and probably make it worse but we ignore that
Tbh, i don't even know, like it's not hard or anything, just boring
๐
this guy DM'd me saying "do you want to play minecraft"
and I said no, so he said "none of my other friends are on, you have to"
for like the next 10 minutes. I don't get some people lol
Poor young Tim Gaming
๐ฅฒ
but like, theres like 1500 people in a server, and you DM the owner expecting them to play with you at a moments notice?
lol
BM tf are you doing up at 3 AM lol
me: aww, build's failing
https://i.imgur.com/V16hEBZ.png

Is a bot that runs on java in the forge mod launcher possible? just wondering
Yeah
oo nice
like u know im talking about the client launcher right not on server side
Still should be possible, don't see why you would do it on client side, but possible it is
ok
how hard do u think it would be to make a bot that sends in game messages to discord thru webhook or just thru a bot being hosted on the client
Also does anyone think it can gen a. Config file or if it will need to just have the config within the mod jar file
Between Path and File, which one do you prefer?
I prefer Path
Have you ever played modded?
I have always wondered how do people get this build button
No
ooh yea i remember i went like crazy trying to find it ๐คฃ (my curiousity is too strong lol) eventually someone answered here - shields.io
sus
baritone is bannable on many servers
Mods are literally like plugins but on the client instead, they can do stuff directly on the client instead of on the server
So configs are 100% possible
what is baritone?
Auto player
I mean it's just.. a java program after all (talking about mods)
basically lets you move, place, or mine automatically
can act like xray, but better (which is why it's bannable on a lot of servers)
Is considered a hack so don't use it without perms from server owners or risk getting banned
How it actually gets the messages is the least of the problems I believe, since it's the client probably with the chat message packet is the easiest of ways
how much do u think someone would charge for it?
do u think $15 would be enough for someone?
probly depends on who is ganna do it
i wouldn't exactly know, personally i never worked neither with forge nor the discord api so yeah can't really tell
I love Path sometimes
i dont read any documentations
On spigot, does it matter if you run 20 plugins or 10? Like split everything in its own jar or combine them. Was just wondering if it does allocate some mem for each jar or whatever
It does yeah but it's negligible
Ok
Who can help me with a host recommendation for a minecraft server with 5-6 sections, decent ping and keep players
I dont like seeing Plugins (74) but I kinda feel more safe having everything on its own jar than 10 plugins in one and if something breaks / is not needed anymore, the whole things become unusuable
@sonic sandal wrong channel, try #minecraft
Yeah I'd rather keep things modular
So multiple jars?
I also tried to create my own papi like system with expansions but I didnt trust myself enough to create big things with that ๐คฃ
Expansion loading is neat ngl but yeah you might just decide and leave it at (soft)depend & an API
not really that hard Gaby
yeah all you need to do is load all the resources and the entry point
oh btw pig, do expansions support injecting dependencies with Guice?
is that how the new system works?
yes
ah
well whatever ones you need for expansions
not exactly
if an expansion is for a plugin, we can't magically produce an instance of that plugin's api
ah
places I deem essential, I create nicer apis for
e.g. files
previously users would have to inject the file manager and manage files themselves
but I made a nicer api for it so they don't have to do that
guice is confusing for newbies
only people that might know how to use it are sponge peeps, but even then, their guice usage isn't even that extravagant, nothing like how papi uses it as far as I can tell
like how instead of you creating a sort of tree starting at the entry point, you make one finishing at the entry point
no clue what you're saying
like how to get an instance of a dependency, you're meant to inject it into the place you need it
ah
I didnt said it is hard, I just didn't used it
whereas in Krypton, the server instantiates all its dependencies there, if we were using Guice, Guice would instantiate it and we could inject it into the server
but we can't use Guice on the backend anyway, since everything has to stem from the server because of the API
ah yeah
man, I just remembered that I spent like 2-3 hours or something last night configuring Detekt lol
basically Checkstyle for Kotlin lol
guice shouldn't be handling any logic, that goes against convention
wdym?
your dependencies should be instantiated before you bind them in guice
yeah
everything being instantiated in your server class
sounds awfully like a major violation of srp
so much stuff
well where else is it meant to go?
I have Guice bindings for all this stuff for plugins
oh right
back to papi
yes we have guice bindings for things like this
to get server u'd go
@Inject
public BlahExpansion(@NotNull final Server<?> server) {}```
ah okay
but tbh most of guice usage in papi is internal
If I have like an admin page and a client page that both need to use and edit data from a database , but theyre seperate apps, whats the best and easiest way to manage that without having to duplicate code alot?
do i need to have5 like a common module or something that has all the db objects or smthn?
Probably a good idea
Any idea what could cause to have this at the bottom of a server log? https://i.imgur.com/SNKjfiy.png
so I just reinstalled Arch and as soon as I finished, I had a thought
what if I installed Gentoo
ok
thoughts?
We are in 2021, that's just masochism
well no it's fun, and it lets you customize so much
like every piece of software has a mod list thing where you can just not compile certain parts that you don't need
plus you learn a significant amount about like root-level operating system stuff which I want to because I want to do a lot of OS stuff eventually
well then go for it if you like it
I use Arch Gentoo, btw
exactly! then I can be above even the Arch users
and that is a position very few hold
true true
or I could go ultra hard and do Linux From Scratch
yea I saw lmao
and I mean that's what every competition is
imo, the scale really goes something like this
Ubuntu -> Debian -> Arch -> Gentoo
at least, that's how I progressed through the distros (and I am currently in the arrow between Arch and Gentoo lol)
Hmm hmm
thereโs an infographic that describes the transition between these very distributions
oh? sounds cool send it
This is literally cars and watches for nerds
Wasn't Fedora that died lol
well yeah CentOS, but Fedora is going down with it
at this point, very little reason to use Red Hat besides RHEL if you're already using it
Blame IBM for that
yes
๐ฅฒ
it's okay, I never really liked Red Hat all too much
Forget linux, write your own os
I would actually be super interested in that ngl
WinStar 10
it's not gonna be based on Windows 10 yikes
xD
the only good part of Windows is the Desktop Environment
Honestly, if Microsoft made a Windows DE for linux that was like pretty similar, I would happily pay money for it
windows from scratch
ah
๐
wait...
ElaraOS to soon take over the market
๐
HWindows? xD
Hindows!
YES ๐ ๐ ๐ ๐ ๐
Hinhows
can only run pure applications
Hindohs
is an Operating System pure? ๐คฃ
Eindows
it will be
๐
I mean, surely a lot of parts of it are totally pure right
probably some
Useless operating systems > Useful operating systems
๐
๐
i guess pure might not be the right word, but they're small little utilities that do small things
good old Unix philosophy
It doesnt by itself do anything
therefore you can have a pure os
lots of IORef
๐ ๐
in theory
except they have to talk with some other program that might not be pure
therefore they aren't necessarily pure
hmmm very sad
IORef 
๐
ST monad
Kernel monad
๐
maybe I'll go Solaris because I love Sun so much
๐คจ
I really do though
ah yea yea
You're such a Joker
haha yeah that was a good and funny joke
totally intended
Isnt that the os that liveoverflow keeps finding major exploits in every 2-3 weeks
probably lmao
lol
probably but I like Sun
โ๏ธ
sun is kill
Solaris 10 silly
hmm
cabal takes so long to build stuff ๐ฉ
come on hlint
i just want to be shit at emacs without having to wait 30 minutes for this to build
please
bro emacs why
hipster
vim is also hipster
"yes i use haskell, arch and emacs, why do you ask?"
soon I'll be using haskell, gentoo, and vim
๐คจ
i use notepad ๐
how did you react so fast
what
probably using dem typewriters
uh, I have it on my monitor, saw it, right clicked, and clicked on it
Honestly anything other than notepad is bloat
nah dude all the real homies use nano
Nano has too many features
really? i feel like nano and notepad are on very similar levels
anything other than a slate tablet is bloat ๐
very true
sublime gud
i am using paint 3d as an IDE now.
that is awesome
Me too.
yuh i make my code 3d
we should be friends
ko
3d code good
||0000-0000-0000-0000||
cooltext.com is the best IDE
hey wait that's also my token
๐
๐คข
maybe it's cause you spelled detect wrong
i use a piece of a4 paper and a pen as an IDE
203? nice
i know, was a funny
I did that for 4 years. it wasn't fun
a4? ๐คข sticky note ftw
kotlin mf's have a little habit of spelling things wrong
a4? nah bro, american paper sizes
really? MineHRaft
8.5" x 11"
Kontrol.KMonad ๐
more like Konad
i dont write my code on paper anymore i write it directly on the trees
bold and progressive ๐
the hardest part of linux isn't which distro, it's a wallpaper engine equivalent
damn man. I write it on bones
so hard to make it look good without a three-monitor-spanning animated wallpaper from Skyrim
and use sharpened rocks to do so
just delete system32 i usually do that and it works
xD
ah yes
wait does system32 exist i nlinux
no
okay
imagine using other wallpapers other than the default ones
imagine being able to use wallpapers
nah. default one is the best for everything
especially Ubuntu
(the so called hypo which is actually just 2 hairy balls)
nah if i'm keeping a default wallpaper, it's gonna be from Pop!_OS
tits?
