<<Prev Next>> Scroll to Bottom
Stuff goes here
L1[00:00:00] <Biochemic> xD
L2[00:00:17] <Mimiru> %hello
L3[00:00:18] <MichiBot> Mimiru: Hello! Welcome to #oc! The one and only opencomputers channel! Please ask your questions directly (dont ask to ask) and provide error/code examples! (Use pastebin.com if theyre more than one line!) Dont mind the random conversation you might have walked into.
L4[00:01:08] <Biochemic> matches exactly the situation nice
L5[00:07:23] <ba7888b72> well, OpenJ9 doesn't crash the game
L6[00:08:30] <ba7888b72> oh it crashed
L7[00:10:12] <ba7888b72> Sampler mod is incompatible with OpenJ9... that's kind of expected, since it looks at internal JVM stuff for performance analysis. Attempt #2
L8[00:19:32] <Forecaster> %tonk
L9[00:19:33] <MichiBot> Jeepers! Forecaster! You beat payonel's previous record of 35 minutes and 18 seconds! I hope you're happy!
L10[00:19:34] <MichiBot> Forecaster's new record is 50 minutes and 47 seconds! 15 minutes and 28 seconds gained!
L11[00:48:02] ⇦ Quits: greaser|q (greaser|q!greaser@antihype.space) (Remote host closed the connection)
L12[00:48:12] ⇨ Joins: greaser|q (greaser|q!greaser@antihype.space)
L13[00:50:19] ⇦ Quits: ba7888b72 (ba7888b72!~ba7888b72@66.109.211.150) (Ping timeout: 202 seconds)
L14[00:52:00] ⇨ Joins: ba7888b72 (ba7888b72!~ba7888b72@66.109.211.150)
L15[01:26:07] <McMaartenz> Hello
L16[01:26:12] <McMaartenz> %tonk
L17[01:26:13] <MichiBot> Voldemort! McMaartenz! You beat Forecaster's previous record of 50 minutes and 47 seconds! I hope you're happy!
L18[01:26:14] <MichiBot> McMaartenz's new record is 1 hour, 6 minutes and 39 seconds! 15 minutes and 52 seconds gained! McMaartenz also gained 0.001 tonk points for stealing the tonk.
L19[01:26:20] <McMaartenz> Ha
L20[01:26:24] <McMaartenz> %tonkout
L21[01:26:24] <MichiBot> McMaartenz has tonked out! Tonk has been reset! They gained 0.001 tonk points! Current score: 0.002
L22[01:26:28] <McMaartenz> Lol
L23[01:26:45] <McMaartenz> I'm gud at this
L24[01:26:45] <McMaartenz> :neko:
L25[01:27:26] <CompanionCube> %tonk
L26[01:27:27] <MichiBot> Fudge! CompanionCube! You beat McMaartenz's previous record of <0! I hope you're happy!
L27[01:27:28] <MichiBot> CompanionCube's new record is 1 minute and 2 seconds! 1 minute and 2 seconds gained!
L28[01:27:42] <McMaartenz> ...
L29[01:29:02] <McMaartenz> %tonk
L30[01:29:03] <MichiBot> Jiminy Cricket! McMaartenz! You beat CompanionCube's previous record of 1 minute and 2 seconds! I hope you're happy!
L31[01:29:04] <MichiBot> McMaartenz's new record is 1 minute and 35 seconds! 33 seconds gained!
L32[01:29:05] <McMaartenz> Ha
L33[01:29:25] <McMaartenz> ?
L34[02:12:23] <Lizzy> %tonk
L35[02:12:24] <MichiBot> Goshhawk! Lizzy! You beat McMaartenz's previous record of 1 minute and 35 seconds! I hope you're happy!
L36[02:12:25] <MichiBot> Lizzy's new record is 43 minutes and 20 seconds! 41 minutes and 44 seconds gained!
L37[02:28:12] ⇦ Quits: logan2611 (logan2611!~logan2611@184-96-204-169.hlrn.qwest.net) (Ping timeout: 189 seconds)
L38[02:28:49] ⇨ Joins: logan2611 (logan2611!~logan2611@184-96-204-169.hlrn.qwest.net)
L39[03:24:00] <Rph> %tonk
L40[03:24:01] <MichiBot> Consarn it! Rph! You beat Lizzy's previous record of 43 minutes and 20 seconds! I hope you're happy!
L41[03:24:02] <MichiBot> Rph's new record is 1 hour, 11 minutes and 37 seconds! 28 minutes and 16 seconds gained! Rph also gained 0.001 tonk points for stealing the tonk.
L42[03:24:12] <Rph> %tonkout
L43[03:24:13] <MichiBot> Rph has tonked out! Tonk has been reset! They gained 0.001 tonk points! Current score: 0.022
L44[03:24:17] <Lizzy> fucks sake
L45[03:24:28] <Lizzy> i was gonna tonk but someone came in and needed help
L46[03:24:48] <Lizzy> damn work stuff getting in the way of my not-work stuff
L47[03:27:10] <Rph> I'm sniping tonks
L48[03:28:35] <stephan48> we noticed.
L49[03:32:13] <Forecaster> maybe it should keep the same person from tonking out twice in a row
L50[03:33:06] <Lizzy> %tonk
L51[03:33:07] <MichiBot> Fudge! Lizzy! You beat Rph's previous record of <0! I hope you're happy!
L52[03:33:08] <MichiBot> Lizzy's new record is 8 minutes and 53 seconds! 8 minutes and 53 seconds gained!
L53[03:33:27] * Lizzy hmms, is choosing a new linux distro for server stuff
L54[03:33:39] <stephan48> maybe all tonks with an hour or less difference under 4h should result in a kick :D
L55[03:34:05] <stephan48> to prevent this spam with low tonk durations i.e. point hording.
L56[03:34:32] <Rph> Give me 49 years worth of tonk and I'll be happy
L57[03:36:52] <Forecaster> haha no
L58[03:38:25] * Lizzy hmms, is currently debating between Arch, CentOS (though dealing with SELinux is going to be interesting to work out), openSEUS or Fedora
L59[03:40:22] <Lizzy> hmm, fedora has nginx 1.12.1 so that's going to knock it out of my potentials list
L60[03:42:52] <Lizzy> hmm, there is always alpine linux which i think was really lightweight, though not sure if it is more-so than Arch
L61[03:45:15] <Lizzy> in other news, wooooo. Vega64 hopefully arriving tomorrow and the delivery costs negated for the inconvenience :D
L62[03:52:31] <Lizzy> hmm, alpine does have nginx 1.14.2 which is the current stable branch....
L63[03:58:35] <dequbed> Lizzy: Alpine is musl-based so you may just not get stuff to work. Or have random crashes (which are all squarely to blame on the software devs but that doesn't help *you*). If you're only using common packages that's not an issue though.
L64[04:02:31] <dequbed> stephan48: Unrelated but how good are you with Java?
L65[04:03:01] <Lizzy> hmm, yeah i probably wont be compilling my own stuff, just cba to deal with ubuntu and it's random bits of crap (like netplan that's used on the 18.04 LTS being a complete useless thing)
L66[04:06:05] <Lizzy> "Oh, I know what we need, a config file that will tell a program to write a config file out for another program"
L67[04:08:25] <stephan48> dequbed: okeyish. from time to time i need to do java stuffs. not my favorite language by far throu.
L68[04:08:58] <Lizzy> and snapd is another thing that can fuck off from being installed by default
L69[04:09:01] <stephan48> but then most programming languages i learn basically on the fly if needed
L70[04:10:16] <dequbed> stephan48: Great. I need someone to write a Solr field type for storing IP addresses. Because if I throw it on my To-Do list it wont get done for a long time :p
L71[04:11:39] <stephan48> haha throwing it on my todo list will probably fare the same :D my unorganized working scheme is yielding no good results atm. also fairly busy
L72[04:11:56] <stephan48> but yea in the end it should probably not be too difficult
L73[04:13:03] <dequbed> It's not. It's probably something like ~200 loc even if you do CIDR search adapters and DNS lookups.
L74[04:14:50] <Lizzy> urghh, i have to get up and go look at a printer.... quite possibly the worst day to wear my old boots that are falling apart and will probably give me blisters if they haven't already
L75[04:34:53] <Forecaster> %tonk
L76[04:34:53] <MichiBot> By my throth! Forecaster! You beat Lizzy's previous record of 8 minutes and 53 seconds! I hope you're happy!
L77[04:34:54] <MichiBot> Forecaster's new record is 1 hour, 1 minute and 46 seconds! 52 minutes and 53 seconds gained! Forecaster also gained 0.001 tonk points for stealing the tonk.
L78[04:41:24] ⇨ Joins: Dustpuppy (Dustpuppy!~Dustpuppy@213.233.155.156)
L79[04:41:30] <Dustpuppy> hi
L80[04:42:17] <Dustpuppy> is there a way to insert a thread into a table?
L81[04:42:41] <Forecaster> what
L82[04:43:22] <Dustpuppy> i want to create thread dynamic. not fixed
L83[04:44:21] <Dustpuppy> i want to make a table where i insert all created threads and delete them after they are finished
L84[04:45:55] <Forecaster> I've never used threads
L85[04:46:04] <Forecaster> you can maybe insert a thread reference into a table
L86[04:47:50] <Dustpuppy> normaly you do local t1 = thread.create(function() .... end) next thread then local t2 = thread.create(function() ... end)
L87[04:48:32] <Dustpuppy> but u have to create all threads fixed in code. i want them created when i need
L88[04:48:56] <Lizzy> threads = {} threads.threadA = thread.create(blah)
L89[04:50:06] <Lizzy> or, threads = {} table.insert( threads, thread.create(things) )
L90[04:50:32] <Dustpuppy> i check this out
L91[04:52:39] <Dustpuppy> what i am thinking about is, to redo my gui, where every dialog that's running is an own thread. so i need a way to create a thread during runtime
L92[04:58:42] <Lizzy> it should be fairly easy i guess, just replace the code that creates the dialogs with ones that wrap it in a thread
L93[05:01:38] ⇦ Quits: logan2611 (logan2611!~logan2611@184-96-204-169.hlrn.qwest.net) (Read error: -0x1: UNKNOWN ERROR CODE (0001))
L94[05:01:42] ⇨ Joins: logan2611 (logan2611!~logan2611@184-96-204-169.hlrn.qwest.net)
L95[05:02:29] <Dustpuppy> this is the normal way
L96[05:02:31] <Dustpuppy> https://pastebin.com/KDvRVA8m
L97[05:03:16] <Dustpuppy> but then i need to create all dialogs static. i want to create a dialog when i need it
L98[05:03:51] <McMaartenz> i wonder
L99[05:03:52] <McMaartenz> %tonk
L100[05:03:52] <MichiBot> I'm sorry McMaartenz, you were not able to beat Forecaster's record of 1 hour, 1 minute and 46 seconds this time.
L101[05:03:53] <MichiBot> 28 minutes and 58 seconds were wasted! Missed by 32 minutes and 48 seconds!
L102[05:03:56] <McMaartenz> :(
L103[05:04:00] <McMaartenz> sub2pewds guys
L104[05:11:18] <Forecaster> no
L105[05:11:39] <McMaartenz> wat
L106[05:11:41] <McMaartenz> are u a
L107[05:11:46] <McMaartenz> *t series subscsriber*
L108[05:11:57] <Forecaster> I don't know what that is and I don't care
L109[05:12:01] <McMaartenz> phew
L110[05:14:09] <Zef> Oh you're one of those people going around spamming "sub to pewds"
L111[05:14:14] <McMaartenz> yas
L112[05:14:22] <Zef> Fuck PewDiePie and all this does is make me hate him more
L113[05:14:27] <McMaartenz> :O
L114[05:14:32] <Izaya> who
L115[05:14:35] <McMaartenz> the internet is going to collapse if he loses the race
L116[05:14:52] <McMaartenz> **And all 9yo's will get angry**
L117[05:16:24] <Zef> A popular YouTuber
L118[05:16:33] <Zef> That's literally all there is to him
L119[05:17:26] <McMaartenz> *I'm just a supporter :(*
L120[05:17:31] <McMaartenz> Trying to do my part
L121[05:17:40] <dequbed> Do that somewhere else please.
L122[05:17:44] <Zef> By going around spamming a shitty message
L123[05:17:56] <McMaartenz> No need to be angry about though
L124[05:18:07] <dequbed> We're not angry, we're annoyed.
L125[05:18:15] <Zef> Well whenever it's all you fuckin here it gets annoying
L126[05:18:26] <Zef> I'm not supporting him and I have no plans to
L127[05:19:04] <Zef> %s/here/hear
L128[05:19:04] <MichiBot> <Zef> Well whenever it's all you fuckin hear it gets annoying
L129[05:19:36] <Izaya> https://my.mixtape.moe/crvxlu.png
L130[05:19:56] <McMaartenz> is that
L131[05:19:58] <dequbed> Izaya: Not enough terrible tiling.
L132[05:19:59] <McMaartenz> a window manager
L133[05:20:10] <Izaya> nope
L134[05:20:26] <Izaya> dequbed: it continues beyond that
L135[05:21:45] <dequbed> Izaya: No, I mean it's not nausea inducing enough.
L136[05:21:51] <Izaya> oh okay
L137[05:29:44] <Lizzy> %tonk
L138[05:29:45] <MichiBot> I'm sorry Lizzy, you were not able to beat Forecaster's record of 1 hour, 1 minute and 46 seconds this time.
L139[05:29:46] <MichiBot> 25 minutes and 53 seconds were wasted! Missed by 35 minutes and 53 seconds!
L140[05:29:53] <Lizzy> oh, oh well
L141[05:30:13] <Lizzy> thought it had been longer
L142[05:32:20] <Lizzy> yay, got the notice that my vega has been dispatched
L143[05:32:26] <Forecaster> woo
L144[05:34:41] ⇨ Joins: ben_mkiv (ben_mkiv!~ben_mkiv@mue-88-130-52-099.dsl.tropolys.de)
L145[05:49:34] <Biochemic> oh hi
L146[06:00:12] ⇦ Quits: Dustpuppy (Dustpuppy!~Dustpuppy@213.233.155.156) (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/)
L147[06:00:46] ⇨ Joins: Dustpuppy (Dustpuppy!~Dustpuppy@213.233.155.170)
L148[06:07:56] <Lizzy> hmm, think i'ma go with Arch on an LTS kernel for my new web server
L149[06:08:59] <Forecaster> :O
L150[06:09:28] <Lizzy> actually
L151[06:09:40] <Lizzy> i'ma test out alpine for a bit, see how it fares
L152[06:18:56] <Lizzy> lunch time
L153[06:21:11] *** ba7888b72 is now known as ba7888b72413a16a
L154[06:21:19] <Forecaster> yay for lunch
L155[06:25:01] <Bob> That nickname looks like a hash or keyboard numpad mash
L156[06:47:51] <Lizzy> hmm, to set up new webserver stuff in a way where i have a single public-facing server that reverse proxies to a range of internal servers (will be useful if i switch to containers or other non-full-vm stuff) or to stick with what i have at the moment where most stuff is on the same box...
L157[06:49:23] <Lizzy> i think for now i'ma just replicate what i have cause it'll be easier, though i think i'ma try and make it more organised this time around
L158[06:54:19] ⇦ Quits: Xal (Xal!~Xal@S010664777dabacc3.vw.shawcable.net) (Ping timeout: 183 seconds)
L159[06:56:30] ⇨ Joins: Xal (Xal!~Xal@S010664777dabacc3.vw.shawcable.net)
L160[06:59:44] ⇦ Quits: ba7888b72413a16a (ba7888b72413a16a!~ba7888b72@66.109.211.150) (Quit: WeeChat 2.4)
L161[06:59:48] ⇨ Joins: ba7888b72413a16a (ba7888b72413a16a!~ba7888b72@66.109.211.150)
L162[07:04:58] <Z0idburg> Lizzy, I do that
L163[07:05:09] <Lizzy> ?
L164[07:05:19] <Z0idburg> I have an nginx that basically just reverse proxies to applications or other nginx instances on other VMs
L165[07:05:24] <Z0idburg> it works pretty well
L166[07:05:52] <Z0idburg> it allows me to set up web services easily to VMs that don't have a public IP
L167[07:06:07] <Z0idburg> without nasty port forwarding
L168[07:06:56] <Z0idburg> mind you I have most of my web hosting stuff on one VM
L169[07:07:11] <Z0idburg> but nginx allows me to just proxy to ports
L170[07:07:21] <Z0idburg> so I can create CGI applications etc anywhere
L171[07:08:26] <Z0idburg> you could also have a VM that does most of the webhosting do it if you wanted
L172[07:08:36] <Z0idburg> and proxy from there to other VMs if needed
L173[07:09:20] <stephan48> same here. multiple backend VMs with possible later containerization.
L174[07:09:31] <stephan48> a nginx vm which is public facing.
L175[07:09:47] <stephan48> that vm will probably be NATed soon to provide even less attack surface(SSH)
L176[07:11:19] <Z0idburg> OVH gives me two public NICs
L177[07:11:36] <Z0idburg> so I actually ended up making my VMs bind to two interfaces
L178[07:11:46] <Z0idburg> one is an internal network which you can vpn to
L179[07:12:04] <Z0idburg> but basically all of the management of the dedicated server is via the other NIC
L180[07:12:08] <stephan48> Hetzner just gives one NIC but i do the same
L181[07:12:17] <Lizzy> ah, yeah that's kinda what i have now, (the vm doing most of the webhosting but other servers also have some bits running on them) but i was thinking of future proofing it for if/when i get the money and the need for more
L182[07:12:47] <Lizzy> i have a /28 IPv4 address range for all my VM stuff currently
L183[07:13:12] <Z0idburg> The nice thing about having two NICs stephan48
L184[07:13:14] <stephan48> same. but i wanna remove IP addresses from services.
L185[07:13:21] <Z0idburg> is that I can use a vpn on both and bond them for double bandwidth
L186[07:13:21] <stephan48> especially external ones
L187[07:13:34] <stephan48> if you VPN supports that.
L188[07:13:41] <Z0idburg> it doesn't have to
L189[07:13:51] <stephan48> ah right if you bond both ifaces on both sides
L190[07:13:55] <Z0idburg> you do it at another abstraction level
L191[07:13:59] <Z0idburg> ":)
L192[07:14:11] <AmandaC> %tonk
L193[07:14:12] <MichiBot> Zounderkite! AmandaC! You beat Forecaster's previous record of 1 hour, 1 minute and 46 seconds! I hope you're happy!
L194[07:14:13] <MichiBot> AmandaC's new record is 1 hour, 44 minutes and 26 seconds! 42 minutes and 39 seconds gained! AmandaC also gained 0.001 tonk points for stealing the tonk.
L195[07:14:21] <Z0idburg> I've never tested it but I've done it before with physical servers through a VPN before
L196[07:14:37] <Z0idburg> in one room
L197[07:14:54] <Z0idburg> Ionly use layer 2 vpns
L198[07:15:00] <Z0idburg> layer 3 is useless
L199[07:15:26] <Z0idburg> why would you throw away more control
L200[07:15:35] <Z0idburg> if it's not hard to use it
L201[07:16:08] <stephan48> i mostly use layer 3 for VPN stuff except when i need layer 2.
L202[07:16:10] <Lizzy> another reason for me wanting to possibly do a "one server outward facing" is to lower the attack vector for ssh and stuff, though a transparent firewall might be better suited for that task
L203[07:16:16] <stephan48> ^
L204[07:16:43] <stephan48> i am doing both transparent firewall, reverse proxy VM for http/https, internal only VMs
L205[07:16:53] <stephan48> next step is firewalling between VMs on the host
L206[07:17:07] <Z0idburg> This is silly but
L207[07:17:35] <Z0idburg> there's an ascii linux compatible emulator for the fallout hacking terminals
L208[07:17:41] <Z0idburg> you could stamp that in front of your ssh connections
L209[07:17:48] <Z0idburg> so they have to solve the puzzle before they can log in
L210[07:18:00] <Z0idburg> :>
L211[07:18:11] <Lizzy> except all that would really do is just serve to piss me off
L212[07:18:20] <Z0idburg> I was kidding obviously
L213[07:18:24] <Lizzy> :P
L214[07:18:37] <Z0idburg> but imagine if it blocked all management ports from you until you solved that puzzle
L215[07:18:38] * stephan48 puts the shotgun away. good i was just starting to like you
L216[07:18:44] <Z0idburg> and then it whitelisted you for a session
L217[07:18:52] <Z0idburg> so outsiders don't even know ssh is there
L218[07:18:53] <Z0idburg> ?
L219[07:19:54] <Lizzy> i did have the port knocking stuff set up on my servers for a bit, but i found it was impractical in places where I can't easilly knock on the ports (like a semi-restricted wifi network that allows common stuff including ssh but nothing else)
L220[07:20:20] <Z0idburg> haha
L221[07:20:29] <Z0idburg> this one time I was on a bus and I reaaaaly needed to get on IRC
L222[07:20:32] <Z0idburg> but it was blocked
L223[07:20:55] <Z0idburg> thank the fact that with some preconfiguration you can do SSH over http
L224[07:20:56] <Z0idburg> ?
L225[07:21:02] <stephan48> yup
L226[07:21:23] <stephan48> nginx even allows you to do ALPN(SNI) for ssh :D
L227[07:21:25] <Z0idburg> "What you mean, I'm just visiting a very large SSL website"
L228[07:21:28] <Z0idburg> xd lololol
L229[07:21:28] <stephan48> not difficult to configure
L230[07:21:49] <Lizzy> nginx allows that? huh, may have to look into that :P
L231[07:22:51] <stephan48> http://paste.stejau.de/17118b6bb2cc
L232[07:23:20] <Z0idburg> oh hey Mojolicious!
L233[07:23:23] <stephan48> you could use IP instead of unix sockets.
L234[07:23:25] <stephan48> :D
L235[07:23:25] <Z0idburg> Mojolicious is absolutely fantastic
L236[07:23:28] <stephan48> i am a Perler
L237[07:23:48] <stephan48> the issue nginx still has with unix sockets is that they are not removed automatically :/
L238[07:23:59] <Z0idburg> I have moved on to declarative languages since for my primary, but I wrote Perl for years and years and mojolicious is really really good.
L239[07:24:19] <Z0idburg> I use Perl for imperative non systems programming
L240[07:24:34] <Z0idburg> But I use Elixir everywhere else I can get away with it.
L241[07:24:59] <stephan48> that block first look at the identifyssh ALPN attribute. if it finds that one it will check for ssh servers and allow access to them
L242[07:25:00] <Z0idburg> I was writing a MUD game in Perl before I moved it to Elixir
L243[07:25:07] <Z0idburg> it turned out that elixir makes it much easier
L244[07:25:18] <stephan48> via SNI if not it will check SNI for SSL and conditionally passes the connection to a second nginx
L245[07:25:43] <stephan48> for SSH it even encapulsates the SSH inside of SSL. so it can't be detected at all.
L246[07:26:08] <stephan48> for the normal preread stuff it does not even need to decrypt the content for the preread stuff
L247[07:26:50] <stephan48> "C:\Program Files\OpenSSL-Win64\bin\openssl.exe" s_client -proxy proxyhost:proxyport -connect revproxy.tld -alpn identifyssh -servername %host -verify 1 -strict -quiet -nocommands -verify_return_error -CAfile C:\Develop\cacert.pem -ign_eof
L248[07:26:56] <stephan48> example for putty
L249[07:27:27] <stephan48> nice! did not look into Elixir.
L250[07:27:37] <stephan48> so far i am sticking with Perl for most stuff
L251[07:28:06] <Z0idburg> Yeah Perl is a very decent language
L252[07:28:11] <stephan48> that said. that nginx config example is a bit of black magic.
L253[07:28:46] <Z0idburg> I was abusing Moose with Perl for my MUD
L254[07:29:02] <Z0idburg> every room you were in, every player, every item, et cis a channel that may or may not hold other channels
L255[07:29:07] <Z0idburg> so I made a recursive API
L256[07:30:54] <Z0idburg> my $torch_is_on = $self->channel(player_uuid)->item('backpack')->item('torch')->[0]->{'value'}
L257[07:30:58] <Z0idburg> something like that but it was cleaner
L258[07:31:06] ⇨ Joins: Thutmose (Thutmose!~Patrick@host-69-59-79-181.nctv.com)
L259[07:31:11] <Z0idburg> I forget the way it truly worked by name but it was very simple
L260[07:31:31] <Z0idburg> you could go in an infinite loop
L261[07:32:09] <Z0idburg> I got the idea from the API for RethinkDB for Perl
L262[07:32:17] ⇨ Joins: t20kdc (t20kdc!~20kdc@cpc139326-aztw33-2-0-cust441.18-1.cable.virginm.net)
L263[07:32:47] <Z0idburg> I still use channels in Elixir on the MUD but they aren't used the same way, they do the same thing though
L264[07:33:32] <Z0idburg> I have moved away from object oriented programming because it's often dangerous and though I will still use it in Perl projects, if I am trying to make something I want to share, I won't use OOP.
L265[07:33:42] <Z0idburg> I think it raises more problems than it solves.
L266[07:35:20] <Z0idburg> --
L267[07:35:21] <Z0idburg> Lizzy, stephan48, I am actually working on a mini Perl project I bet both of you may find interesting
L268[07:37:34] <Z0idburg> Instead of creating a website that allows you to control your VMs, I am making a Perl program that provides Lua sandboxed, with an interface through libvirt via Perl in a secure fashion. Adding features will be easy for me, and you will be able to ssh to a port on the dedi, log in and your shell will be the lua shell with VM control commands. You'll be able to see your VMs, reboot them, start them, swap ISO images, etc.
L269[07:37:50] <Z0idburg> no hairy GUI to write fo rme
L270[07:38:26] <Z0idburg> and someday if I feel like it I could port it to Mojolicious
L271[07:39:07] <Lizzy> bugger, i think i need to restart libvirtd to apply some changes on my dedi but idk if that's going to reboot all the gusts
L272[07:40:20] <stephan48> sounds cool. i mostly do my stuff directly via libvirt/xml if i have to
L273[07:40:45] <stephan48> but i have a set of scripts to automate VM creation with host key injection f.e.
L274[07:40:48] <Z0idburg> This will be customer facing
L275[07:40:54] <stephan48> :D
L276[07:41:03] <stephan48> yea thats what i don't do external VMs.
L277[07:41:10] <Z0idburg> and if I can get it right I could support uploading ISOs via sftp but through the perl shell not a login shell
L278[07:41:26] <stephan48> shout when you have a workable thing and need a tester
L279[07:41:31] <Z0idburg> this way I can manage quotas manually and security
L280[07:41:38] <Z0idburg> of course
L281[07:42:31] <Z0idburg> Perl's main libvirt api implementation has improved a LOT
L282[07:42:44] <stephan48> nice
L283[07:43:07] <stephan48> my script stuff is a mix of perl, bash and possible ansible soonish
L284[07:43:18] <stephan48> do you know rexify? basically ansible in perl
L285[07:44:04] <Z0idburg> One of the reasons I chose to provide a minimal sandboxed lua
L286[07:44:05] <stephan48> which by now should be active enough again from a dev perspective
L287[07:44:12] <Z0idburg> is so that customers can create scripts they can run
L288[07:44:19] <stephan48> ah ok
L289[07:44:26] <Z0idburg> or like a remote api for them
L290[07:44:38] <Z0idburg> that way I dont have to make it
L291[07:44:57] <stephan48> ah
L292[08:11:20] <Fatmice> does anyone has a pastebin for skex-bios?
L293[08:11:27] <Fatmice> his web seems down
L294[08:11:33] <Fatmice> his website seems down [Edited]
L295[08:12:17] <Lizzy> skex, that sounds like Izaya's stuff. *pokes Izaya*
L296[08:12:47] <Lizzy> he might be asleep though
L297[08:14:49] <Fatmice> yes Izaya stuff
L298[08:20:28] <Z0idburg> Oh yeah Lizzy did you see what happened to the radio tower on one of our mountains yesterday? ?
L299[08:20:41] <Z0idburg> http://tinyurl.com/y35cq6gt
L300[08:20:50] <Z0idburg> The wind just bent it right over
L301[08:24:28] <Lizzy> haha
L302[08:24:35] <ben_mkiv> %seen epicsquid
L303[08:24:35] <MichiBot> epicsquid has not been seen
L304[08:24:51] <Lizzy> %seen Lizzy
L305[08:24:52] <MichiBot> Lizzy was last seen 0s ago. Saying: %seen Lizzy
L306[08:24:56] <Lizzy> lol
L307[08:28:04] ⇨ Joins: Vexatos (Vexatos!~Vexatos@p200300C107205E84B224EC26A039B876.dip0.t-ipconnect.de)
L308[08:28:05] zsh sets mode: +v on Vexatos
L309[08:41:31] <iceman11a> Someone gave me an image and my memory sucks, Can someone edit this image and add text to it showing the parts on it for OC http://tinyurl.com/y2vrvp2b
L310[08:42:21] <iceman11a> I just don't remember the names of the parts used to put this together.
L311[08:43:44] <Lizzy> everything there that isn't vanilla blocks is OC stuff
L312[08:45:33] <Forecaster> %tonk
L313[08:45:33] <MichiBot> I'm sorry Forecaster, you were not able to beat AmandaC's record of 1 hour, 44 minutes and 26 seconds this time.
L314[08:45:34] <MichiBot> 1 hour, 31 minutes and 21 seconds were wasted! Missed by 13 minutes and 5 seconds!
L315[08:45:39] <Forecaster> dangit!
L316[08:46:02] <Lizzy> %blame Forecaster
L317[08:46:03] * MichiBot blames Forecaster for doubling the time until release by asking questions
L318[08:48:37] <Fatmice> why do people read math.huge in bios?
L319[08:48:47] <Lizzy> ?
L320[08:49:12] <Fatmice> I'm looking at Zorya-BIOS
L321[08:49:18] <Fatmice> https://github.com/Adorable-Catgirl/Zorya-BIOS/blob/master/bios.lua
L322[08:49:25] <Fatmice> line 6
L323[08:50:47] <Fatmice> it looks like it was compress by luaminifier
L324[08:51:01] <Lizzy> ah, the code is a little unreadable because it's minified, but basically they're trying to read everything that's in the file referenced by `h`
L325[08:51:43] <Lizzy> `math.huge` isn't an actual pre-defined number, it's just as high as the cpu can count
L326[08:52:06] <Lizzy> which is generally more than any file size will be
L327[08:52:47] <Fatmice> okay
L328[08:59:02] ⇨ Joins: Cervator (Cervator!~Thunderbi@2601:4c1:4000:362c:3552:69f2:d9ed:6a3b)
L329[09:09:28] <Joco223> So I am having this weird problem with double messages
L330[09:10:05] <Joco223> This is the master code
L331[09:10:05] <Joco223> Code Block pastebined https://paste.pc-logix.com/niwanudede
L332[09:10:16] <Joco223> And this is the code on the nodes
L333[09:10:21] <Joco223> Code Block pastebined https://paste.pc-logix.com/sofinowifu
L334[09:10:37] <Joco223> I just want to check how many of them are connected on the same network, they all have normal network cards
L335[09:11:12] <Joco223> Problem is that if 1 node is connected, 1 will be displayed on master. If 2 are connected then each one is repeated twice so I end up with 4 received messages for some reason
L336[09:11:27] <Joco223> If I have 3 nodes then I get back 9 messages and so on
L337[09:11:31] <Joco223> Any ideas why?
L338[09:11:50] <Joco223> I tried both racks and normal cases, doesn't make a difference
L339[09:12:08] <Lizzy> could you get a pic of your in-world setup?
L340[09:12:40] <Joco223> http://tinyurl.com/yxbkfulx
L341[09:12:46] <Joco223> The two servers here boot of from the floppy with the node program
L342[09:13:07] <Joco223> And this is the rack setup http://tinyurl.com/y3yh73gz
L343[09:13:22] <Lizzian> hmm
L344[09:14:54] <Lizzy> i'm guessing that with all 4 servers bound to the same component line (the thicker connection) there's some weirdness going on where one server can also see the other server's network cards as if it were it's own whilst they're on
L345[09:16:23] <Joco223> Weird, same happens with something like this http://tinyurl.com/y62vue59
L346[09:16:44] <Lizzy> could you try removing the component line from all but one server and then trying again? (if you're able to keep them running with out the floppy disk attached to them all)
L347[09:16:44] <Joco223> I guess by this here that the message is broadcasted twice somehow? http://tinyurl.com/yxjo98ra
L348[09:17:21] <Joco223> huh
L349[09:17:42] <Joco223> If they don't use the same component side, it works normaly, no double messages
L350[09:17:59] <Joco223> If they are connected to the same component side then it doesn't work properly
L351[09:18:06] <Lizzy> yep, then it is a case of the servers seeing each other's network cards as their own
L352[09:19:53] <Joco223> Might be a bug, it seems the same happens with cases too
L353[09:20:32] <Lizzy> what happens if you put a relay between them?
L354[09:20:37] <Joco223> Then it works
L355[09:22:12] <Lizzy> ok, i don't think that'd be considered a bug, because you're supposed to use the relay to separate the component networks so you don't get conflicting components
L356[09:23:33] <Joco223> Fair enough, I just didn't think they'd share internal components somehow
L357[09:25:15] <Lizzy> hmm, they probably shouldn't in theory but i think it'd be hard to try and make a case unable to see components in another case when they're connected in that way cause then you'd need to find some way of allowing the external componentns to still work as they should
L358[09:26:07] <Lizzy> in other news i feel like writing EEPROM versions of some of my scripts
L359[09:26:08] <Joco223> Yeah
L360[09:34:16] <Lizzy> ~oc computer component
L361[09:34:16] <ocdoc> http://ocd.cil.li/component:computer
L362[09:38:22] ⇨ Joins: flappy (flappy!~flappy@88-113-149-197.elisa-laajakaista.fi)
L363[09:39:18] <Lizzy> ~oc sign
L364[09:39:18] <ocdoc> http://ocd.cil.li/component:sign
L365[09:42:01] <Lizzy> %lua return split
L366[09:42:01] <MichiBot> nil
L367[09:42:04] <Lizzy> hmm
L368[09:43:05] <iceman11a> ok, I guess I can try and guess at the parts. This support sucks
L369[09:43:24] <Lizzy> ?
L370[09:48:07] <McMaartenz> The latest version of OpenOS is 1.7.4 right?
L371[09:48:19] <Zef> Yes
L372[09:48:20] <Lizzy> i beleive so
L373[09:48:34] <McMaartenz> The channel description says "Latest version: 1.7.3"
L374[09:48:37] <Zef> They still didn't update the channel description!
L375[09:48:51] <ben_mkiv> %blame lizzy
L376[09:48:52] * MichiBot blames lizzy for Inari's lewdness!
L377[09:49:08] <McMaartenz> poor lizzy
L378[09:49:28] <Skye> %blame Inari
L379[09:49:28] * MichiBot blames Inari for running being exhausting
L380[09:49:43] <Zef> %blame running
L381[09:49:43] * MichiBot blames running for running being exhausting
L382[09:49:48] <Zef> Yes
L383[09:49:57] <Lizzy> no it doesn't.... :P
L384[09:50:13] <Lizzy> also technically it was updated, just not discord side
L385[09:50:22] <ben_mkiv> %blame corded
L386[09:50:23] * MichiBot blames corded for Inari's lewdness!
L387[09:50:23] <McMaartenz> it's updated here now
L388[09:50:35] <McMaartenz> well..
L389[09:50:39] <Lizzy> so both me and Corded are to blame for Inari's lewdness? ok
L390[09:50:56] <McMaartenz> xd
L391[09:51:02] <McMaartenz> How do I let my program wait
L392[09:51:04] <ben_mkiv> if you write from discord you are both
L393[09:51:05] <McMaartenz> **ok stop**
L394[09:51:08] <McMaartenz> Before saying it
L395[09:51:10] <ben_mkiv> so guess it falls back to you that way
L396[09:51:11] <Zef> os.sleep
L397[09:51:12] <Zef> Lol
L398[09:51:13] <McMaartenz> This isn't with OpenOS
L399[09:51:21] <McMaartenz> No laughing here.
L400[09:51:26] <Zef> You'll have to do it yourself then lol
L401[09:51:29] <ben_mkiv> %lua =sleep(666)
L402[09:51:30] <MichiBot> main:1: unexpected symbol near '='
L403[09:51:32] <McMaartenz> That's what I'm asking.
L404[09:51:34] <ben_mkiv> %lua sleep(666)
L405[09:51:34] <MichiBot> main:1: attempt to call global 'sleep' (a nil value)
L406[09:52:03] <Lizzy> outside of openos you'll need to event.pull(timeout)
L407[09:52:29] <Zef> Does the event library exist outside of openos?
L408[09:52:42] <Lizzy> wait no it doesn't
L409[09:52:44] <Zef> I was under the impression computer.pullSignal was used instead
L410[09:52:49] <Lizzy> so that wont even work
L411[09:52:56] <Lizzy> yeah, pullSignal is what you'll have to do
L412[09:53:05] <Lizzy> i think that accepts a timeout argument
L413[09:53:07] <Zef> Do a loop until computer.uptime reaches a higher value then what you want I think
L414[09:53:31] <Lizzy> %lua for i in string.gmatch("something\nsomethingelse\nline3\nline4", "%S+") do print(i) end
L415[09:53:31] <MichiBot> something | somethingelse | line3 | line4
L416[09:53:35] <Lizzy> awesome
L417[09:53:41] <Saphire> ||`H`||||`e`||||`l`||||`l`||||`o`||||` `||||`w`||||`o`||||`r`||||`l`||||`d`||
L418[09:53:46] <Saphire> How to annoy people on discord
L419[09:53:52] <Saphire> (and irc too)
L420[09:54:01] * Skye shakes fist
L421[09:54:41] <Lizzy> %lua a,b,c,d = string.gmatch("something\nsomethingelse\nline3\nline4", "%S+") print(a,2,b,2,c,2,d)
L422[09:54:42] <MichiBot> function: 0x7f979402b000, 2, nil, 2, nil, 2, nil
L423[09:54:48] <Lizzy> :(
L424[09:54:53] <Lizzy> %lua a,b,c,d = string.gmatch("something\nsomethingelse\nline3\nline4", "%S+")() print(a,2,b,2,c,2,d)
L425[09:54:54] <MichiBot> something, 2, nil, 2, nil, 2, nil
L426[09:55:08] <Lizzy> dammit
L427[09:55:08] <McMaartenz> Does the timeout require an argument?
L428[09:55:25] <Zef> I don't think os.pullSignal accepts time outs
L429[09:55:27] <Lizzy> ~oc computer api
L430[09:55:27] <ocdoc> http://ocd.cil.li/api:computer
L431[09:55:43] <McMaartenz> there is no such os library when coding an os from scratch up mate.
L432[09:55:43] <Lizzy> it does
L433[09:55:52] <McMaartenz> strange
L434[09:55:53] <McMaartenz> ?
L435[09:55:55] <Lizzy> it only accepts a timeout parameter
L436[09:56:15] <MGR> @Saphire you can disable spoilers on servers you moderate or globally ?
L437[09:56:21] <Saphire> Darn
L438[09:56:33] <Lizzy> so `computer.pullSignal(5)` would return after 5 seconds with nil if nothing came through the queue
L439[09:56:44] <Lizzy> though it'd also return if some event got triggered
L440[09:57:07] <McMaartenz> Would the amount of waiting be effected when an event came through the queue?
L441[09:57:19] <Zef> repeat
L442[09:57:20] <Zef> A = computer.pullSignal(5)
L443[09:57:20] <Zef> until not A
L444[09:57:22] <AmandaC> Yes, it'll be cut short
L445[09:57:45] <Zef> That probably wouldn't work great lol
L446[09:58:12] <AmandaC> No it wouldn't, you'd be throwing awaay events
L447[09:58:49] <Zef> Events are garbage!
L448[09:58:57] <Zef> Just kidding please don't hurt me
L449[09:59:02] * Lizzy makes Zef an event
L450[10:00:01] <Zef> "annoyance", "ZefTheFox#6324", 282731604479311873, 10:59AM
L451[10:01:27] * stephan48 drops the event - did Zef say something?
L452[10:02:13] <Zef> "ill drop you", "ZefTheFox#6324", 282731604479311873, 11:02AM
L453[10:02:26] * dequbed filters Zef from the global oc event queue
L454[10:02:47] <Corded> * <MGR> unregisters his event handlers
L455[10:03:03] <stephan48> poor Zef.
L456[10:04:23] <McMaartenz> Is there the possibility of a wait function using `computer.uptime()`?
L457[10:05:13] <AmandaC> computer.uptime + computer.pullSignal will work, but you'll need to process the events that come through in the mean time if you care about them
L458[10:06:45] <AmandaC> Here's an example for one of my eeproms: https://gitlab.darkdna.net/amanda/oc-fileserver/blob/master/eeprom/special-purpose/flower_pulse.lua#L35-46
L459[10:07:09] <AmandaC> If you busyloop you're likely to get Too Long Without Yielding
L460[10:07:44] <McMaartenz> damn
L461[10:08:29] <Bob> use os.sleep() at the loop end ?
L462[10:08:37] <McMaartenz> unable to use
L463[10:08:45] <Lizzy> `os` isn't in the EEPROM context
L464[10:08:45] <Rph> you can reimplement os.sleep very easily
L465[10:08:46] <Bob> ah computer.pull ?
L466[10:08:59] <Bob> computer is in the EEPROM capabilities right ?
L467[10:09:06] <McMaartenz> in the bios right
L468[10:09:16] <McMaartenz> at least somewhere idk
L469[10:09:17] <McMaartenz> ¯\_(ツ)_/¯
L470[10:09:27] <Rph> I will be working on my kernel for my OS I think
L471[10:09:49] <Rph> but I kinda wanted to make an OpenOS-compatible lightweight os
L472[10:09:50] <Bob> Microcontrollers are just overcomplicated Redstone IOs
L473[10:09:57] <Bob> they need to be able to connect to some stuff
L474[10:10:05] <Bob> and have a tier 2 ver or component bus ?
L475[10:10:15] <McMaartenz> how would you actually reimjplement `os.sleep(...)`
L476[10:10:27] <Lizzy> if you need external component access, just use a t1 case
L477[10:10:30] <AmandaC> You can put a transposer in the. Some other mods also allow you to add their blocks to it, like OpenSecurity's door controller
L478[10:10:32] <Bob> doing
L479[10:10:38] <MGR> @Bob If microcontrollers connect to things, then they just become computers
L480[10:10:59] <Rph> Code Block pastebined https://paste.pc-logix.com/yekezowolu
L481[10:11:00] <AmandaC> @McMaartenz the function I linked is a basic os.sleep re-implementation, but for an embedded environment, where I still care about modem messages.
L482[10:11:14] <McMaartenz> oh cmon
L483[10:11:16] <McMaartenz> modem messages?
L484[10:11:32] <Lizzy> hmm, Did MCUs ever get a small-ish built-in adapter for blocks they were directly adjacent to?
L485[10:12:06] <Lizzy> you don't have to listen to the modem events if you don't want to, AmandaC was just showing an example of how you can sleep but not discard events if needed
L486[10:13:15] <AmandaC> My method for eeprom-type coding is to have event "hubs" which handle the events they care about. You don't parse the modem_message in the event pump itself, you call handle_modem_message
L487[10:13:43] <Bob> all i have uses for microcontrollers are like network managers
L488[10:14:15] <AmandaC> Here's one where I care about redstone and a couple different modem message handlers: https://gitlab.darkdna.net/amanda/oc-fileserver/blob/master/elevator/eeprom/elevator-floor.lua#L117-132
L489[10:14:44] <Lizzy> %tell payonel Did MCUs ever get a small-ish built-in adapter for blocks they were directly adjacent to? I vaguely remember that being requested as a feature at some point. (not full component access, just adapter-style component access)
L490[10:14:45] <MichiBot> Lizzy: payonel will be notified of this message when next seen.
L491[10:17:06] <AmandaC> It's a pretty simple concept, the same one OpenOS uses, but it's event handling is much more complicated: https://github.com/MightyPirates/OpenComputers/blob/master-MC1.7.10/src/main/resources/assets/opencomputers/loot/openos/boot/02_os.lua#L25-L31
L492[10:17:37] <McMaartenz> This is so complicated damn
L493[10:17:55] <AmandaC> 1) Calculate the time in the future the deadline is at, 2) pull events until the deadline is reached, handling the events as you get them.
L494[10:17:58] <Bob> Reverse enginiering
L495[10:18:02] <Bob> ^
L496[10:18:29] <dequbed> Forward enginerding
L497[10:18:43] <AmandaC> If you share what you have, we might be able to give more concrete advice (Appologies if you already have, I'm only half-here )
L498[10:21:06] <McMaartenz> well
L499[10:21:14] <McMaartenz> not much
L500[10:22:28] <McMaartenz> ¯\_(ツ)_/¯
L501[10:22:52] <McMaartenz> https://pastebin.com/rjr5C4Sp
L502[10:23:25] <McMaartenz> it took me like an hour to complete the status function
L503[10:23:30] <McMaartenz> :P
L504[10:23:53] <Zef> Lol
L505[10:23:58] <Zef> %tonk
L506[10:23:58] <MichiBot> I'm sorry Zef, you were not able to beat AmandaC's record of 1 hour, 44 minutes and 26 seconds this time.
L507[10:23:59] <MichiBot> 1 hour, 38 minutes and 25 seconds were wasted! Missed by 6 minutes and 1 second!
L508[10:24:03] <McMaartenz> Oh cmon
L509[10:24:04] <McMaartenz> seriously
L510[10:24:04] <Zef> FUCK
L511[10:33:23] <SteveAirCav> In a space of 6 horizontal blocks I had hoped to place to computers and 2 x 2 screens. I couldn't place the screens next to each other as they auto made a 4x1 screen so i put the computers next to each other (SSCCSS) the out put from the computers jumps between the 2x2 screens. I know how to fix this with servers in a rack but I cant get the output of the PC's to behave. Anyone got a pointer to something that does work.
L512[10:34:12] <SteveAirCav> 2x1 screens. my bad
L513[10:34:49] <Bob> gpu.bind("right screen adress here")
L514[10:34:55] <Joco223> Made a cluster computing set up, currently doesn't have much advantage because it is running a simple sum operation but it works http://tinyurl.com/y3bvd5fj
L515[10:36:06] <SteveAirCav> @Bob that looks promising. TY
L516[10:36:46] <Rph> SteveAirCav, i wrote a program that draws a picture on multiple creens
L517[10:36:47] <Kodos> Make it spit out the Fibonacci sequence to 10,000 numbers
L518[10:36:48] <Rph> SteveAirCav, i wrote a program that draws a picture on multiple screens [Edited]
L519[10:36:57] <Rph> I also modified my OC jar to not have borders between screens
L520[10:40:45] <Joco223> @Kodos that doesn't seem very paralelisable
L521[10:41:57] <Bob> @SteveAirCav add that to their boot up scripts
L522[10:42:03] <Saphire> Joco223: cluster computing won't have much practical value in OC. Only if you do strictly MC stuff, because it is still capped by MC host
L523[10:42:08] <Kodos> Fair. I dunno what I’d use a cluster for. Usually I’m just doing basic shit like reactors doors and access.
L524[10:42:09] <Bob> so they automatically bind to the right screen
L525[10:42:40] <Kodos> I wish we had bundled network cable
L526[10:42:53] <Kodos> And the ability to set each server to a color
L527[10:43:16] <Joco223> I'm just doing it for fun really
L528[10:43:22] <Lizzy> I was gonna write a mod for that at some point. Maybe I should learn and do it
L529[10:43:40] <Kodos> Do it ?
L530[10:43:54] <Kodos> I needs it
L531[10:44:29] <Saphire> There's still no bundled netcable? >.>
L532[10:44:33] <Lizzy> @SteveAirCav do you want the two screens for separate computers?
L533[10:45:11] <Lizzy> @kodos slight problem of the fact that I have 0 modding experience
L534[10:45:29] <Kodos> I had zero modding experience when I made kmatter
L535[10:45:37] <Lizzy> And very very little java knowledge
L536[10:45:38] <Kodos> If I can do it. You can
L537[10:45:41] <Saphire> RPH, how does that even look like?
L538[10:45:44] <Kodos> Me too
L539[10:46:06] <Kodos> I still managed to make two mods.
L540[10:46:18] <Kodos> If I can you can Lizzy. I believe in you
L541[10:47:55] <Rph> what are you reffering to Saphire?
L542[10:48:05] <Lizzy> Hmm, guess I'll have to add it to my TODO list then
L543[10:48:32] <Rph> ah you mean this no borders thing? http://tinyurl.com/yxrmxf8p
L544[10:48:35] <Rph> (this is a 9x5 monitor array)
L545[10:49:00] <McMaartenz> WOW
L546[10:49:04] <McMaartenz> fancy desktop
L547[10:49:16] <Rph> this is a 1800x1000 image
L548[10:49:26] <ben_mkiv> Mimiru, https://i.imgur.com/qnDY4BL.png
L549[10:49:28] <Rph> 844 kB file
L550[10:49:31] <Rph> 844 KB file [Edited]
L551[10:49:56] <Kodos> What is going on here
L552[10:50:05] <Kodos> I look away for two minutes
L553[10:52:32] <McMaartenz> ^^
L554[10:52:33] <McMaartenz> cf
L555[10:52:39] <McMaartenz> xd [Edited]
L556[10:52:47] <McMaartenz> wait
L557[10:52:57] <McMaartenz> if you edit message in discord does it edit the message in irc too
L558[10:53:09] <MGR> It sends a new one
L559[10:53:13] <McMaartenz> eh
L560[10:53:23] <Kodos> It shows the new one with [Edited] at the end
L561[10:53:57] <Kodos> Also I recently learned you can SED with discord and it’ll edit that way too
L562[10:54:26] <Kodos> So if I say eh
L563[10:54:34] <Kodos> So if I say ehuh [Edited]
L564[10:54:44] <Kodos> Err
L565[10:54:52] <Kodos> Not what I was going for. Damn phone.
L566[11:04:17] <SteveAirCav> @Bob is it boot.lua?
L567[11:04:31] <Mimiru> ben_mkiv, did you add colored light support back to OpenLights?
L568[11:04:37] <Zef> It's .shrc or something
L569[11:04:38] <Bob> if youre using OpenOS, just drop into the boot fodler a new file
L570[11:05:16] <ben_mkiv> Mimiru, kinda yes
L571[11:05:24] <ben_mkiv> still have to test how it behaves on servers
L572[11:05:34] <SteveAirCav> @Bob it is OpenOS, TY
L573[11:05:37] <ben_mkiv> also it requires an external lib, but its optional to have the color feature
L574[11:06:09] <Mimiru> waaaay back in 1.6.4 it had it with "ColoredLightCore"
L575[11:06:12] <Mimiru> then that mod died.
L576[11:06:18] <Mimiru> and I removed support it was a sad day
L577[11:06:24] <Rph> I modified openos to execute autowalk.lua instead of autorun.lua
L578[11:06:31] <ben_mkiv> xD
L579[11:06:36] <ben_mkiv> https://minecraft.curseforge.com/projects/albedo thats the lib im using now
L580[11:06:37] <Zef> Wait does that *actually* emit colored light?
L581[11:06:51] <Mimiru> Respect, walk, what did you say?
L582[11:07:05] <Mimiru> Anyway, yes, it looks like it
L583[11:07:06] <Rph> minecraft rtx and realistic lighting when
L584[11:07:16] <Zef> Oh wow that's cool
L585[11:07:38] <Rph> hmmm, I think @Zef would do in this case (is there a fox for that) http://tinyurl.com/y3e5homc
L586[11:08:16] <Rph> sorry, had to do it
L587[11:08:19] <Zef> Oh lol funny thing is I constantly get openGL errors in my world
L588[11:08:41] <Zef> But nothing more than something in chat and it only occurs when I can't actually see chat
L589[11:08:43] <Rph> I got opengl errors and low framerate then noticed the nvidia driver uninstalled itself and I had been rolling on nouveau and mesa software rendering
L590[11:09:11] <Rph> yknow, its always good to have the driver actually installed
L591[11:10:46] <SteveAirCav> @Bob attempt to index global 'gpu' (a nil value)
L592[11:12:07] <Bob> @SteveAirCav you need to load the component library then bind gpu to the gpu component
L593[11:12:18] ⇦ Quits: ben_mkiv (ben_mkiv!~ben_mkiv@mue-88-130-52-099.dsl.tropolys.de) (Ping timeout: 190 seconds)
L594[11:12:19] <Bob> or directly do component.gpu.bind("address")
L595[11:12:21] <Bob> like
L596[11:12:59] <Bob> Code Block pastebined https://paste.pc-logix.com/apucobimef
L597[11:13:12] <Bob> it should be 99_screenbinder.lua
L598[11:13:15] <Bob> and in the boot folder of openOS
L599[11:13:57] <Bob> or even better
L600[11:14:14] <Bob> Code Block pastebined https://paste.pc-logix.com/ofarelagix [Edited]
L601[11:14:17] <Bob> here like this should do too
L602[11:15:16] <Rph> hmm
L603[11:15:28] <Rph> I have an idea to make openos installatoin less painful
L604[11:15:44] <Bob> add fancy graphs
L605[11:15:48] <Rph> no
L606[11:15:52] <Bob> :GWnanamiPepoKMS:
L607[11:16:03] <Rph> ill write an alternative init.lua
L608[11:16:07] <Rph> for the floppy dsk
L609[11:16:10] <Rph> for the floppy disk [Edited]
L610[11:16:17] <Rph> that would basically do an unattended installation
L611[11:16:37] <Rph> either using an internet card
L612[11:16:40] <Rph> or off the floppy
L613[11:16:52] <Rph> if using the internet card, the installation could be considerably faster
L614[11:18:20] <Bob> yea
L615[11:18:29] <Rph> so its basically
L616[11:18:31] <Rph> set up computer
L617[11:18:34] <Rph> insert the floppy
L618[11:18:36] <Zef> Is like 4 seconds really too slow?
L619[11:18:41] <Bob> more
L620[11:18:41] <Rph> depends on the server
L621[11:18:42] <Bob> too slow
L622[11:18:45] ⇨ Joins: BradenT7 (BradenT7!~BradenT7@ns239077.ip-192-99-147.net)
L623[11:18:57] <Rph> on my server that runs at 14 TPS on average, openos installs can take up to a minute
L624[11:19:01] ⇦ Quits: BradenT7 (BradenT7!~BradenT7@ns239077.ip-192-99-147.net) (Client Quit)
L625[11:19:06] <Rph> so idk where you pulled the 4 second figure from
L626[11:19:26] * Lizzy debates what she wants to do tonight
L627[11:19:54] <Bob> Pancakes
L628[11:21:36] <SteveAirCav> So, unrecoverable error = fresh install?
L629[11:23:38] <Bob> @SteveAirCav no reboot in most cases
L630[11:23:43] <Bob> if its a boot error then yea
L631[11:26:36] ⇨ Joins: ben_mkiv (ben_mkiv!~ben_mkiv@i577BC46E.versanet.de)
L632[12:13:32] ⇨ Joins: Inari (Inari!~Pinkishu@pD9E8F104.dip0.t-ipconnect.de)
L633[12:18:47] ⇦ Quits: ben_mkiv (ben_mkiv!~ben_mkiv@i577BC46E.versanet.de) (Ping timeout: 183 seconds)
L634[12:40:37] <Rph> %tonk
L635[12:40:38] <MichiBot> Gadsbudlikins! Rph! You beat AmandaC's previous record of 1 hour, 44 minutes and 26 seconds! I hope you're happy!
L636[12:40:39] <MichiBot> Rph's new record is 2 hours, 16 minutes and 39 seconds! 32 minutes and 13 seconds gained! Rph also gained 0.002 tonk points for stealing the tonk.
L637[12:40:51] <Rph> No tonkout this time
L638[12:43:39] <dequbed> Lizzy: People
L639[12:43:52] <Lizzy> 6?
L640[12:44:07] <Lizzy> oh
L641[12:44:20] <Lizzy> maybe some people, but i'm not near them right now :(
L642[12:44:34] <dequbed> 6 is a tad many at once maybe but if you feel up to the challenge sure.
L643[12:45:08] <Lizzy> the number 6 is just my go-to response at the moment :P
L644[12:46:18] <dequbed> well in that case 15.
L645[13:06:02] <Lizzy> hmm, to minecraft or set up a new webserver
L646[13:06:37] <Lizzy> think i'ma minecraft
L647[13:07:56] <CompanionCube> %tonk
L648[13:07:56] <MichiBot> I'm sorry CompanionCube, you were not able to beat Rph's record of 2 hours, 16 minutes and 39 seconds this time.
L649[13:07:57] <MichiBot> 27 minutes and 17 seconds were wasted! Missed by 1 hour, 49 minutes and 21 seconds!
L650[13:19:45] ⇨ Joins: ben_mkiv (ben_mkiv!~ben_mkiv@i577BC46E.versanet.de)
L651[13:24:41] <Joco223> I tried to do a 80 node cluster http://tinyurl.com/yxf4wmtr
L652[13:24:58] <Joco223> It failed spectacularly as expected
L653[13:25:33] <MGR> ohdeer
L654[13:25:55] <Zef> So I have ideas for making a big complex for a multiplayer server where each player can have a room
L655[13:26:29] <Zef> Each room comes with a computer and will be connected to an email type communication network and have user accounts
L656[13:26:34] * Lizzy hmms, wonders how she's going to get the serialization lib into an EEPROM
L657[13:26:51] <Mimiru> Carefully
L658[13:26:53] <Zef> Cry, that's how
L659[13:27:10] <Zef> Crawl up into a ball and cry
L660[13:27:18] ⇦ Quits: cpup (cpup!~cpup@24-151-32-148.dhcp.nwtn.ct.charter.com) (Ping timeout: 190 seconds)
L661[13:27:24] <Lizzy> i don't need to be trying to get serialization into an eeprom for that
L662[13:27:32] <Joco223> @MGR Packets got lost left and right lol, and the whole OC system (how computers work and sow on) has ***really*** slowed down
L663[13:27:41] ⇨ Joins: cpup (cpup!~cpup@24-151-32-148.dhcp.nwtn.ct.charter.com)
L664[13:27:47] <MGR> That's definitely not good
L665[13:27:52] <Zef> Use computercraft and your server will cry
L666[13:27:56] <Joco223> It was just for fun
L667[13:28:15] <Zef> We need like r/ayymd levels of circlejerking for oc
L668[13:28:25] <Lizzy> no we dont
L669[13:28:32] <ben_mkiv> serialize it lizzy
L670[13:28:34] <ben_mkiv> :P
L671[13:28:35] <MGR> No
L672[13:28:40] <Lizzy> ben_mkiv, -_-
L673[13:28:45] <Zef> "That's a weird way to spell ComputerShit"
L674[13:28:54] <MGR> ?
L675[13:28:57] <ben_mkiv> i can pastebin you some eeprom stuff with serialization
L676[13:29:03] <MGR> What's even worse is r/ayyymd
L677[13:29:15] <Zef> Oh I'll have to look
L678[13:29:21] <Zef> ||and probably sub||
L679[13:29:31] <MGR> What have I done?
L680[13:29:37] <Lizzy> err, if you've got some that'd be great, i only need to serialize on the EEPROM side, not undo it (because a computer running openos handles that)
L681[13:30:39] <ben_mkiv> https://pastebin.com/raw/4FgCbdzR
L682[13:30:56] <ben_mkiv> but its only compressed so that its still readable, so this could still be improved
L683[13:31:36] <Lizzy> awesome, thanks
L684[13:35:31] <Mimiru> https://drive.pc-logix.com/index.php/s/3jMYmikQYfQbHaG 328k seconds
L685[13:41:02] <ben_mkiv> @zef https://minecraft.curseforge.com/projects/openlights/files/2680655
L686[13:46:06] <Lizzy> ~oc custom_os
L687[13:46:06] <ocdoc> Predicted http://ocd.cil.li/tutorial:custom_oses
L688[14:03:49] <Z0idburg> Set up new webserver on Minecraft
L689[14:04:24] <ben_mkiv> my thoughts from yesterday^^
L690[14:04:33] <ben_mkiv> serverlocation: nether/the end
L691[14:05:03] <asie> Zef your memes are of very low quality
L692[14:05:10] <asie> We at #oc respect our ComputerCraft fellows
L693[14:05:17] <asie> every day, we pray they see the light
L694[14:05:44] <asie> ... but they don't, because every time they come back the computer's turned off
L695[14:05:49] <ben_mkiv> xD
L696[14:05:53] <ben_mkiv> oc masterrace
L697[14:06:06] <Inari> Which coincidentally is one of the most annoying OC bugs
L698[14:06:13] <asie> shush
L699[14:06:22] <Inari> %pet asie
L700[14:06:22] * MichiBot brushes asie with bof stuff. 9 health gained!
L701[14:06:30] <Inari> How's charset going anyway
L702[14:08:11] <Z0idburg> Hey Asie I was wondering something
L703[14:08:54] <Corded> * <Kodos> resists the urge to make a comment
L704[14:08:58] <Z0idburg> What do you think of gpu.get() returning a table of tables instead?
L705[14:09:12] <Z0idburg> and accepting a range instead of one location
L706[14:09:58] <Rph> I kinda want to develop a mod which adds a more capable internet card
L707[14:10:13] <Z0idburg> Rph, what would you add?
L708[14:10:25] <Rph> events to tcp sockets
L709[14:10:29] <Rph> (data event)
L710[14:10:47] <Rph> native websocket support
L711[14:10:50] <Z0idburg> I thought the Internet card emitted modem_message events
L712[14:10:58] <Rph> (for encrypted sockets and therefore discord bots yay)
L713[14:11:06] <Z0idburg> I wouldn't worry about native websocket support
L714[14:11:10] <Z0idburg> a websocket is a userland socket
L715[14:11:16] <Rph> well
L716[14:11:18] <Z0idburg> it's built on top of a regular socket
L717[14:11:24] <Rph> you can't really do encrypted web sockets tho
L718[14:11:26] <Rph> those are kinda
L719[14:11:29] <Rph> out of the range of OC
L720[14:11:33] <Z0idburg> then don't implement websockets
L721[14:11:35] <Z0idburg> implement SSL
L722[14:11:38] <Rph> because you'd have to implement a TLS 1.2 stack on lua
L723[14:11:40] <Rph> so no
L724[14:11:45] <Rph> I would add websockets
L725[14:11:53] <Rph> more methods to the HTTP API (PUT,DELETE,PATCH etc)
L726[14:12:01] <Z0idburg> tls would be easy in java / scala
L727[14:12:02] <Rph> and a less bad way of getting data from the http api
L728[14:12:19] <Rph> as in, not streams
L729[14:12:20] <Rph> but rather
L730[14:12:30] <Rph> returning the whole string
L731[14:12:36] <Rph> or downloading the entire page **first**
L732[14:12:42] <Rph> and emitting an event telling the computer that its ready
L733[14:13:00] <Z0idburg> the event is a must
L734[14:13:11] <Z0idburg> Here's what I think
L735[14:13:13] <Z0idburg> tbh
L736[14:13:18] <Rph> I think websocket support is a must
L737[14:13:24] <Rph> because the low level detalis of websockets are hell
L738[14:13:26] <Z0idburg> internet card should be almost 100% identical in API to the modem / linked card
L739[14:13:30] <Rph> and why should I reinvent the wheel
L740[14:13:32] <Z0idburg> with same events etc
L741[14:13:33] <Rph> with recreating it in lua
L742[14:13:39] <Z0idburg> it's a network card therefore it should be a common system
L743[14:13:45] <Rph> I don't think so
L744[14:14:06] <Z0idburg> you can add additional features on top of it
L745[14:14:08] <Rph> I'd make my internet block be more up to modern internet access APIs in other language standard
L746[14:14:16] <Rph> and adding features in lua for apis like http is hell
L747[14:14:21] <Rph> especially when we talk about tls
L748[14:14:33] <Z0idburg> tls is easy...
L749[14:14:38] <Rph> implement it in lua then
L750[14:14:40] <ben_mkiv> whats stopping you from doing it?
L751[14:14:43] <Rph> because "websockets are just userland sockets"
L752[14:14:47] <ben_mkiv> the addon at all
L753[14:14:53] <Z0idburg> phone call
L754[14:15:14] <Rph> nothing is stopping me besides thinking that modding api for forge on 1.8 and higher is retarded
L755[14:15:20] <Rph> and if I do it for the best version, 1.7.10
L756[14:15:22] <Rph> nobody will use it
L757[14:15:26] <ben_mkiv> thats stupid
L758[14:15:27] <Rph> so im in kinda a pickle
L759[14:15:33] <ben_mkiv> you actually need like 4-5 calls of the api
L760[14:15:33] <Rph> either learn forge for modern mc
L761[14:15:36] <Rph> or make something just for myself
L762[14:16:34] <Zef> Or don't care about what other people do and make it 1.7.10
L763[14:16:38] <Rph> also there isn't a propper documentation at all
L764[14:16:42] <Rph> for any version of forge
L765[14:16:47] <ben_mkiv> oO
L766[14:17:00] <ben_mkiv> https://github.com/TheGreyGhost/MinecraftByExample/
L767[14:17:01] <Rph> by documentation I mean a complete list of APIs available to me
L768[14:17:08] <Rph> not example projcts
L769[14:17:10] <Rph> not example projects [Edited]
L770[14:17:19] <ben_mkiv> browse through the source? its documented in the sources
L771[14:18:12] <ben_mkiv> also as said, if you use a modern IDE, and maybe some plugin like minecraft development for Idea it already creates you most of the stuff you need
L772[14:18:35] <ben_mkiv> its like filling out a registration formular...
L773[14:18:48] <Rph> I tried that IDEA plugin, it has one small flaw
L774[14:18:58] <Rph> freezes my IDE for 2 minutes on start
L775[14:19:02] <Rph> no matter what I do
L776[14:19:15] <Rph> thankfully its just start
L777[14:19:18] <Zef> I just discovered minetest and wish I had internet to test it
L778[14:19:23] <ben_mkiv> that sounds weird, update Idea maybe
L779[14:19:25] <Rph> what I do is just use the linux process pause feature
L780[14:19:29] <Rph> and pause IDEA
L781[14:19:32] <Rph> instead of closing it
L782[14:19:32] <Zef> Tried downloading it twice and both times it failed at 89%
L783[14:19:53] <Rph> I wish there was a way to also unload it from memory to swap
L784[14:19:59] <Rph> but alas, pausing it seems to do the trick
L785[14:24:31] <Z0idburg> ok.
L786[14:24:32] <Z0idburg> back
L787[14:24:33] <ben_mkiv> asie, did you ever had the problem that an oc component node got a new address "out of the sudden" in one of your mods?
L788[14:24:40] <Z0idburg> so TLS is TLS literally, TLS is TLS
L789[14:24:45] <Z0idburg> you don't implement TLS in Lua
L790[14:24:49] <Z0idburg> because it's TLS
L791[14:24:54] <Z0idburg> ?
L792[14:25:00] <Z0idburg> enabling SSL in Lua would be fine.
L793[14:25:00] <ben_mkiv> while the world gets loaded
L794[14:25:06] <Z0idburg> still dumb but fine
L795[14:25:17] <ben_mkiv> my node is fine in readFromNBT() but after some update() calls it has another address
L796[14:25:24] ⇦ Quits: cpw (cpw!~cpw@23-233-58-185.cpe.pppoe.ca) (Ping timeout: 189 seconds)
L797[14:25:31] <asie> ben_mkiv: nope
L798[14:25:40] <asie> Inari: Charset? What's that?
L799[14:25:43] <asie> I'm all about Fabric now
L800[14:27:10] ⇨ Joins: cpw (cpw!~cpw@23-233-58-185.cpe.pppoe.ca)
L801[14:28:13] <Rph> Z0idburg I don't think you understand
L802[14:28:24] <Rph> You said websocket implementation is not needed
L803[14:28:38] <Rph> Because there is tcp sockets
L804[14:29:19] <ben_mkiv> how would SSL work, would you ship a bunch of certs with the mod?
L805[14:29:44] <ben_mkiv> or is that not how ssl works?
L806[14:29:52] <Inari> asie: But isn't Fabric just a framework
L807[14:30:22] <asie> Inari: Well, yes
L808[14:30:31] <asie> it's a mod loader, mapping development tools, libraries, a modding API
L809[14:30:35] <asie> and a Gradle build system
L810[14:30:38] <asie> and a community
L811[14:30:45] <Rph> Java has it's own cert store
L812[14:31:15] <Rph> Or uses the system one
L813[14:31:21] <ben_mkiv> ah nvm
L814[14:32:29] <Z0idburg> Thing is TLS is something that you should technically be handling for Lua
L815[14:32:35] <Z0idburg> not implementing in Lua
L816[14:32:49] <Rph> Yes
L817[14:32:51] <Z0idburg> any sort of SSL stuff should be done behind the scenes
L818[14:33:11] <Rph> That's why I'm implementing wss
L819[14:33:18] <Z0idburg> that makes no sense
L820[14:33:48] <Z0idburg> just write websockets on top of tcp
L821[14:34:58] <Z0idburg> let the SSL/TLS stuff work behind the scenes
L822[14:35:29] <Rph> I know
L823[14:35:44] <Z0idburg> A websocket lib in Lua would be very easy
L824[14:35:58] <Rph> Ws will also be implemented as a separate back end API
L825[14:36:26] <Bob> Python or Lua ?
L826[14:36:45] <Bob> Friend is making some python stuff but i did in Lua for him lmao
L827[14:40:14] <Z0idburg> I just think it's kind of a waste
L828[14:40:20] <Z0idburg> to build it into hardware
L829[14:40:42] <Z0idburg> Considering how trivial they are
L830[14:40:52] <Inari> asie: But then, how does that replace charset
L831[14:40:53] <Inari> :f
L832[14:43:18] <asie> Inari: Charset is dead, at least on Forge
L833[14:43:28] <asie> Aside from urgent fixes
L834[14:43:37] <Inari> Shame
L835[14:43:39] <asie> And at least throughout 1.12/1.13
L836[14:43:42] <Inari> So what about charset on Fabric?
L837[14:43:44] <asie> 1.14 might change things.
L838[14:43:54] <asie> Charset on Fabric? If I find enough time and energy after Fabric kicks off
L839[14:44:09] <Inari> Why woudl you dev for forge when Fabric is better
L840[14:46:42] <Bob> Forge has more hooks ?
L841[14:46:53] <asie> Fabric has more mixins
L842[14:46:54] <Inari> I'm not a fan of hooks personally
L843[14:46:58] <Inari> But I guess some are into them
L844[14:49:06] <Z0idburg> I read that as hookers
L845[14:49:20] <Zef> Yay I'm having trouble with modem messages
L846[14:49:33] <Z0idburg> whys that
L847[14:50:02] <Zef> So I have a server connected to a computer with a wired connection and a normal network card
L848[14:51:12] <Zef> I'm in the lua interpreter in both
L849[14:51:13] <Zef> Server: `component.modem.open(10); print(event.pull("modem_message"))`
L850[14:51:13] <Zef> Computer: `component.modem.broadcast(10, "test")`
L851[14:51:36] <Zef> The server sits there not receiving any messages
L852[14:54:01] <Zef> Wait
L853[14:54:12] <Zef> Nvm the racks left not my left
L854[14:56:25] <Z0idburg> man I hate openos's event system
L855[14:57:36] <Zef> What about it?
L856[15:01:38] <Z0idburg> In Trotwood:
L857[15:01:38] <Z0idburg> Code Block pastebined https://paste.pc-logix.com/fecesiniyu
L858[15:01:45] <Z0idburg> is all you need!
L859[15:02:06] <Zef> event.pull("modem_message")
L860[15:02:12] <Bob> o o f
L861[15:02:16] <Z0idburg> you can use ev to map a callback function or just then so while sys.recv() do
L862[15:02:16] <Z0idburg> end
L863[15:02:27] <Z0idburg> event.pull and sys.sub are very different
L864[15:02:55] <Z0idburg> sys.sub tells the Os to start giving you all modem_message events
L865[15:03:00] <Z0idburg> to your process
L866[15:03:16] <Z0idburg> of course
L867[15:03:40] <Z0idburg> with another process it comes with you'll be able to tell it to just receive messages on a particular port for example
L868[15:04:16] <Rph> in my OS, the ability to listen for any global events will require a permission
L869[15:04:35] <Rph> like events.global.modem_message
L870[15:04:37] <Z0idburg> I can do that but I decided to trust the system
L871[15:04:49] <Rph> im making an android-like environment
L872[15:04:56] <Rph> so no application will be trusted by default
L873[15:04:56] <Z0idburg> you ask the kernel to get events but it wont prevent you from getting them because, it's Minecraft
L874[15:05:44] <Rph> also the way my system will work
L875[15:05:52] <Rph> only one PID at a time will be able to listen to a specific global event
L876[15:06:06] <Rph> other PIDs will have to listen for events generated by the master listener
L877[15:06:14] <Rph> because every event has a "recipient"
L878[15:06:32] <Rph> so for instance the display server will get the events.global.touch event
L879[15:06:38] <Rph> and it will decide what window to pass the event onto
L880[15:07:04] <Rph> so each PID gets exclusive control over a certain aspect
L881[15:07:13] <Rph> like event listening, component access etc
L882[15:08:52] <Rph> but the restricted mode will have to be started
L883[15:08:59] <Rph> using a boot script
L884[15:09:09] <Rph> by default with an empty bootscript you will get a blank screen and nothing
L885[15:09:26] <Rph> the boot script provided with the stock installation program will for instance start all the "server" processes
L886[15:11:11] <Z0idburg> Code Block pastebined https://paste.pc-logix.com/uxiyuvaqas
L887[15:11:35] <Rph> hmmm
L888[15:11:45] <Z0idburg> This is the way it's done in Trotwood
L889[15:11:52] <Z0idburg> ev uses the cb api to map function callbacks
L890[15:12:07] <Rph> okay I will also have callbacks but your way seems a little weird
L891[15:12:31] <Rph> I understand cb.handle is kind of like coroutine.yield?
L892[15:12:42] <Rph> and without it you never give back the control back to the kernel?
L893[15:13:22] <Z0idburg> no not quite
L894[15:13:47] <Rph> in my thing, requesting any resource from the kernel will result in a yield
L895[15:13:56] <Z0idburg> cb.handle takes a raw message returned from a coroutine yield and calls a function based on its input
L896[15:14:14] <Z0idburg> cb.next() calls coroutine.yield to get that
L897[15:14:19] <Z0idburg> additionally, if you notice I have these two lines:
L898[15:14:32] <Z0idburg> Code Block pastebined https://paste.pc-logix.com/bubiqirori
L899[15:14:39] <Z0idburg> those do a coroutine.yield as well
L900[15:14:42] <Z0idburg> here:
L901[15:15:03] <Rph> also I think my OS will be the only one with an isolated filesystme
L902[15:15:05] <Rph> also I think my OS will be the only one with an isolated filesystem [Edited]
L903[15:15:06] <Z0idburg> yield() is a function that just does coroutine.yield:
L904[15:15:10] <Z0idburg> Code Block pastebined https://paste.pc-logix.com/obezekuliw
L905[15:15:25] <Z0idburg> those are all of the functions that you can call from a process into the kernel, notice how all of the yield ?
L906[15:15:34] <Z0idburg> quit send wake recv sub unsub and spawn
L907[15:15:51] <Z0idburg> they're called "yield calls"
L908[15:15:55] <Rph> do you have a method to pause processes
L909[15:16:12] <Z0idburg> use you just yield()
L910[15:16:15] <Rph> no not that
L911[15:16:17] <Z0idburg> or coroutine.yield
L912[15:16:21] <Rph> not that sort of pause
L913[15:16:32] <Rph> I more meant other program sends a pause signal
L914[15:16:38] <Rph> and the target stops getting resumed
L915[15:17:00] <Rph> but all critical events (IPC messages, sleeps etc) are queued up in a FIFO queue and passed to it upon resuming
L916[15:17:09] <Rph> where resuming is another program sending a resume signal
L917[15:17:29] <Z0idburg> first of all, to kind of answer that, the following program in Trotwood:
L918[15:17:29] <Z0idburg> Code Block pastebined https://paste.pc-logix.com/dijizivaqo
L919[15:17:36] <Z0idburg> this program will pause forever
L920[15:17:39] <Rph> I don't mean that.
L921[15:17:40] <Z0idburg> it will forever sleep
L922[15:17:44] <Rph> I mean
L923[15:17:45] <Rph> a regular program
L924[15:17:49] <Rph> without any pausing logic built in
L925[15:17:49] <Z0idburg> I know what you mean
L926[15:17:52] <Z0idburg> but there's no purpose
L927[15:17:59] <Bob> Is there a way to recognize if a loop got broken by a break statement or its until / while condition has been set ?
L928[15:18:00] <Rph> there is
L929[15:18:32] <Rph> for instance, I will pause all GUI processes when the user enters debug mode
L930[15:18:40] <Rph> or rather, all processes in general
L931[15:18:44] <Rph> besides the main kernel
L932[15:18:47] <Rph> and the debug program
L933[15:18:55] <Bob> How do i do it ?
L934[15:19:13] <Z0idburg> Bob, use a finite state machine
L935[15:19:14] <Rph> you write to a variable right before using break perhaps?
L936[15:19:26] <Rph> and check that variable after the loop
L937[15:19:39] <Rph> if its 0 then the loop quit normally
L938[15:19:43] <Rph> if its 1, then a break happened
L939[15:20:36] <Z0idburg> So rph I see what you mean. It would be super easy to implement on the kernel side, though I don't think I would ever need to use it, because I want to see my programs crash
L940[15:20:52] <Rph> well I don't exactly mean crashing
L941[15:20:56] <Z0idburg> I know that
L942[15:21:03] <Rph> lets suppose that a program crashes, yes
L943[15:21:11] <Rph> but it has a child process
L944[15:21:24] <Rph> now, normally the child would get killed
L945[15:21:34] <Rph> or if a flag is set, orphaned and made to exist on its own
L946[15:21:40] <Rph> (perhaps as an auto-restart logic sort of thing)
L947[15:21:56] <Rph> but here, a second watchdog program
L948[15:21:59] <Rph> is able to pause the child
L949[15:22:03] <Rph> therefore stopping any action against it
L950[15:22:07] <Rph> clear its event queue
L951[15:22:11] <Rph> and send a clean exit event
L952[15:22:19] <Rph> notice how the kernel doesn't have to handle that
L953[15:22:21] <Z0idburg> hehe. That would be useful if the process model worked like that
L954[15:22:22] <Rph> it just handles pausing/unpausing
L955[15:22:30] ⇦ Quits: Icedream (Icedream!~icedream@hzn-b.serverkomplex.de) (Remote host closed the connection)
L956[15:22:31] <Rph> my process model will work like that
L957[15:22:47] <Rph> I will have a very clear distinction between processes and threads, too
L958[15:22:52] <Z0idburg> though there's no such thing as child processes in Trotwood, the only thing closest would be a supervisor, and supervisors don't do normal things
L959[15:23:04] <Rph> see, in my OS everything is an app
L960[15:23:11] <Z0idburg> I'm using the actor model
L961[15:23:11] <Rph> so a child process is the second instance of an app
L962[15:23:15] <Rph> running with certan parameters
L963[15:23:21] <Rph> and a explicit IPC pipe to the parent
L964[15:23:42] <Rph> and threads just run a specified function
L965[15:24:17] <Rph> also pauses could be used as a cheaper sleep
L966[15:24:21] <Z0idburg> Trotwood programs and processes are built like this:
L967[15:24:24] <Z0idburg> http://tinyurl.com/y6b5zpez
L968[15:24:30] <Z0idburg> every one of those squares and circles is a process
L969[15:24:33] ⇨ Joins: Icedream (Icedream!~icedream@hzn-b.serverkomplex.de)
L970[15:24:35] <Z0idburg> this is just one program
L971[15:24:51] <Z0idburg> they aren't actually children
L972[15:24:58] <Rph> ill make a quick diagram of how an app will work on my thing
L973[15:24:59] <Z0idburg> they're literally supervision trees
L974[15:25:32] <Rph> basically you have the kernel controling everything
L975[15:25:38] <Rph> and the app talks with multiple other apps that talk with the kernel
L976[15:25:49] <Rph> in general, user apps never talk directly with kernel subsystems
L977[15:25:55] <Rph> yes they call functions like IPC_SEND
L978[15:25:56] <Z0idburg> if a process crashes in your sense within a Trotwood program, then the process watching that process, if it exists, will decide whether or not to crash all processes in its own supervision, or restart that particular one, etc
L979[15:26:47] <Rph> here, when an app crashes (main process), a user-level event is forced the bottom of the FIFO queue skipping the order
L980[15:26:56] <Rph> informing everything else that an app crashed
L981[15:27:02] <Rph> letting the GUI for instance draw a warning box
L982[15:27:29] <Rph> when a thread of an app crashes (secondary task/process), an app-level event is forced to the bottom of the FIFO event queue
L983[15:27:52] <Rph> when the child process crashes, the parent is informed
L984[15:28:35] <Rph> and when the parent crashes and it had a watchdog child, the child is informed and can inhibit the event being sent to everything else
L985[15:30:31] <Lizzy> %tonk
L986[15:30:31] <MichiBot> Sard! Lizzy! You beat Rph's previous record of 2 hours, 16 minutes and 39 seconds! I hope you're happy!
L987[15:30:32] <MichiBot> Lizzy's new record is 2 hours, 22 minutes and 35 seconds! 5 minutes and 55 seconds gained! Lizzy also gained 0.002 tonk points for stealing the tonk.
L988[15:30:41] <Lizzy> %tonkout
L989[15:30:41] <MichiBot> Lizzy has tonked out! Tonk has been reset! They gained 0.002 tonk points! plus 0.002 bonus points for consecutive hours! Current score: 0.041
L990[15:30:46] <Rph> wow rude
L991[15:30:55] <Rph> not like I ever did that /s
L992[15:30:56] <Lizzy> i wanted my damn tonk points :P
L993[15:31:09] <Nath_SoM> ey
L994[15:31:11] <Z0idburg> lol
L995[15:31:28] <Rph> but yes zoidburg, the final thing which I think is unique to my architecture was crash-cascade detection
L996[15:31:40] <Z0idburg> ]
L997[15:31:41] <Z0idburg> heh
L998[15:31:46] <Nath_SoM> anyone has links to new os to test out
L999[15:31:52] <Rph> basically, when a crash-cascade is detected, the OS will trigger a soft reboot
L1000[15:32:05] <Z0idburg> Trotwood processes crash starting at the bottom of a tree of cupervision
L1001[15:32:21] <Rph> soft reboot being the following: Kill all coroutines, clear out the kernel state and load the boot script
L1002[15:32:21] <Z0idburg> this way crashes will reset state of processes until the processes are sane again
L1003[15:32:27] <Z0idburg> automatically restarting them
L1004[15:32:31] <Rph> here by crash cascade I mean like
L1005[15:32:35] <Rph> GPU driver crashes
L1006[15:32:39] <Rph> therefore display driver crashes
L1007[15:32:41] <Z0idburg> it will travel up the tree crashing by force even if they aren't broken
L1008[15:32:43] <Rph> therefore everything GUI crashes
L1009[15:32:45] <Z0idburg> until it is stable
L1010[15:33:03] <Z0idburg> it is theoretically possible itl go to thevery top of the tree and restart the entire program, but that is very unlikely
L1011[15:33:05] <Rph> and if more than 5 crashes are in a quick succession, (configurable in boot script), it forces a soft reboot to prevent data loss
L1012[15:33:24] <Z0idburg> yes supervisors can count crashes
L1013[15:33:34] <Rph> what soft reboot has as a sort of unique thing, is that it saves the uncrashed coroutines in memory
L1014[15:33:41] <Rph> and can allow them to return to existence
L1015[15:33:52] <Z0idburg> a supervisor in trotwood can say that if a process its watching crashes 3 times it will crash all of its other children or even itself
L1016[15:33:57] <Z0idburg> if it crashes itself
L1017[15:34:09] <Z0idburg> then the process watching it may also crash after consecutive crashes or crash its children
L1018[15:34:37] <Rph> Message contained 4 or more newlines and was pastebined https://paste.pc-logix.com/nexotavudu
L1019[15:34:38] <Z0idburg> it makes trotwood's uptime 99.99999999999999999999999%
L1020[15:34:44] <Rph> at this point the OS detects that something is wrong
L1021[15:34:50] <Rph> collects the uncrashed processes
L1022[15:34:58] <Rph> and does the soft reboot thing
L1023[15:35:04] <Z0idburg> trotwood will also allow reloading parts of processes or processes in memory
L1024[15:35:08] <Z0idburg> while they're running
L1025[15:35:09] <Rph> then fires an event "CRASH_CASCADE_RECOVERED"
L1026[15:35:21] <Z0idburg> this means you can perform a live update of the entire system including the kernel core while it is running
L1027[15:35:23] <Rph> with a list of PIDs that can be unpaused or killed
L1028[15:35:45] <Rph> but hmm, I think our ideas are completely diffrent
L1029[15:35:52] <Rph> I want to make a daily use sort of OS
L1030[15:36:02] <Rph> that is user proof
L1031[15:36:07] <Z0idburg> well your model is more a traditional model
L1032[15:36:09] <Rph> you want to make a highly distributed behemoth
L1033[15:36:18] <Z0idburg> I'm literally cloning parts of Erlang OTP
L1034[15:36:22] <Rph> hmm
L1035[15:36:31] <Rph> anyway, what do you think about my crash cascade recovery model
L1036[15:36:33] <Z0idburg> they're similar though
L1037[15:36:41] <Rph> do you think it could be successfully used by apps to prevent data loss?
L1038[15:37:24] <Z0idburg> possible, though the best thing you can do about data loss imo is what Trotwood demands out of its programmers: "DO NOT KEEP STATE"
L1039[15:37:39] <Rph> wdym by that
L1040[15:37:43] <Z0idburg> use a process specifically dedicated to it
L1041[15:37:48] <Rph> hmm
L1042[15:38:03] <Z0idburg> here's the thing
L1043[15:38:20] <Z0idburg> there is ONLY ONE thing that can ever ever ever ever cause a program to crash, only one.
L1044[15:38:24] <Z0idburg> can you guess what it is?
L1045[15:38:30] <Rph> dumb user?
L1046[15:38:32] <Rph> invalid data?
L1047[15:38:35] <Rph> corrupted file?
L1048[15:38:46] <Z0idburg> invalid data I will accept. I will call it "invalid state"
L1049[15:38:51] <Z0idburg> the state of the program was bad
L1050[15:38:58] <Z0idburg> this includes hardware failures
L1051[15:39:01] <Z0idburg> the state of the program was bad
L1052[15:39:09] <Rph> hmmm
L1053[15:39:10] <Z0idburg> thats the only thing that can ever crash a program
L1054[15:39:33] <Rph> Speaking of data loss, I won't give apps direct access to filesystem, ever
L1055[15:39:34] <Z0idburg> so, if you really want to prevent problems the best thing you can do is to be very very careful where state is kept
L1056[15:39:38] <Z0idburg> and how it is kept
L1057[15:39:46] <Rph> the filesystem will be the only component directly managed by the kernel
L1058[15:39:59] <Rph> instead it will allocate every app a data "zone"
L1059[15:40:08] <Z0idburg> you are doing one favor with cascading crashes
L1060[15:40:09] <Rph> size of which would be specified in the app permissions
L1061[15:40:14] <Z0idburg> if a crash happens, that programs state is gone
L1062[15:40:22] <Rph> if that program crashes yes
L1063[15:40:28] <Z0idburg> as long as another program doesn't assume what its state is, then you're good
L1064[15:40:29] <Z0idburg> however..
L1065[15:40:39] <Z0idburg> never ever ever keep the state of another program in another process
L1066[15:40:46] <Z0idburg> unless you intend for it to be broken at any time
L1067[15:40:52] <Rph> but if a crash cascade is caught before it reaches that program, that program is paused, system is rebooted and new programs can opt to resume the paused crashed program
L1068[15:40:59] <Z0idburg> you want a crash to isolate catastrophe
L1069[15:41:16] <Rph> I mean
L1070[15:41:21] <Rph> by state, do you mean stuff like GUI layout?
L1071[15:41:26] <Rph> because that will be all stored on the display server
L1072[15:41:32] <Rph> and apps will only commit changes
L1073[15:41:40] <Z0idburg> everything
L1074[15:41:51] <Z0idburg> you should be crashing problematic programs period
L1075[15:41:54] <Rph> your model seems... unfit for OC
L1076[15:42:01] <Z0idburg> because it will flush the state that is bad and force new state to come in
L1077[15:42:08] <Z0idburg> new freshly working state
L1078[15:42:40] <Z0idburg> this is why my supervisors will go oh shit something went wrong ok all of you others bye bye crash away
L1079[15:42:48] <Z0idburg> it will literally kill other processes
L1080[15:42:54] <Z0idburg> thinking they are plagued even if they arent
L1081[15:43:05] <Rph> Message contained 4 or more newlines and was pastebined https://paste.pc-logix.com/imofaxeden
L1082[15:43:19] <Z0idburg> think of it like when that country had that bird virus
L1083[15:43:24] <Z0idburg> and they just killed all of the chickens
L1084[15:43:29] <Z0idburg> that's basically what trotwood does
L1085[15:43:40] <Z0idburg> but at a much more sane scenario
L1086[15:43:47] <Rph> so I try to do the completely opposite thing
L1087[15:43:55] <Rph> and keep programs running for as long as possible provided they are safe
L1088[15:43:55] <Zef> So your os is hitler
L1089[15:43:58] <Zef> Lol
L1090[15:44:02] <Z0idburg> no lol
L1091[15:44:07] <Z0idburg> don't compare that
L1092[15:44:13] <Rph> why would I kill the whole display server when program A commited some trash data
L1093[15:44:16] <Rph> and program A later crashed
L1094[15:44:20] <Rph> if the display server itself is fine
L1095[15:44:21] <Z0idburg> the thing is if a program is force crashed and restarts
L1096[15:44:25] <Z0idburg> you the user wont even notice
L1097[15:44:28] <Z0idburg> it will happen invisibly
L1098[15:44:35] <Z0idburg> you can check the debug log and see errors
L1099[15:44:39] <Rph> they will notice if its a text editor and they had been working on the next big thing
L1100[15:44:42] <Z0idburg> but you the user? won't even notice
L1101[15:44:45] <Rph> and it just ate all the progress
L1102[15:44:51] <Z0idburg> no it's not the same
L1103[15:44:51] <Rph> disappeared
L1104[15:44:54] <Z0idburg> because remember ewhat I said
L1105[15:44:54] <Rph> and then reappeared
L1106[15:45:08] <Z0idburg> processes in trotwood are trees of processes not just a script
L1107[15:45:16] <Z0idburg> so parts o fthe text editor can crash
L1108[15:45:19] <Z0idburg> and you won't lose anything
L1109[15:45:42] <Rph> event handlers here will be run as separate PIDs every time the event is called
L1110[15:45:43] <Z0idburg> if somehow the text buffer process crashes you're screwed
L1111[15:45:45] <Z0idburg> but
L1112[15:45:55] <Rph> so if the program has an issue when the user presses a key
L1113[15:45:57] <Z0idburg> if you organize it right that will never happen
L1114[15:46:00] <Rph> the key handler crashes
L1115[15:46:04] <Rph> and the main program is notified
L1116[15:46:05] <Rph> t
L1117[15:46:14] <Z0idburg> right that wont interrupt the data you typed
L1118[15:46:20] <Z0idburg> it will restart the key handler
L1119[15:46:30] <Z0idburg> and if its a bug that repeats
L1120[15:46:35] <Z0idburg> you will see the error in the debug log
L1121[15:46:42] <Z0idburg> and probably even wont be able to type anything into it as a user
L1122[15:46:51] <Z0idburg> because it crashes when you hit a key without you noticing
L1123[15:46:54] <Rph> in the case of my os, if its an official app, it wil silently make a POST request to somewhere on rph.space
L1124[15:46:58] <Rph> and report the issue
L1125[15:47:12] <Rph> you can, of course, disable that
L1126[15:47:47] <Rph> but the internet connected nature gives it one very nice advantage
L1127[15:47:58] <Rph> see, as I said, the apps don't have direct disk access
L1128[15:48:02] <Rph> they access drawers with their data
L1129[15:48:09] <Rph> therefore you can sync the app data between computers
L1130[15:48:11] <Rph> using internet or modems
L1131[15:48:20] <Rph> completely invisibly from the app itself
L1132[15:49:29] <Z0idburg> so you have some sort of virtual container system
L1133[15:49:32] <Rph> yes
L1134[15:49:36] <Rph> kinda like android actually
L1135[15:49:57] <Rph> if you take a disk with my OS installed and/or formatted for my OS (format = file structure, unformatted disks get mapped to the virtual shared filesystem)
L1136[15:50:05] <Rph> it will have folders like app_data
L1137[15:50:07] <Rph> app_binary
L1138[15:50:08] <Rph> etc
L1139[15:50:24] <Rph> and the virtual shared filesystem would be for stuff like text documents
L1140[15:50:29] <Z0idburg> I'm not doing that but I do have a local:// namespace, which is a special directory that contains all of the files belonging just to that process tree
L1141[15:50:33] <Z0idburg> which is prettty handy
L1142[15:50:50] <Z0idburg> its kind of like the Q:/ drive on an original XBOX.
L1143[15:51:19] <Rph> In here there will be 2 separate APIs
L1144[15:51:24] <Rph> One for application data
L1145[15:51:29] <Rph> And one for shared data
L1146[15:52:26] <Rph> Application data will provide such goodies as a built in key value database
L1147[15:52:37] <Rph> Or just file storage
L1148[15:52:47] <Rph> Or a schema limited database even
L1149[15:53:31] <Rph> And application data will have the option to be secured using a key derived from hashes of the application files
L1150[15:54:01] <Nath_SoM> help
L1151[15:54:08] <Nath_SoM> my rack is getting no rf
L1152[15:54:54] <Nath_SoM> i tried connicting it any way possible but it wont get rf
L1153[15:55:01] <Nath_SoM> i used a power converter
L1154[15:55:06] <Nath_SoM> but nothing
L1155[15:57:01] <Bob> Is the power converter powered and connected somehow to the Rack m
L1156[15:58:36] <Z0idburg> I haven't thought about shared data
L1157[15:58:42] <Z0idburg> but I have not found a reason to need it yet
L1158[15:59:14] <Z0idburg> considering this is a high availability control system and not a general purpose OS..
L1159[16:04:26] <Rph> Shared data is essentially a generic filesystem
L1160[16:04:34] <Rph> But in an isolated space
L1161[16:04:42] <Wattana Gaming> im woke
L1162[16:27:56] <Rph> %tonk
L1163[16:27:57] <MichiBot> Sard! Rph! You beat Lizzy's previous record of <0! I hope you're happy!
L1164[16:27:58] <MichiBot> Rph's new record is 57 minutes and 15 seconds! 57 minutes and 15 seconds gained!
L1165[16:28:03] <Rph> Aaaaaaaaa
L1166[16:28:05] <Rph> Crap
L1167[16:48:03] <Zef> And of course event.pull isn't timing out
L1168[16:48:23] <Zef> event.pull("modem_message", 1) will not time out
L1169[16:48:50] <Zef> Does modem.send not work on wired cards either?
L1170[16:49:23] <MGR> modem.send works on wired cards
L1171[16:49:37] <Zef> Fucking nice then my code isn't working at all
L1172[16:50:33] <Zef> IT'S NOT TIMING OUT
L1173[16:50:35] <Zef> Why!
L1174[16:58:00] <Zef> And this is why I don't like programming sometimes
L1175[16:58:13] <Zef> I gave it the event name and a timeout interval
L1176[16:58:20] <Zef> But it's literally never timing out
L1177[16:59:52] <Zef> Yep
L1178[17:00:09] <Zef> Even in the lua interpreter it doesn't get the message nor does it time out
L1179[17:00:41] <Wattana Gaming> *hi* http://tinyurl.com/y4dqhtmz
L1180[17:00:49] <Zef> Fuck off
L1181[17:04:39] <Zef> Alright so `event.pull("modem_message", 1)` is neither receiving messages or timing out
L1182[17:05:12] <Zef> After opening a port
L1183[17:06:15] <Zef> And the server is sending duplicate messages
L1184[17:06:54] <AmandaC> That's because it's 1, "modem_message"
L1185[17:07:17] <Zef> Since when?
L1186[17:07:22] <Zef> I guess I'll try it
L1187[17:07:38] <AmandaC> Pretty sure it's always been that way
L1188[17:09:22] <Mimiru> ~w event
L1189[17:09:22] <ocdoc> http://ocd.cil.li/api:event
L1190[17:09:37] <Mimiru> event.pull([timeout: number], [name: string], ...): string, ...
L1191[17:10:01] <Zef> What the hell
L1192[17:13:51] <Z0idburg> according to most standards that would be backwards I know Zef
L1193[17:14:02] <Z0idburg> the most important argument should always be the first
L1194[17:14:08] <Z0idburg> but it's not how it is!
L1195[17:14:11] <Z0idburg> ?
L1196[17:18:50] <Zef> I absolutely ***swear*** I have done it that way before in oc
L1197[17:19:36] <Zef> And somehow the repeating messages was because of using the side of the server rack
L1198[17:36:48] ⇦ Quits: t20kdc (t20kdc!~20kdc@cpc139326-aztw33-2-0-cust441.18-1.cable.virginm.net) (Ping timeout: 189 seconds)
L1199[17:38:10] ⇦ Quits: Inari (Inari!~Pinkishu@pD9E8F104.dip0.t-ipconnect.de) (Quit: KVIrc 5.0.0 Aria http://www.kvirc.net/)
L1200[17:39:51] <payonel> confirmed
L1201[17:39:55] <payonel> it's always been that way :)
L1202[17:40:20] <payonel> @Zef, it is because event.pull takes vargs to filter on mathing signal fields
L1203[17:40:32] <payonel> event.pull("modem_message") is just matching on the first field, the signal name
L1204[17:40:52] <payonel> so event.pull("modem_message", 1) would be matching on signals where signal_data[1] == "modem_message" and signal_data[2] == 1
L1205[17:41:06] <payonel> thus, we put the optional first param as a number to indicate the timeout
L1206[17:41:38] <payonel> %tell Lizzy I don't recall new features for the mcu, i would ask vex. it is his featurette
L1207[17:41:39] <MichiBot> payonel: Lizzy will be notified of this message when next seen.
L1208[17:41:45] <Zef> Well then why is event.pullMultiple a thing?
L1209[17:42:01] <Vexatos> :<
L1210[17:42:23] <Zef> Oh wait
L1211[17:42:26] <Zef> Nevermind
L1212[17:42:42] * Lizzy prods Vexatos
L1213[17:42:52] <Vexatos> :I
L1214[17:43:05] <Lizzy> did it become a thing or not?
L1215[17:43:09] <Vexatos> never push->prod before sleep
L1216[17:43:23] <Enthalpy> %tonk
L1217[17:43:24] * Lizzy pokes instead
L1218[17:43:24] <Vexatos> did what
L1219[17:43:24] <Z0idburg> %tonk
L1220[17:43:24] <MichiBot> Fudge! Enthalpy! You beat Rph's previous record of 57 minutes and 15 seconds! I hope you're happy!
L1221[17:43:26] <MichiBot> Enthalpy's new record is 1 hour, 15 minutes and 27 seconds! 18 minutes and 11 seconds gained! Enthalpy also gained 0.001 tonk points for stealing the tonk.
L1222[17:43:46] <Z0idburg> NUUUUUUUUUUUUUUUUUUUUUUUU
L1223[17:44:02] <Lizzy> Did MCUs ever get a small-ish built-in adapter for blocks they were directly adjacent to? I vaguely remember that being requested as a feature at some point. (not full component access, just adapter-style component access)
L1224[17:44:21] <Lizzy> (same thing i poked payonel with)
L1225[17:44:21] <ben_mkiv> oh vex and pay are around.... so my component node() loads fine from NBT but somehow gets a new address actually before joining the network
L1226[17:44:39] <Vexatos> ben_mkiv, I had that issue years ago
L1227[17:44:44] <Vexatos> imagine if I knew how I fixed it
L1228[17:44:51] <Vexatos> are you sure you are doing everything I am doing >_>
L1229[17:44:54] <ben_mkiv> what the fu... could cause that? (extending the opencomputers screen class and component)
L1230[17:45:07] <Vexatos> well making a new node gives it a new address
L1231[17:45:12] <Vexatos> you load() the old address in :I
L1232[17:45:21] <ben_mkiv> yea, when i run API.network.joinOrCreate(tile) it wont fix stuff
L1233[17:45:30] <ben_mkiv> while the original oc class already is doing the same
L1234[17:45:42] <ben_mkiv> yes
L1235[17:45:59] <ben_mkiv> so my node is overwritten, but im creating it in the tileentity constructor
L1236[17:46:08] <payonel> %tonk
L1237[17:46:08] <MichiBot> I'm sorry payonel, you were not able to beat Enthalpy's record of 1 hour, 15 minutes and 27 seconds this time.
L1238[17:46:09] <MichiBot> 2 minutes and 44 seconds were wasted! Missed by 1 hour, 12 minutes and 43 seconds!
L1239[17:46:10] <ben_mkiv> so readFromNBT() "should" load() after that
L1240[17:46:14] <payonel> oh look at that
L1241[17:46:47] <Vexatos> and are you joining the network after it loaded?
L1242[17:47:14] <ben_mkiv> yes, in the first update() tick, but also tried in the tiles onLoad() method
L1243[17:47:55] <ben_mkiv> but OC Environment class already does the joinNetwork stuff, so im out of ideas
L1244[17:48:26] ⇦ Quits: Dustpuppy (Dustpuppy!~Dustpuppy@213.233.155.170) (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/)
L1245[17:48:42] <ben_mkiv> 90% of my mod is "if(node() != null && node().network() == null) API.network.joinOrCreateNetwork(this);"
L1246[17:48:43] <ben_mkiv> xD
L1247[17:49:02] <Lizzy> Vex, did you see the message i posted above? (just want a yes or no :) )
L1248[17:49:24] <Z0idburg> Now I have that dr seuss song stuck in my head
L1249[17:49:27] <Z0idburg> "Just answer yes or no"
L1250[17:49:40] <Vexatos> Lizzy, no damn clue
L1251[17:49:43] <Vexatos> try it
L1252[17:49:44] <Vexatos> >_>
L1253[17:49:52] <Vexatos> I am pretty sure it's not there
L1254[17:49:54] <Vexatos> nor should it be
L1255[17:49:55] <Lizzy> ok
L1256[17:50:02] <Izaya> %choose stream more metro exodus, don't stream more metro exodus
L1257[17:50:02] <MichiBot> Izaya: The choice seems obvious...
L1258[17:50:10] <Izaya> %choose stream more metro exodus or don't stream more metro exodus
L1259[17:50:10] <MichiBot> Izaya: My grandfather always told me that don't stream more metro exodus is the way to go!
L1260[17:50:19] <Izaya> mfw two bots tell me not to stream
L1261[17:50:39] <Lizzy> %choose stream or streaam or no
L1262[17:50:40] <Temia> Blep
L1263[17:50:40] <MichiBot> Lizzy: If I had a gold nugget for every time someone asked me about streaam
L1264[17:51:11] * Lizzy yawns, rounds up her kittens then heads for the catbed for sleeps
L1265[17:55:37] <Wattana Gaming> Hey everyone check this out: https://theannoyingsite.com
L1266[17:57:57] <Zef> Hey everyone check this out:
L1267[17:57:57] <Zef> ||I don't care||
L1268[17:59:18] ⇦ Quits: Vexatos (Vexatos!~Vexatos@p200300C107205E84B224EC26A039B876.dip0.t-ipconnect.de) (Quit: Insert quantum chemistry joke here)
L1269[18:38:31] ⇦ Quits: logan2611 (logan2611!~logan2611@184-96-204-169.hlrn.qwest.net) (Ping timeout: 202 seconds)
L1270[18:44:25] ⇨ Joins: logan2611 (logan2611!~logan2611@71-218-52-87.hlrn.qwest.net)
L1271[19:18:07] <ba7888b72413a16a> @Wattana Gaming don't forget about http://www.everyfuckingwebsite.com/
L1272[19:21:26] <AmandaC> %8ball ☔ time soon?
L1273[19:21:26] <MichiBot> AmandaC: Signs point to yes
L1274[19:44:40] <Z0idburg> OOH
L1275[19:44:46] <Z0idburg> I was just listening to the radio
L1276[19:44:56] <Z0idburg> we're supposed to get a wind chill of -27 F today
L1277[19:45:02] <Z0idburg> tonight*
L1278[19:45:21] <Zef> Sounds fun
L1279[19:45:23] <Z0idburg> thats -32 C
L1280[19:45:34] <Z0idburg> It's 5 right now without the wind chill
L1281[19:45:40] <Z0idburg> 5 F
L1282[19:45:51] <Z0idburg> I was just roaming about and driving
L1283[19:46:09] <Z0idburg> my other half's father thinks I'm silly for having a blanket and coat in the car
L1284[19:46:33] <Z0idburg> I always remind him when I was in high school 3 of us died
L1285[19:46:42] <Z0idburg> because no coats in the car
L1286[19:47:18] <Z0idburg> He's from california
L1287[19:47:28] <Z0idburg> so I automatically concluded he has no survival skills anyways
L1288[19:47:33] <Zef> My old school had like 3 deaths in a year
L1289[19:47:38] ⇦ Quits: logan2611 (logan2611!~logan2611@71-218-52-87.hlrn.qwest.net) (Ping timeout: 190 seconds)
L1290[19:47:53] <Zef> 2 suicides and one caused by his own wreckless driving
L1291[19:48:08] ⇨ Joins: logan2611 (logan2611!~logan2611@174-29-131-34.hlrn.qwest.net)
L1292[19:48:10] <Z0idburg> No
L1293[19:48:14] <Z0idburg> they got stuck
L1294[19:48:18] <Z0idburg> and they froze to death
L1295[19:48:53] <Zef> The 2 suicides weren't so much as mentioned by the school but the guy that died by wreckless driving got an announcement, moment of silence, and fucking rememberance t-shirts
L1296[19:49:33] <Zef> And the one suicide they don't even know if it was a suicide because it was heat stroke
L1297[19:49:33] <Izaya> if you live somewhere that goes below 10C you should probably keep a blanket or similar in your car
L1298[19:50:16] <Z0idburg> Yeah tbh I mean
L1299[19:50:46] <Z0idburg> I have slept outside in a tshirt at 6-10C
L1300[19:50:52] <Z0idburg> thats not so bad
L1301[19:51:15] <Z0idburg> But yeah you really should anywyas
L1302[19:51:21] <Z0idburg> I have one even during summer
L1303[19:51:25] <Z0idburg> because here in Maine
L1304[19:51:28] <Z0idburg> itl be 80 all day
L1305[19:51:31] <Z0idburg> then 40 at night
L1306[19:51:47] * Izaya converts to useful units
L1307[19:51:58] <Izaya> mmmmm 4.4..C
L1308[19:52:10] <Z0idburg> yeah 4.4 - 26 degrees
L1309[19:52:14] <Z0idburg> that's a big difference
L1310[19:52:20] <Z0idburg> its a very temperate environment
L1311[19:52:24] <Izaya> where I'm living here now used to be known for being cold
L1312[19:52:43] <Izaya> like, it'd go below zero in winter despite being half way up the country
L1313[19:52:53] <Z0idburg> That's fun
L1314[19:52:55] <Z0idburg> did you get snow?
L1315[19:52:59] <Izaya> but it hasn't done that in 10 years or so
L1316[19:53:03] <Izaya> nah no snow
L1317[19:55:22] <Z0idburg> so
L1318[19:55:37] <Z0idburg> I've noticed a lot of difference here since I was a kid
L1319[19:55:52] <Z0idburg> when I was a kid we'd get several storms every winter with like a few feet or more of snow
L1320[19:55:58] <Z0idburg> now its like you'r elucky to get 6 inches
L1321[19:56:22] <Izaya> yup
L1322[19:57:24] <Izaya> we don't get the day-long rains here any more
L1323[19:57:34] <Izaya> you'll have an overcast day with 3 half-hour showers
L1324[19:57:44] * Izaya grumbles about global warming
L1325[19:58:04] <Izaya> friendly reminder that the planet is dying and the liberals (conservatives) have no policy about it
L1326[19:58:06] <Zef> "b-but there's snow!"
L1327[19:58:10] <Z0idburg> Maine never had day long rains
L1328[19:58:15] <Z0idburg> it was always random all day
L1329[19:58:29] <Z0idburg> sunny one minute, raining the next, icy the next few minutes, cloudy the next...
L1330[19:58:43] <Zef> I'm confused on what you're trying to say izaya
L1331[19:58:59] <Izaya> the Australian Liberal party, who are conservatives, have zero policy on the environment
L1332[19:59:04] <Zef> Ohhh
L1333[19:59:10] <Z0idburg> although we've had our share of long standing storms
L1334[19:59:14] <Zef> Yeah you're Australian I forgot
L1335[19:59:16] <Izaya> don't worry their naming confuses everyone
L1336[19:59:24] <Z0idburg> zero policy on the environment?
L1337[19:59:35] <Izaya> no such thing as climate change!!!!!
L1338[19:59:40] <Z0idburg> heh
L1339[19:59:43] <Zef> They're the ones that think climate change is a hoax
L1340[19:59:52] <Z0idburg> you know I was looking at some things the other day and found something kind of interesting
L1341[20:00:03] <Z0idburg> The US seems to use pretty much the most fossil fuels
L1342[20:00:05] <Z0idburg> but
L1343[20:00:07] <Izaya> they're pulling a trump but because it's Australia we're meeting our paris agreement goals just by people choosing to do things
L1344[20:00:17] <Z0idburg> the US also appears waste the least
L1345[20:00:20] <Z0idburg> which is ironic
L1346[20:00:40] <Izaya> pretty sure aus has the highest proportion of homes with solar panels in the world
L1347[20:00:58] <Z0idburg> the the percentage we actually use instead of trash is much closer than the ammount we prodiuce and use
L1348[20:01:17] <Z0idburg> apparently there are countries out there that just unload billions and billions of gallons of fuel all of the time
L1349[20:01:20] <Z0idburg> to dump
L1350[20:02:46] <Izaya> ?
L1351[20:02:49] <Z0idburg> You know solar panels are cool and all but there's just one problem
L1352[20:03:05] <Z0idburg> They aren't really economically efficient in Maine
L1353[20:03:06] <Z0idburg> lol
L1354[20:03:13] <Z0idburg> they are very inefficient here
L1355[20:03:15] <Zef> Maines windy right?
L1356[20:03:20] <Izaya> no I feel like there's somewhat of a lack of sun in Maine
L1357[20:03:25] <Izaya> you'd be better with wind or water
L1358[20:03:26] <Z0idburg> I wouldn't say its seriously windy
L1359[20:03:33] <Z0idburg> yes that's the problem
L1360[20:03:44] <Z0idburg> the majority of us here suffer from vitamin D deficiency
L1361[20:03:45] <Mimiru> Theres a lack of Sun in Oregon too
L1362[20:03:58] <Izaya> or maybe geothermal idk if you're near a fault line but I kinda just expect most places to be on one
L1363[20:04:04] <Z0idburg> Is there really
L1364[20:04:16] <Z0idburg> so geothermal is possible in Maine
L1365[20:04:30] <Z0idburg> there is the problem that the frost line is deep
L1366[20:04:41] <Z0idburg> so you risk bursting pipes more easily
L1367[20:04:53] <Z0idburg> like seriously the ground freezes down to 8 feet below
L1368[20:04:59] <Z0idburg> that's a lor of ground that can shift from frost
L1369[20:05:18] <Z0idburg> but yes geothemal does work!
L1370[20:05:23] <Z0idburg> and from what I understand pretty well
L1371[20:05:34] <Z0idburg> it's also extremely expensive
L1372[20:05:53] <Z0idburg> Maine has been moving to wind power
L1373[20:06:07] <Z0idburg> We're placing special wind turbines offshore about 15 miles that float
L1374[20:06:20] <Z0idburg> eahc one can power 1000-3000 homes
L1375[20:06:27] <Z0idburg> it's a special compositing project
L1376[20:06:43] <Z0idburg> Maine has some of the windiest ocean
L1377[20:06:58] <Z0idburg> in the sense not as in high speed wind
L1378[20:07:02] <Zef> It'd be nice if the us's money wouldn't go to fighting imaginary threats
L1379[20:07:05] <Z0idburg> but Maine has a 100% gust uptime on the ocean
L1380[20:07:11] <Z0idburg> there's never a still air moment offshore
L1381[20:07:29] <Z0idburg> so the turbines when unbraked run constantly without idle
L1382[20:07:53] <Z0idburg> wwell tbh
L1383[20:08:06] <Z0idburg> it doesn't help that trump is trying to run it like he's in command
L1384[20:08:28] <Z0idburg> The thing is the US president isn't supposed to run the country like that
L1385[20:08:32] <Zef> And it doesn't help that gop supports him even with all the atrocities he's done
L1386[20:08:59] <Zef> If democrats had done a single thing trump did they'd be screaming
L1387[20:09:18] <Z0idburg> This is what bugs me
L1388[20:09:27] <Z0idburg> the US population is mostly brainwashed
L1389[20:09:44] <Zef> Not mostly, remember he lost the popular vote
L1390[20:09:53] <Izaya> every time I complain about australia I end up thinking "at least it's not the US"
L1391[20:10:08] <Zef> Hah you're getting there though
L1392[20:10:09] <Z0idburg> the majority of us somehow believe that presidency comes from two parties and that's the way it should be
L1393[20:10:16] <Izaya> don't remind me
L1394[20:10:19] <Z0idburg> because you know competition between twi entitie
L1395[20:10:24] <Zef> It'd be better without parties
L1396[20:10:28] <Izaya> ^
L1397[20:10:33] <Z0idburg> very few people think about the people instead of the parties
L1398[20:10:33] <Zef> An *actual* democracy
L1399[20:10:37] <Z0idburg> yes parties are a very stupid idea
L1400[20:10:42] <Zef> Not money changing hands
L1401[20:10:52] <Izaya> vote based on policy not people
L1402[20:11:22] <Zef> And care about the people
L1403[20:11:30] <Zef> Healthcare
L1404[20:11:39] <Zef> We still don't fuckin have it
L1405[20:12:04] <Z0idburg> I sometimes wonder how sociocracy would work in a government
L1406[20:12:04] <Zef> Instead we gotta keep ma guns in case the government tries to take over
L1407[20:12:15] <Zef> (their actual reasoning)
L1408[20:12:29] <Izaya> why are people not turning their guns on the companies that are taking over tbh
L1409[20:12:29] <Z0idburg> I am very fond of the stories I hear about success companies who built their companies on sociocracy (not socialism thats very different)
L1410[20:12:40] <Izaya> S3: tell me about sociocracy
L1411[20:15:19] <Z0idburg> so, sociocract was invented by some electrical engineer apparently, who was trying an expriment in his company to break people out of the habbit of hierarchical power. The way it works, is that a company is made up of smaller companies called circles. each circle represents themselves and the company and each circle communicates between eachother. the owner oesnt' have to be on top, and the idea is that if you're not happy with the way things
L1412[20:15:20] <Z0idburg> are going the circle scan break apart forming seperate companiues an be replaced with new circles, etc
L1413[20:15:49] <Z0idburg> you could have a circle whos primary purpose is to reach out to the outside world, advertising, communication of national affairs, etc
L1414[20:16:02] <Z0idburg> just as an example
L1415[20:16:52] <Z0idburg> the original idea has a particular candidate in ech circle who was the primary representer for that circle, but that coul be tweaked. That representer would be elected equally by those in the circle at whatever interval they wished
L1416[20:17:54] <Zef> Now that sounds like a good company
L1417[20:18:02] <Z0idburg> Today we see companies with departments an managers head of departments etc, but they are arranged in a form of hierarchy where power is dispersed downard
L1418[20:18:10] <Zef> Shame capitalism favors those who are dicks
L1419[20:18:47] <Z0idburg> in sociocracy you view the other circles kind of like contractor groups
L1420[20:19:35] <Z0idburg> they have their own policies, theyr own rules, etc
L1421[20:20:31] <Z0idburg> Zef, what about this
L1422[20:20:43] <Z0idburg> what if all of a sudden, you shut off the Internet
L1423[20:20:58] <Z0idburg> do you think people would snap out of a spell?
L1424[20:21:19] <Z0idburg> throwing away all of the angry people
L1425[20:21:32] <Z0idburg> or at least throwing away all of the facts that people would be angry I mean
L1426[20:21:54] <Z0idburg> but sometimes I wonder if communication has gotten to the better of people
L1427[20:24:53] <Z0idburg> You know people are connected constantly these days
L1428[20:25:23] <Z0idburg> I remember being a kid and saying "I cant wait to go home an use my computer, maybe I'll get on the Internet!"
L1429[20:25:31] <Z0idburg> and that was a big maybe
L1430[20:27:59] <Z0idburg> oh man.. I remember connecting on the Internet with dialup, getting on gamefaqs, downloading gameguides and printing them out to read when I was going for a trip in the car XD
L1431[20:33:50] <Zef> Communication like this allows progress
L1432[20:34:08] <Zef> With a disadvantage of crazy people
L1433[20:38:52] ⇦ Quits: ben_mkiv (ben_mkiv!~ben_mkiv@i577BC46E.versanet.de) (Ping timeout: 189 seconds)
L1434[20:41:50] ⇦ Quits: Thutmose (Thutmose!~Patrick@host-69-59-79-181.nctv.com) (Quit: Leaving.)
L1435[20:47:30] <CompanionCube> %tonk
L1436[20:47:31] <MichiBot> Consarn it! CompanionCube! You beat Enthalpy's previous record of 1 hour, 15 minutes and 27 seconds! I hope you're happy!
L1437[20:47:32] <MichiBot> CompanionCube's new record is 3 hours, 1 minute and 22 seconds! 1 hour, 45 minutes and 55 seconds gained! CompanionCube also gained 0.003 tonk points for stealing the tonk.
L1438[20:47:50] <simon816> dammit I was waiting too :p
L1439[20:48:37] <CompanionCube> %tonkout
L1440[20:48:38] <MichiBot> CompanionCube has tonked out! Tonk has been reset! They gained 0.003 tonk points! plus 0.004 bonus points for consecutive hours! Current score: 0.092
L1441[20:50:12] <CompanionCube> simon816: what was your target
L1442[20:50:22] <CompanionCube> i considered going for another hour but i didn't want to risk it.
L1443[20:50:22] <simon816> 3h
L1444[20:51:16] <CompanionCube> so did i just ninja you or did you forget/miscalculate?
L1445[20:53:03] <simon816> yeah ninja'd
L1446[20:53:15] ⇦ Quits: logan2611 (logan2611!~logan2611@174-29-131-34.hlrn.qwest.net) (Read error: Connection reset by peer)
L1447[20:55:50] ⇨ Joins: logan2611 (logan2611!~logan2611@184-96-195-94.hlrn.qwest.net)
L1448[20:56:42] <Z0idburg> OH OH OH ITS MAGIC
L1449[21:25:37] ⇦ Quits: ba7888b72413a16a (ba7888b72413a16a!~ba7888b72@66.109.211.150) (Quit: WeeChat 2.4)
L1450[21:25:43] ⇨ Joins: ba7888b72413a16a (ba7888b72413a16a!~ba7888b72@66.109.211.150)
L1451[21:29:54] ⇦ Quits: logan2611 (logan2611!~logan2611@184-96-195-94.hlrn.qwest.net) (Ping timeout: 198 seconds)
L1452[21:31:08] ⇨ Joins: logan2611 (logan2611!~logan2611@184-96-186-208.hlrn.qwest.net)
L1453[21:34:17] ⇦ Quits: logan2611 (logan2611!~logan2611@184-96-186-208.hlrn.qwest.net) (Ping timeout: 180 seconds)
L1454[21:35:56] ⇨ Joins: logan2611 (logan2611!~logan2611@71-218-33-246.hlrn.qwest.net)
L1455[21:49:48] ⇦ Quits: Biochemic (Biochemic!~biochemic@2a02:908:d721:e260:f557:91f1:8458:499f) (Ping timeout: 189 seconds)
L1456[22:27:13] ⇦ Quits: flappy (flappy!~flappy@88-113-149-197.elisa-laajakaista.fi) (Ping timeout: 190 seconds)
L1457[22:40:06] ⇦ Quits: Cervator (Cervator!~Thunderbi@2601:4c1:4000:362c:3552:69f2:d9ed:6a3b) (Quit: Cervator)
L1458[22:40:16] <Mimiru> %tonk
L1459[22:40:16] <MichiBot> Willikers! Mimiru! You beat CompanionCube's previous record of <0! I hope you're happy!
L1460[22:40:17] <MichiBot> Mimiru's new record is 1 hour, 51 minutes and 38 seconds! 1 hour, 51 minutes and 38 seconds gained! Mimiru also gained 0.001 tonk points for stealing the tonk.
L1461[22:40:22] <Mimiru> shit 9 minutes
L1462[22:46:29] <Temia> Could be worse, could be like 20 seconds too early
L1463[23:44:15] ⇦ Quits: ba7888b72413a16a (ba7888b72413a16a!~ba7888b72@66.109.211.150) (Quit: WeeChat 2.4)
L1464[23:46:20] ⇨ Joins: ba7888b72413a16a (ba7888b72413a16a!~ba7888b72@66.109.211.150)
<<Prev Next>> Scroll to Top