code logs -> 2013 -> Sat, 14 Dec 2013< code.20131213.log - code.20131215.log >
--- Log opened Sat Dec 14 00:00:48 2013
00:05 celticminstrel [celticminst@Nightstar-gj43l1.dsl.bell.ca] has quit [[NS] Quit: KABOOM! It seems that I have exploded. Please wait while I reinstall the universe.]
00:05 celticminstrel [celticminst@Nightstar-gj43l1.dsl.bell.ca] has joined #code
00:05 mode/#code [+o celticminstrel] by ChanServ
00:46 Derakon[AFK] is now known as Derakon
00:46 Turaiel is now known as Turaiel[Offline]
00:49 You're now known as TheWatcher[T-2]
00:51 You're now known as TheWatcher[zZzZ]
01:03 Stalker [Z@Nightstar-484uip.cust.comxnet.dk] has quit [Ping timeout: 121 seconds]
01:32 thalass [thalass@Nightstar-be7.ses.145.58.IP] has joined #code
01:33 * thalass ponders installing #! on the netbook
01:34
< thalass>
Mint14 is a bit long in the tooth, and despite moving to Mint to get away from Unity, i'm getting bored with the !gnome style desktop.
01:34
< thalass>
Thus: #! on netbook, and maybe KDE on the desktop when i get back from holidays.
01:37
< thalass>
Also: My netbook is getting so old that the plastic is cracking around the hinge points on the screen. >.<
01:54 Derakon is now known as Derakon[AFK}
01:54 Derakon[AFK} is now known as Derakon[AFK]
02:10 thalass [thalass@Nightstar-be7.ses.145.58.IP] has quit [[NS] Quit: arg]
02:26 Vornicus [vorn@Nightstar-sn7kve.sd.cox.net] has joined #code
02:26 mode/#code [+qo Vornicus Vornicus] by ChanServ
02:46 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Ping timeout: 121 seconds]
02:56 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
02:56 mode/#code [+o Syloq] by ChanServ
03:03 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Ping timeout: 121 seconds]
03:15
<&McMartin>
Aha, it seems SteamOS is using Debian Wheezy as the base now.
03:15
<&McMartin>
Good; they originally based on Ubuntu 12.04 and I think that proved over the next couple years to be a misstep
03:19 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
03:19 Syloq is now known as NSGuest27306
03:22 Turaiel[Offline] is now known as Turaiel
03:31 NSGuest27306 [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Ping timeout: 121 seconds]
03:36 NSGuest10821 [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
03:38 NSGuest10821 [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Operation timed out]
03:40
< RichyB>
McMartin, is Debian stable no longer as ossified as it used to be?
03:42
<@Namegduf>
Stable is still entirely unsuitable to use as a home desktop system.
03:43
<@Namegduf>
The critics are still entirely stupid for criticising it for that, though, seeing as that's not its job.
03:45
< RichyB>
What's it meant for, servers and corporate desktop images?
03:46
<@Namegduf>
Yes.
03:46
<@Namegduf>
Servers above all else.
03:47 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
03:47 Syloq is now known as NSGuest8430
03:50
<&ToxicFrog>
I'm glad steamOS is out but WHERE IS MY GAME STREAMING VALVE
03:52
<&McMartin>
Namegduf: I would say that prior to the new stable, it was also entirely unsuitable for corporate desktop images.
03:52
<&McMartin>
I base this on receiving bug reports that one of my PyGTK apps unconscionably relied on features that were not introduced until GTK+ 2.3
03:53
<&McMartin>
Being nine minor revisions out of date means Nothing Is Gonna Work.
03:53
<@Namegduf>
Fair enough.
03:53
<@Namegduf>
I don't really know about that use case.
03:53
<&McMartin>
Actually, wait, no, at the time I believe it would have been eleven minor revisions out of date
03:53
<&McMartin>
I think 2.13 was the latest at that time.
03:56
<&McMartin>
And yes, my reaction to this was "this is your fault for attempting to install software onto Debian stable that was not shipped with it", a policy I continue to hold to this day
03:56
<@Namegduf>
For end users, that's reasonable.
03:56 NSGuest8430 [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Ping timeout: 121 seconds]
03:57
<@Namegduf>
Stable ought to permit IT people to upgrade server stuff readily freely, I think, by custom packages and similar. It ought to be up to date enough for that.
03:57
<@Namegduf>
Possibly with some work.
03:57
<@Namegduf>
And maybe now that's reasonable for desktop, too.
03:58
<&McMartin>
Yeah. For anything with a graphical interface, however, it was entirely hopeless because they never upgraded the core widgets from a position where they were entirely broken.
03:58
<@Namegduf>
Okay.
03:58
<@Namegduf>
For SteamOS, though, it sounds fairly ideal.
03:58
<&McMartin>
And then apparently suggested that they should blame the developers for relying on bleeding edge techniques
03:58
<&McMartin>
Yes
03:58
<&McMartin>
Also, stable *just* revved.
03:59
<@Namegduf>
Which means it's only, what, three months behind rolling?
03:59
<@Namegduf>
Freeze plus typical lag time.
03:59
<&McMartin>
As opposed to seven years or so, that sounds about right.
03:59 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
03:59
<@Namegduf>
I tend to like Ubuntu with custom WM stuff installed for desktop, myself.
04:00 Syloq is now known as NSGuest24041
04:00
<&McMartin>
Yeah
04:00
<@Namegduf>
Debian Unstable is good, but configuring things like bluetooth is such a pain.
04:00
<&McMartin>
s/like bluetooth//
04:00
<@Namegduf>
It has all the parts just as well as Ubuntu, but it's self-assembly.
04:00
<@Namegduf>
And bluetooth stacks on Linux are hideous.
04:00
<&McMartin>
Ubuntu and Fedora are the only distros I've ever used where hardware actually worked to spec mostly out of the box.
04:01
<@Namegduf>
Yeah.
04:01
<&McMartin>
The one counterexample involved patent licensing bullshit causing one chip to lie about its capabilities when queried via standard means.
04:01
<@Namegduf>
Well, it could be a time issue.
04:01
<@Namegduf>
Back when I was moving distro, nothing worked.
04:01
<&McMartin>
(The Intel HD4000; flipping a checkbox in the DRI config makes it work)
04:02
<@Namegduf>
My ATI GPU was *weird* and nothing could autodetect on it without crapping itself.
04:02
<@Namegduf>
Including current Ubuntu liveCDs.
04:02
<&McMartin>
Yeah. ATI drivers were pretty infamous about that even on Windows -_-
04:02
<@Namegduf>
THen I had some nVidia hardware which worked alright under most distros, IIRC.
04:02
<@Namegduf>
I stuck to nVidia-only offerings up until my last purchase in 2010.
04:03
<@Namegduf>
After my ATI experience.
04:03
<@Namegduf>
nVidia at least quite consistently works under Linux.
04:03
<&McMartin>
Yeah
04:03
<@Namegduf>
Now it has probably changed.
04:03
<&McMartin>
Pretty sure nvidia's proprietary drivers are still the best ones, but I think Intel's are now the best OSS ones.
04:03
<&McMartin>
Of course, the intel chips *do* less
04:04
<@Namegduf>
I'd agree if Intel didn't switch to embedding PowerVR crap a couple of generations back on Atom.
04:04 VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has quit [[NS] Quit: Program Shutting down]
04:04
<&McMartin>
I should qualify that with "The Intel HDxxxx chips"
04:04
<@Namegduf>
My GPU on my netbook took getting a bleeding edge kernel installed and fiddling to get to work.
04:05
<&McMartin>
HD4000 worked out of the box on 12.04 and ran TF2 and HL2 flawlessly, and ran Bastion once I flipped the aforementioned DRI switch ("This chip can do S3TC in hardware even though it claims not to be able to")
04:05
<@Namegduf>
And by work, I mean, work at native resolution.
04:05
<@Namegduf>
Forget acceleration.
04:05
<@Namegduf>
PowerVR hate Linux and have no released drivers. The reverse engineering work was very recent.
04:06
<@Namegduf>
It was not very friendly of Intel to use them.
04:06 NSGuest24041 [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Ping timeout: 121 seconds]
04:06
<@Namegduf>
But it's okay now.
04:06
<&McMartin>
That seems unique to one line.
04:07
<&McMartin>
As in, it both predates and postdates lines where Intel directly supports the OSS drivers (including the Ivy Bridge ones like the one I cited)
04:07
<@Namegduf>
All Atom Cedarview and I think Centerton ones.
04:08
<@Namegduf>
They switched Atom over to them entirely for at least a couple of generations.
04:08 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
04:08 mode/#code [+o Syloq] by ChanServ
04:08
<&McMartin>
Ah
04:08
<&McMartin>
Yeah, these are i7s on the other side
04:08
<@Namegduf>
Yeah.
04:08
<&McMartin>
Oh hey, mesa supports OpenGL 3.3
04:08
<&McMartin>
That'll be a reason to upgrade in April
04:08
<&McMartin>
I'll actually be able to run those OpenGL tutorials -_-
04:09
<&McMartin>
http://en.wikipedia.org/wiki/Comparison_of_Intel_graphics_processing_units
04:10
<&McMartin>
The grouping is a little wacky; the PowerVR-based stuff is all jammed together but it seems like about half a dozen independent generations
04:12 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Ping timeout: 121 seconds]
04:19 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
04:19 mode/#code [+o Syloq] by ChanServ
04:22
< RichyB>
McMartin, my current opinion of Intel's GPUs and drivers is that it's nice that they work so reliably under Linux, but I class it as a bit of a pain that the driver for the GPU in this i7-3540M (only one revision behind latest available) doesn't support GLSL 330 and hence I can't use it to follow http://www.arcsynthesis.org/gltut/ :|
04:22
< RichyB>
OTOH, great 2D driver! Rock solid!
04:36
<&McMartin>
RichyB: Yes, that's the thing that Mesa released an update for two months ago, apparently
04:37
<&McMartin>
And that very gltut was the thing I wrote ARGLE to deal with
04:38
<&McMartin>
There are bits that can translate down to earlier versions, which I wound up doing since information about OpenGL 2.1 (the important breakpoint) is being eradicated from history itself
04:48
< RichyB>
Oh interesting, so it might actually work with just a software update?
04:48
<&McMartin>
Yeah
04:49
<&McMartin>
The chip on my i7 (I don't recall the submodel offhand) apparently supports all the way up to DX11 and thus OpenGL 4.x
04:49
<&McMartin>
Linux drivers are just lagging a bit, it seems (shock)
04:50
< RichyB>
Supposedly Fedora 20 comes out some time next week so I'll upgrade then.
04:50 * McMartin nods
04:50 Kindamoody[zZz] is now known as Kindamoody
04:50
<&McMartin>
I'm gonna wait for the new year, since my Fedora machine is headless
04:50
< RichyB>
On a partly-related note
04:50
<&McMartin>
The lappy runs Ubuntu at the moment and it will ultimately take 14.04 LTS when it hits.
04:50
< RichyB>
KDE4 is still pretty fucking sweet.
04:50
<&McMartin>
And then probably stay there. Forever.
04:52
< RichyB>
Incidentally, F19's GUI installer did, IMO, blow Ubuntu's out of the water a bit.
04:52
< RichyB>
I'd be interested to see if that installer bubbles all the way down to RHEL 7 whenever that comes out.
04:53 * Vornicus ...can't remember what he was up to when he left off last time
04:53
<~Vornicus>
I really suck at that.
05:05
<&McMartin>
It's goldfish time. Serial pastebomb inc.
05:05
<&McMartin>
OK, so, game objects in Monocle have a list of "traits".
05:05
<&McMartin>
Some of these are things like "invisible" that define how they interact with the under-the-hood parts.
05:05
<&McMartin>
Some are things like "pre-physics" registering for a callback when that part of the frame happens.
05:05
<&McMartin>
And some are user-custom, like "enemy" or "bullet" or "wall".
05:05
<&McMartin>
Other objects can register for a callback whenever they collide with an object with a given trait (so, for instance, things might register a take-damage routine upon collisions with a bullet, while bullets will register a 'remove from play' routine upon collision with anything)
05:05
<&McMartin>
Where I'm stuck is in how to represent the collision.
05:05
<&McMartin>
Since the form the developer is using when speccing out objects is the string (it's all JSON), it would make sense to have it be a string. "You, object X, hit this object, Y, and you care because it has trait Z."
05:05
<&McMartin>
Due to Monocle's internals, I can make those strings be "interned" - that is, they will be exactly the same chunk of memory if it's the same trait. Once you've seen it once, you can recognize it again with ==/eq?/pointer compare.
05:06
<&McMartin>
But since I have to do these checks a *lot*, I also need to translate them into small integers suitable for indexing into arrays, since that's how groups of objects of interest will be indexed internally
05:06
<&McMartin>
That seems like it might be worth exposing to the end user so they can build trait-based jump tables of their own. Does it make sense to have the callback give the trait of interest as *both* a string *and* the integer version?
05:07
<~Vornicus>
or... you could give the callback the integer, and publish somewhere the array of strings? I don't know.
05:08
<&McMartin>
Well, if I expose it, there will be "convert ID to string" and "convert string to ID"
05:08
<&McMartin>
Internally there's already "convert string to ID, making a new ID if needed"
05:09
<&McMartin>
But, like, PyMonocle probably would do just fine with just the string, since it's going to use it to index a table with
05:10
<&McMartin>
(And Gambit or C# could just use the IntPtr as a key in an IntPtr -> relevantdata table)
05:14 Derakon[AFK] is now known as Derakon
05:14
<&McMartin>
Derakon: If you have some thoughts on the last page of backscroll I welcome your design insights >_>
05:15
<&Derakon>
Will check, roger.
05:15 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Operation timed out]
05:16
<&Derakon>
Hmm..
05:16 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
05:16
<&Derakon>
Yeah, I'd say do callbacks with the ints by default, and make the mapping of int -> string available.
05:17
<~Vornicus>
Stupid thoughts: in C++ you could pick what it sends by teh signature of the callback function
05:17 Syloq is now known as NSGuest9648
05:17
<&Derakon>
PyMonocle could, as a matter of convenience, automatically sub in the strings for ints if it wanted to (or make a convenience function that does so).
05:18
<&McMartin>
Derakon: Well, what I'm actually imagining is that the user defines a class with a method ilke "collide_bullet" and it gets getattr'd.
05:18
<&McMartin>
But OK
05:18
<&Derakon>
McM: er, you lost me. I thought we were talking about simplifying traits down to ints.
05:18
<&McMartin>
We are; the question is what happens next.
05:18
<&Derakon>
Where do methods enter into it?
05:19
<&McMartin>
The "callbacks" are actually presented as "here is an event for you to consume" so that I can minimize having to actually do FFI-based callbacks
05:19
<&McMartin>
But that's going to turn into method calls for C++ and I could see it do that in Python too.
05:19
<&McMartin>
In C++, integers are the natural way to do it; in Python, strings are.
05:20
<&Derakon>
Okay, walk me through a use case from setup to invocation.
05:20
<&McMartin>
That's part of what I'm trying to design >_>
05:20
<&Derakon>
Monster object says "I want to have this method called when I collide with a bullet"?
05:20
<&Derakon>
Heh, okay.
05:20
<&McMartin>
Config file says "kind 'monster' subscribed to collision with 'bullet'", more or less
05:20 * Derakon nods.
05:20
<&McMartin>
That gets loaded in when you load the resource map.
05:21 * McMartin draws some clouds
05:21 NSGuest9648 [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Ping timeout: 121 seconds]
05:21
<&Derakon>
Hm, okay...and this is all in pure C, right?
05:21
<&McMartin>
Now you're in the game logic, and when you create an object you do so by specifying, in part, that it is of kind "monster"
05:21
<&McMartin>
Yeah.
05:21
<&McMartin>
You get back a structure that you fill in with customizations from "monster"'s defaults.
05:21 * Derakon tries to figure out a way to do this that doesn't have the client having to handle their own event dispatch.
05:21 * McMartin draws more clouds
05:22
<&McMartin>
The client, then, handling its own event dispatch, yes, calls mncl_pop_event()
05:22
<&McMartin>
This returns a structure that, say, says "I am a collision event, involving this object, and this other object, and this is being fired because that other object has the "bullet" trait."
05:23
<&McMartin>
It's how to "phrase" "that other object has the bullet trait" that I'm trying to nail down.
05:23
<&Derakon>
So something like (EVT_COLLISION, objId1, objId2, "bullet")
05:23
<&McMartin>
Right, or (EVT_COLLISION, objPtr1, objPtr2, "bullet", 12)
05:23
<&Derakon>
Where 12 means "the bullet trait"?
05:23
<&McMartin>
Yeah
05:23
<&McMartin>
And isn't guaranteed to be constant across runs.
05:24
<&Derakon>
If the client is handling their own event dispatch, then they'll have a mapping somewhere of object IDs/pointers to event callbacks for them.
05:24
<&McMartin>
(*probably* will be if all else is equal, but)
05:24
<&McMartin>
Right.
05:24
<~Vornicus>
I was about to ask that
05:24
<&McMartin>
Derakon: Most likely, and I'm doing a standard optimization to make that easier.
05:24
<&Derakon>
So they'll just do subscribers[objId1]["bullet"](objId2) if this were Python.
05:25
<&McMartin>
Yup.
05:25
<&McMartin>
With C++, which does not have reflection, life is harder.
05:25
<~Vornicus>
Well, okay, I was more about to ask, "how does a thing know what trait gets what ID?"
05:25
<&Derakon>
Eh? You have std::map and function pointers; what more do you need?
05:25 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
05:25
<&Derakon>
Vorn: API function returns a mapping or a list of pairs or something.
05:25
<&McMartin>
Pointers to bound methods are garbage; std::map is not O(1)
05:26
<&Derakon>
Hm.
05:26
<&Derakon>
I thought it was.
05:26
<~Vornicus>
it's a treemap
05:26
<&Derakon>
What good is a non-O(1) hash map?
05:26
<&McMartin>
Nope, it's a tree-map, not a hash.
05:26
<&Derakon>
...ah.
05:26
<~Vornicus>
O(log n)
05:26
<&McMartin>
"It doesn't require you to define anything other than operator<"
05:26 Syloq is now known as NSGuest44358
05:27
<&Derakon>
Also, why are pointers to bound methods garbage?
05:27
<&McMartin>
The syntax is finicky and opaque and developers dislike using them.
05:28
<&Derakon>
&(this->funcName) doesn't work?
05:28
<&Derakon>
But okay, fair enough.
05:29
<&McMartin>
Basically, with small ints you can have one dispatch function with a computed goto^W^Wswitch statement that does the secondary dispatch by trait, and then you do the rest with inheritance.
05:29
<&Derakon>
Hrm, given traits-as-ints, you could have an array of subscribers; the trick then would be how to invoke the subscribers' appropriate functions, without making them handle their own event dispatch too!
05:29
<&McMartin>
Yup
05:29
<&McMartin>
This is exactly how I'm handling subscriptions internally, even
05:29 NSGuest44358 [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Ping timeout: 121 seconds]
05:30
<&Derakon>
Tricky problem.
05:30
<&McMartin>
array indexed by trait, contents are an iterable, sorted set.
05:30
<&Derakon>
I much prefer Python where I can just throw around function references like it ain't no thang~
05:30
<&McMartin>
Yup
05:30
<&McMartin>
One of the reasons I'm sticking to C for Monocle itself is so that clients can, once they set up the glue right, do all the wacky shit their language prefers~
05:30
<&McMartin>
(The scheme dispatcher is totally going to be something like 'vector of lambdas' or 'symbol-indexed table of lambdas')
05:32
<&Derakon>
Getting back to the original question, for now I'd say just provide both the string and the int.
05:33
<&Derakon>
Maybe in the future you can also provide just-the-string and just-the-int versions and the client can specify their preference, but the efficiency gain is so negligible I honestly wouldn't worry about it.
05:33
<&McMartin>
I suppose that works.
05:33
<&McMartin>
Yeah
05:33
<&McMartin>
I mean, we're already in tagged-union land
05:41 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
05:41 Syloq is now known as NSGuest35129
05:43 Derakon is now known as Derakon[AFK]
05:44 NSGuest35129 [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Operation timed out]
05:49 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
05:50 Syloq is now known as NSGuest32157
05:52 NSGuest32157 [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Operation timed out]
06:03 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
06:04 Syloq is now known as NSGuest43218
06:18 NSGuest43218 [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Ping timeout: 121 seconds]
06:23 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
06:24 Syloq is now known as NSGuest43437
06:27 NSGuest43437 [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Ping timeout: 121 seconds]
06:34 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
06:35 RichyB [RichyB@Nightstar-c6u.vd5.170.83.IP] has quit [[NS] Quit: Gone.]
06:35 Syloq is now known as NSGuest46102
06:38 NSGuest46102 [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Ping timeout: 121 seconds]
06:38 RichyB [RichyB@Nightstar-c6u.vd5.170.83.IP] has joined #code
06:50 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
06:51 Syloq is now known as NSGuest39593
07:03 thalass [thalass@Nightstar-iaimd3.bigpond.net.au] has joined #code
07:19 Stalker [Z@Nightstar-484uip.cust.comxnet.dk] has joined #code
07:24 Turaiel is now known as Turaiel[Offline]
07:24 celticminstrel [celticminst@Nightstar-gj43l1.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!]
08:13 NSGuest39593 is now known as Syloq
08:14 Syloq is now known as NSGuest61684
08:17 NSGuest61684 is now known as Syloq
08:17 mode/#code [+o Syloq] by ChanServ
09:16 thalass [thalass@Nightstar-iaimd3.bigpond.net.au] has quit [Ping timeout: 121 seconds]
09:29 thalass [thalass@Nightstar-g3c0h3.bigpond.net.au] has joined #code
09:40 You're now known as TheWatcher
09:50 Vornicus [vorn@Nightstar-sn7kve.sd.cox.net] has quit [[NS] Quit: ]
10:04 Kindamoody is now known as Kindamoody|afk
10:10
<&jerith>
McMartin! I have a Monocle question!
10:10
<&jerith>
Is it safe to add files to a resource directory after that resource directory has been added?
10:11
<&jerith>
(This is relevant to tests I am writing.)
10:12
<&McMartin>
I think it is! But I don't know if it works.
10:12
<&McMartin>
My guess is that it works for files but does not work for zips, because I cache the zip's directory structure.
10:13
<&jerith>
It works for the test I've just written.
10:13
<&jerith>
I wouldn't expect it to work for zipfiles, but directories are more malleable.
10:13
<&McMartin>
Actually, it looks like it does work on zipfiles because I don't cache the directories
10:14
<&McMartin>
However, I do not feel comfortable guaranteeing that I never will
10:16
<&jerith>
I have a little test helper that makes a tempdir and has methods for adding files to it. It's more convenient to call mncl_add_resource_dir() when I construct the helper than to do it in every test that adds resources.
10:16 * McMartin nods
10:16
<&McMartin>
Yeah, that's fine
10:17
<&McMartin>
Changing files while they're acquired is not great
10:17
<&jerith>
Yeah. I wouldn't expect that to work without an explicit reload.
10:18
<&McMartin>
It refcounts so you have to release the resource for each place that acquired it
10:18
<&jerith>
I didn't say an explicit reload would be *easy*.~
10:19
<&McMartin>
I'm saying "I don't expose an explicit reload"~
10:19
<&McMartin>
In fact, I don't think there's one internally, even
10:24
<&jerith>
Right, that's KV data parsing done.
10:25
<&McMartin>
I should probably make an API for that that doesn't require callbacks
10:25
<&jerith>
I think Python-level event objects are the next thing to look at.
10:25
<&McMartin>
See some discussion earlier re: things I plan to do with collision objects
10:25
<&McMartin>
Need to get generic subscription working first.
10:25
<&jerith>
The callback API is a bit clunky, but I can't think of anything better.
10:26
<&jerith>
Ooh, I should read that discussion.
10:26 AverageJoe [evil1@Nightstar-fb1kt4.ph.cox.net] has joined #code
10:33
<&jerith>
Hrm.
10:34
<&jerith>
McMartin: Do you translate between SDL events and Monocle events?
10:34
<&McMartin>
About halfway.
10:35
<&McMartin>
Keysymbols are directly imported, but SDL_Event and MNCL_EVENT are not the same type, not even remotely
10:35
<&jerith>
Ah, cool. The latter is what I was interested in.
10:35
<&McMartin>
That's a tagged union in monocle.h
10:36
<&jerith>
(I spent a chunk of last Sunday doing all the event stuff (except user-posted events) in pygame-cffi.)
10:36
<&jerith>
(There was some scary stuff in there.)
10:37
<&jerith>
Are you going to have user events?
10:37
<&McMartin>
No, in that the sequence will be hardcoded...
10:37
<&jerith>
MNCL_EVENT_USER is fine.
10:38
<&jerith>
Oh, event firing sequence?
10:38
<&McMartin>
... yes, in the sense that every event that's attached to an object, ever, only happens because you asked for it.
10:39
<&jerith>
We've found it useful to have events for things like "change scene" which can be fired in response to other things.
10:40
<&jerith>
The door objects in Suspended Sentence fire those and then the event loop takes care of all the mechanics of loading the new scene, etc.
10:40
<&McMartin>
Yeah, Monocle fires each event that can be attached to an object with a NULL object once per frame.
10:40
<&McMartin>
That's the hook for external processing, more or less.
10:41
<&McMartin>
"PREINPUT" with NULL is the frame boundary mechanism.
10:42
< AverageJoe>
does 'go' support 'goto'?
10:42
<&McMartin>
I'm keeping that out of the C layer for now; I think it can be more readily handled by the client when it gets generic cues.
10:42
<&McMartin>
(Monocle also, after all, has no notion of rooms/scenes.)
10:42
<&jerith>
Cool.
10:43
<&jerith>
McMartin: Of course. We just used custom events to trigger transitions in our implementation on top of pygame, which also doesn't have them.
10:44
<&McMartin>
Yeah, I'm thinking that's better handled with a separate queue.
10:45
<&McMartin>
One difference between Monocle and raw SDL - possibly also pygame - is that Monocle *does* have a notion of frames.
10:45
<&McMartin>
That would mean user events need to happen at a specific point in the logic, and specifically do not get to be the next event fired.
10:45
<&McMartin>
Monocle's "event queue" is actually a generator, not a true queue.
10:46
<&McMartin>
If I had a "remind me of things" system it would be an independent queue that I consulted after POSTRENDER and before PREINPUT.
10:46
<&McMartin>
It's not clear to me yet that this belongs in the C layer.
10:48
<&McMartin>
Especially since wrapper libraries could trivially add it by reacting to PREINPUT-NULL themselves.
10:48
<&jerith>
pygame has no notion of frames either, except that you call clock.tick() to wait until enough time has passed to give you the maximum framerate you've asked for.
10:48
<&McMartin>
That's what you do in raw SDL as well.
10:49
<&McMartin>
Monocle is fixed: PREINPUT, (all input events this frame, mostly map SDL), PREPHYSICS, (dx, dy, df processed), COLLISION, PRERENDER, RENDER[*], POSTRENDER.
10:49
<&McMartin>
the frame wait happens on the way to returning PREINPUT on NULL.
10:50
<&jerith>
Hrm.
10:50
<&McMartin>
RENDER is only received if you are marked as a custom renderer; otherwise you draw the current frame of your current sprite, unless you have the "invisible" trait.
10:50
<&McMartin>
RENDER on NULL happens first and is where rooms and backgrounds are drawn; POSTRENDER on NULL is where you draw the GUI.
10:52
<&McMartin>
Every one of the phases produces a consumable event on NULL, then any objects that subscribed to it get the message. Order is only guaranteed on RENDER, where objects will be called in reverse order of depth.
10:52
<&McMartin>
(But not yet because keeping the scene sorter consistent is a lot of work and I'm not ready for that yet)
10:55
<&jerith>
Anyway, no user event posting means I only have to worry about reading events.
10:55
<&McMartin>
Yeah
10:55
<&jerith>
Which is easier. :-)
10:57
<&McMartin>
Yeah, making the event stream work properly is my challenge for the weekend.
10:57
<&McMartin>
(Right now all objects are visible, subscribed only to PRERENDER, and don't have custom rendering.)
11:01
<&jerith>
What is the purpose of MNCL_EVENT.subscriber?
11:03
<&McMartin>
... that shouldn't be there the next time I push. It's a leftover from when all events could be subscribed to. It's been replaced with self pointers inside value.
11:04
<&McMartin>
Originally there was no actual MNCL_OBJECT, just IDs that you could use to subscribe to things with.
11:05
<&jerith>
Cool. One less thing to worry about. :-)
11:05 thalass_ [thalass@Nightstar-jvdib0.bigpond.net.au] has joined #code
11:06 thalass [thalass@Nightstar-g3c0h3.bigpond.net.au] has quit [NickServ (GHOST command used by thalass_)]
11:06 thalass_ is now known as Thalass
11:08
<&McMartin>
In other news, I took a quick look at MMF2 and there's nothing in it worth looting. -_-
11:09 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Ping timeout: 121 seconds]
11:09
<&jerith>
In a "nothing new" sense or a "they do everything wrong" sense?
11:09
<&jerith>
I'm guessing the latter. ;-)
11:09
<&McMartin>
Little of column A, little of column B.
11:10
<&McMartin>
They don't do *everything* wrong, as evidenced by the fact that Nyfflas wrote everything good in it.
11:10
<&McMartin>
But it's definitely, uh, the ADRIFT to GM:S's Inform 7.
11:12 * jerith looks at ADRIFT, isn't impressed.
11:13
<&McMartin>
ADRIFT is real bad
11:14
<&McMartin>
MMF2 is demonstrably better than ADRIFT in that while doing the form-filling thing instead of having a proper scripting language available it has a decent presentation layer
11:16
<&McMartin>
Really Big Sky looks quite nice
11:16
<&McMartin>
Pity about the, you know, game~
11:17
<&McMartin>
But yeah, MMF2 was WaDF, Knytt, Knytt Stories, and the Knytt Stories level editor
11:18
<&McMartin>
So it's clearly got something going for it when it's expressible.
11:18
<&McMartin>
(I think Knytt Underground is the successor to MMF2)
11:26 Thalass [thalass@Nightstar-jvdib0.bigpond.net.au] has quit [Connection closed]
11:32 NSGuest1893 [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
11:37 NSGuest1893 [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Ping timeout: 121 seconds]
11:39 AverageJoe [evil1@Nightstar-fb1kt4.ph.cox.net] has quit [Ping timeout: 121 seconds]
11:42 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
11:43 Syloq is now known as NSGuest60066
11:47
<&jerith>
Events wrapped nicely.
11:48 NSGuest60066 [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Ping timeout: 121 seconds]
11:50 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
11:51 Syloq is now known as NSGuest62
11:54 NSGuest62 [Syloq@Nightstar-ujl.ett.136.198.IP] has quit [Ping timeout: 121 seconds]
12:02 Syloq [Syloq@Nightstar-ujl.ett.136.198.IP] has joined #code
12:03 Syloq is now known as NSGuest22299
12:13 Stalker [Z@Nightstar-484uip.cust.comxnet.dk] has quit [Ping timeout: 121 seconds]
12:48 thalass [thalass@Nightstar-gucq71.bigpond.net.au] has joined #code
12:49
< thalass>
Can i just say that netgear suck
12:51
<&jerith>
thalass: Yes.
12:51
<&jerith>
All consumer networking equipment is made entirely out of fail.
12:52
<@TheWatcher>
Also woe.
13:12
< thalass>
We have an EVG2000, and i'm trying to create a firewall rule that forwards inbound port 22 to my raspberry pi, so i can continue fiddling with it while in canada. It insists that said port is in use with either remote management, another firewall rule, upnp port mapping, RIP, or the internet connection type. None of which are related.
13:15
<@TheWatcher>
thalass: ... you really don't want to froward port 22
13:15
<@TheWatcher>
*forward
13:15
< Shiz>
s/networking //
13:16
<@TheWatcher>
set something like port 24832 or something to forward to port 22 on the pi
13:16
< thalass>
I'm not sure i can do that on this POS, but i do see your point.
13:17
< Shiz>
what if you try to login to your external IP under port 22
13:17
< Shiz>
inb4 remote ssh
13:17
< Shiz>
inb4 router backdoor
13:17
< thalass>
It would be preferable if it told me not to be stupid, rather than send me hunting for nonexistent rules somewhere
13:18
< thalass>
If i try to connect inbound on 22 it times out
13:18
< Shiz>
ssh $(curl -s ifconfig.me) is always my first test
13:18
< Shiz>
:P
13:21
<@TheWatcher>
thalass: if your box is anything like mine, what you need to do is go to "Services", add a custom service, give it a name like "realssh", tcp type, start port 24832, finish port 24832. Then go to Firewall Rules, add an "inbound service" rule, select the realssh service, set Action to Allow always, set "send to lan server" to be the IP address of your pi. Then on the pi, set sshd so it listens on both 22 and 24832.
13:21
< thalass>
ah
13:22
< thalass>
I was looking for something in the router to translate the port there. >.<
13:22 * thalass is such a noob
13:22
< Shiz>
lol
13:22
< Shiz>
that is some shitty routing
13:22
<@TheWatcher>
yeah, their firmware doesn't support forwarding to a different port
13:22
< thalass>
AUGH
13:23
< thalass>
Apparently /that/ port is also in use somehow.
13:23
< thalass>
i blame the telstra branded gorram firmware also
13:23
< Shiz>
iptables -t nat -A PREROUTING -p tcp --dport 23458 -j DNAT --to-destination 192.168.1.5:22
13:23
< Shiz>
is how you'd do it on a standard linux router
13:23
< Shiz>
:P
13:24
<@TheWatcher>
Thal: At this point I'd be checking whether they prohibit running services off your connection in the AUP, and have decided to enforce that in their firmware with a shitty message.
13:24
< thalass>
wait. never mind. Finger slipped and selected the wrong rule
13:25
< thalass>
In my defence i've had 8 hours sleep in nearly 48 hours.
13:25
< thalass>
openwrt doesn't support the evg2000, either. I checked. I miss the old linksys routers that were half decent.
13:26
< Shiz>
Linksys, decent?
13:26
< Shiz>
if you're talking about a WRT54G maybe
13:26
< Shiz>
but then only with alt firmware :P
13:26
<&jerith>
Shiz: Only when you replace the firmware.
13:27
< Shiz>
I mean
13:27
< Shiz>
it's not like dd-wrt is a marvel of engineering either
13:27
< Shiz>
Had a lot of shit with it too
13:27
< Shiz>
and I tried to check out hteir source tree once
13:27
< Shiz>
it included over 30 full linux source trees
13:27
< Shiz>
... before I aborted
13:29
< thalass>
That's exactly the router i was thinking of. :P
13:30
< thalass>
Though the one i had was a later version with less memory, so openwrt was tricky and/or impossible to flash
13:52 VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has joined #code
14:35 * thalass facepalm
14:36 redwire [redwire@Nightstar-27dppb.nl.bellaliant.net] has joined #code
14:36
< thalass>
that's why it's not working. There's an "sshd_config" file, which is the one i want, not "ssh_config"
14:36 * Syka makes thalass's facepalm quieter
14:37
< Syka>
you'll scare off the ssh(d)
14:37
< thalass>
heh
14:38
< Syka>
also, i made a thing https://dl.dropboxusercontent.com/u/14290114/Screenshot%20from%202013-12-14%2000 %3A41%3A33.png
14:38
< Syka>
(that's autogenerated from the API configuration file)
14:40
< thalass>
Nice. Where does the weather info come from? BOM?
14:41
< Syka>
thalass: oh, it's not actually a real thing
14:41
< Syka>
thalass: this is an API-creation framework
14:41
< Syka>
thalass: this is the source of where it does that https://github.com/hawkowl/haddock/blob/master/haddock/test/betterAPI.json
14:42
< Syka>
the idea is that you write an API config, write your implementation, and then plug it into this
14:42
< Syka>
and it does parameter existence/validity checking, plus an option to generate API documentation, as part of it
14:43
< Syka>
you don't even need to do anything special - your function is called with the params, you return a dict/list/etc of the result, the framework checks it and JSONises it, then returns it
14:43 * thalass eyes the .json, doesn't look. Too high codefu
14:43
< thalass>
neat
14:43
< Syka>
the actual 'implementation' is https://github.com/hawkowl/haddock/blob/master/haddock/test/test_haddock.py#L108
14:44
< Syka>
or rather, that is what you would write
14:44
< Syka>
combine it with that JSON using the 6 or so lines here: https://github.com/hawkowl/haddock/blob/master/example.py
14:44
< Syka>
and then bam
14:45
< thalass>
That's reasonably legible
14:46
< Syka>
it's probably able to be made a bit nicer
14:46
< Syka>
but
15:09 thalass is now known as Thalasleep
15:46 Derakon[AFK] is now known as Derakon
16:23 Turaiel[Offline] is now known as Turaiel
16:25 AnnoDomini [abudhabi@Nightstar-d00ld9.gw-out.freebnc.net] has quit [Connection closed]
16:50 AnnoDomini [abudhabi@Nightstar-d00ld9.gw-out.freebnc.net] has joined #code
17:42 celticminstrel [celticminst@Nightstar-gj43l1.dsl.bell.ca] has joined #code
17:42 mode/#code [+o celticminstrel] by ChanServ
18:36 NSGuest22299 is now known as Syloq
18:37 Syloq is now known as NSGuest29954
18:39 NSGuest29954 is now known as Syloq
18:39 mode/#code [+o Syloq] by ChanServ
20:44 Derakon is now known as Derakon[AFK]
21:13 Vornicus [vorn@Nightstar-sn7kve.sd.cox.net] has joined #code
21:13 mode/#code [+qo Vornicus Vornicus] by ChanServ
22:16 Kindamoody|afk is now known as Kindamoody
22:55
<&McMartin>
RichyB: I was poking around packages.ubuntu.com and it looks like 14.04 is gonna have Mesa 10.0, which has OpenGL 3.3 support on Intel GPUs.
22:57
<&McMartin>
Fedora 20, however, only has 9.2.4. 10.0 is in Rawhide.
22:57
<&McMartin>
https://apps.fedoraproject.org/packages/mesa
22:58 Kindamoody is now known as Kindamoody[zZz]
23:04
< RichyB>
McMartin, aaaargh.
23:04
< RichyB>
Thank you for that.
23:05
<&McMartin>
Among the reasons Debian drives me up the wall: I'm kind of tentative on whether my statement about 14.04 is true, because there isn't a "mesa" package. I'm operating on the assumption that libg1-mesa-glx will have the same version as Mesa proper.
23:05
<&McMartin>
Because there are dozens if not hundreds of *-mesa-* packages
23:06
< Syka>
er
23:06
< Syka>
is there a mesa metapackage?
23:06
< RichyB>
That's one of the things I used to love about Arch and Slackware; with fewer people working on them, they lack the manpower to do stupid busywork like breaking up packages into ever-smaller and smaller bits.
23:07
<&McMartin>
Syka: Not seeing one at http://packages.ubuntu.com/search?keywords=mesa&searchon=names&suite=trusty&sect ion=all
23:07
< RichyB>
The fact that Arch lacks separate -dev(el)? packages alone kinda made me love it.
23:07
< Syka>
RichyB: u,
23:07
< Syka>
um
23:08
< RichyB>
Pity I really dislike most everything else about the distro.
23:08
<&McMartin>
But I'm pretty confident in my 10.0 Mesa Underlying theory because most of these are version 10.0.0-whatever
23:08
< Syka>
so you mean you're happy with arch being unable to do proper packaging?
23:08
<&McMartin>
And they weren't in Saucy
23:08
<&McMartin>
Syka: Right, that's the point. Debian's idea of "proper packaging" is wildly at odds with everyone else that isn't basing on them.
23:08
< Syka>
you have packages for each item, bound together with a metapackage
23:08
<&McMartin>
s/each item/each version of each item/
23:09
< Syka>
McMartin: ?
23:09
< RichyB>
McMartin, to be fair, RPM distros do the libfoo vs libfoo-devel split too.
23:09
<&McMartin>
RichyB: Yes, and I'm totally OK with that
23:10
<&McMartin>
I just prefer that, when I subscribe to a package, I get minor upgrades too.
23:10
<&McMartin>
major upgrades, since the break backcompat, should be new packages.
23:10
< Syka>
but you do?
23:10
<&McMartin>
My experience with Debian is that you only get patch upgrades when you take a package
23:10
< Syka>
that's... how it's always worked
23:10
< Syka>
you never get new packages
23:10
< Syka>
unless you're using sid
23:11
< Syka>
in which case it's a moot point
23:11
<&McMartin>
Syka: Right
23:11
<&McMartin>
I'm saying "When I install the python2 package, it will autoupgrade me from 2.6 to 2.7"
23:11
<&McMartin>
This is incorrect behavior by APT standards AIUI
23:11
< Syka>
no it won't, unless you're on sid
23:12
< Syka>
in which case it's rolling release
23:12
<&McMartin>
YES THAT'S EXACTLY THE PROBLEM, IS THAT IT DOESN'T.
23:12
< Syka>
and that is expected behaviour
23:12
< RichyB>
That's accurate. If you're using a stable release of a DEB or RPM distro, you get only -patchlevel version bumps for security fixes⦠excepting a few packages like Firefox and Chrome which tend to have far more aggressive release schedules than everything else in the same distro, but there are good reasons to treat web browsers differently.
23:12
<&McMartin>
*********ONLY********** IF YOU ARE ON A DEBIAN-BASED SYSTEM
23:12
<&McMartin>
Maybe I haven't been shouting loud enough?
23:12
< Syka>
also
23:12
<@celticminstrel>
O_O
23:13
<&McMartin>
What you are describing as "expected behavior" - and, presumably, evidence that the entire rest of the world is wrong - is the reason APT-based systems drive me up the wall compared to all its competitors
23:13
< Syka>
in your python2 example, that's not kind of correct
23:13
< RichyB>
Uh? If I install "python" on a CentOS 6.x system, it installs python-2.6.something-some_patch_level.
23:13
< Syka>
python2 is a metapackage that depends on the python2.7 package or something, doesn't it?
23:13
< RichyB>
"yum update -y" will never get me a version of python that doesn't match "python-2.6.something-$((some_patch_level + n))"
23:14
< Syka>
since I have both python 2.6 and 2.7 i think
23:14
< RichyB>
until I hit the magic sequence of commands that takes me off CentOS 6.x and onto CentOS 7.x, whenever that comes out.
23:14
<&McMartin>
RichyB: Sure, and then you don't have to do that by hand afterwards.
23:15
<&McMartin>
My experience with Ubuntu in the past has been that I *do* have to specify these things by hand unless the distro built on top of it has elected to make them part of the basic install.
23:15
< RichyB>
Well yes, when I upgrade to Cent7, when that comes out, I will get whatever the Cent7-blesséd python2 version is.
23:15
<&McMartin>
Syka: When I search Ubuntu's package database I don't see a "python2" metapackage either. Maybe it's not listing metapackages?
23:15
<&McMartin>
Where do I look for those?
23:15
< Syka>
well
23:15
< Syka>
are you talking debian or ubuntu
23:16
<&McMartin>
Python 2 has been around for a very long time and Ubuntu inherits debian packages.
23:16
< Syka>
it does and it doesn't
23:16
< Syka>
ubuntu sometimes do wacky things
23:18
< Syka>
McMartin: http://packages.debian.org/unstable/python/python
23:18
< Syka>
`python` depends on `python2.7`
23:18
<&ToxicFrog>
Mint has python2.7 but not python2.
23:19
<&McMartin>
Aha!
23:19
<&McMartin>
That's because it's "python" and not "python2"
23:19
< Syka>
well
23:19
<&McMartin>
This is hilarious because it was trying to install python 2.5 and getting 1.7 that was my *first* experience with apt
23:19
< Syka>
thats because python2 means python too
23:19
< Syka>
as per PEP something or other
23:20
<&McMartin>
Anyway, this is really the issue that I have with Ubuntu/Debian vs. Fedora; it seems like I can guess package names with about 75% accuracy on Fedora's (admittedly smaller) repos, while the apt systems my accuracy is more like 10% and even having access to a search engine only bumps that to like 30%.
23:21
< Syka>
some things might specify it as python2
23:21
< Syka>
well, i have a generally good success rate
23:21
< Syka>
there is also apt-cache
23:21
< Syka>
which contains the description of all the packages in all the repos you have
23:21
<&McMartin>
I'm trating apt-cache as "access to a search engine"
23:21
<&McMartin>
And yes
23:21
<&McMartin>
I have never been able to get aptitude to work for me
23:22
<&McMartin>
Even when it was nominally better than apt-get + apt-cache
23:22
< Syka>
neither have i
23:22
< Syka>
i dont even know how to use it
23:22
<&McMartin>
It's TOO USER-FRIENDLY TO DOCUMENT!
23:22
< Syka>
its a curses interface
23:22
< Syka>
it is not user friendly :(
23:22
<&McMartin>
Oh wait, you hit a key by accident, I'm going to queue 47,235 packages for install and not tell you how to reverse that action
23:23
<@celticminstrel>
My first issue with apt is that I didn't know there were commands beyond apt-get.
23:23
<&McMartin>
You need, at minimum, apt-get and apt-cache to interact with it at all.
23:23
<@celticminstrel>
^was, not is
23:23
< Syka>
i dont fully know how to use apt-cache either
23:23
<&McMartin>
I don't know why they're still different commands; it's not like there's overlap between their command sets
23:24
< Syka>
er, well
23:24
<&McMartin>
I keep hearing tell that there's something fatally wrong with yum, but I have yet to get a clear explanation of what that thing is
23:24
< Syka>
one downloads and installs packages, one searches the package cache
23:24
< Syka>
also yum's problem is that it sucks
23:24
<&McMartin>
So does apt-get, as we have just demonstrated. You'll need to be more specific.
23:24
< Syka>
it's also unbearably slow every time i've used it
23:24
< Syka>
apt-get is fine
23:24
<&McMartin>
This is incorrect~
23:25
<&McMartin>
(See how useless this conversation is?)
23:25
<@Tamber>
It is software, therefore it sucks.
23:25
<&McMartin>
Let me be more precise
23:25
<@Tamber>
Or, better, it exists, therefore it sucks. ;)
23:25
<&McMartin>
"I am given to understand that despite things like CentOS using it, yum has serious problems at scale"
23:25
<&McMartin>
For, like, actual reasons beyond "when I tried it I had a bad user experience"
23:26
< Syka>
my best experience with yum so far is it exploding on centos when updating nagios
23:26
< Syka>
also on fedora when updating the package cache
23:26
< Syka>
also, re: fedora packages, jesus christ why do they not support nvidia drivers
23:27 Stalker [Z@Nightstar-484uip.cust.comxnet.dk] has joined #code
23:27
< Syka>
the wiki article was like ten pages and involved compiling
23:27
<@celticminstrel>
I find yum easier to use than apt, though.
23:28
<&McMartin>
OSS or proprietary drivers?
23:28
<@celticminstrel>
It might have something to do with that its interface is closer to MacPorts. >_>
23:28
<&McMartin>
Fedora's big deal is that they have no nonfree section at all
23:28
< Syka>
McMartin: proprietary
23:28
<@celticminstrel>
So how would you install nonfree software on Fedora?
23:28
<&McMartin>
Set up a private side repo and use that, ideally
23:28
<&McMartin>
But people that do that don't use Fedora in the first place.
23:28
< Syka>
ie. the ones that don't freeze my GPU upon bootup :|
23:29
< Syka>
and thats kind of dumb
23:29 * McMartin shrugs
23:29
< Syka>
fedora doesnt have non-free software
23:29
<&McMartin>
It's their equivalent of Debian's ranting about Tentacles of Evil
23:29
<@celticminstrel>
So there's no non-official repositories for Fedora and nonfree software?
23:29
< Syka>
made by Red Hat, the kings of pointless proprietary bullshit
23:29
<&McMartin>
There's not *no* non-official repositories, but I've never found any acceptable community standard ones.
23:30
<@Tamber>
(You may, by now, be beginning to see Syka's viewpoint: There is things she likes, and everything else falls into "Stupid bullshit nobody should use."~)
23:30
< Syka>
so what if you want to install working drivers
23:30
<&McMartin>
There are instructions right there!
23:30
< Syka>
"bad luck, get used to noveau"?
23:30
<@Tamber>
"Go get the nvidia tarball. Follow their instructions."
23:30
<@Tamber>
or the .bin, whatever
23:31
< RichyB>
McMartin, yum has one very specific problem that I'm used to running into in practice, which is that "yum search foo" will re-download the packages list before actually searching for foo unless it's recent/fresh, and that's mildly annoying because it takes a minute or two.
23:31
< Syka>
McMartin: what if you want to install them without hackyness
23:31
<&McMartin>
Install Windows Problem Solved
23:31
<@Tamber>
*snrk*
23:31
< Syka>
that's not a solution
23:31
<@Tamber>
Sure it is.
23:31
< RichyB>
It's not really the end of the world.
23:31
< Syka>
because then i have to go and use nvidias hacky windows installer
23:31
<@Tamber>
The Official Nvidia Solution is: Get the .bin file, follow the damn instructions.
23:32
<&McMartin>
This does raise an interesting point, though.
23:32
<@Tamber>
If you want better than that, get them to work on the open-source drivers.
23:32
<&McMartin>
I'm now wondering if Fedora takes such a hardline on non-free just so that it can commit to, in the future, never turning into RHEL
23:32
< Syka>
I just apt-get install nvidia-driver and BAM i have accelerated video
23:32
< RichyB>
Please elaborate on âever turning into RHELâ?
23:33
< RichyB>
Do you mean ânever turning into some damn distro which deliberately has to move slowly in order to not break binary compat with a huge collection of awful closed-source software made for itâ?
23:34
<@Tamber>
unpleaCent-OS? *shot*
23:34
< Syka>
rhel and centos are hilarious
23:34
<&McMartin>
RichyB: more "being packed with Red Hat's proprietary stuff that everybody else hates"
23:34
<&McMartin>
Which may be, mechanically, what you refer to
23:34
<&McMartin>
Moving slowly clearly isn't a problem for everyone, and some consider it a necessary feature.
23:38
< RichyB>
you say "proprietary" but centos is all open-source
23:39
< RichyB>
may still be "proprietary" in the sense that "RedHat themselves make up the entire community for this thing and they won't accept patches" though?
23:39
<&McMartin>
Which thing is "this thing"?
23:40
<&McMartin>
Also, CentOS I thought did pretty well for itself
23:40
<&McMartin>
And, empirically, Fedora advances faster than CentOS does
23:40
<&McMartin>
For good and ill.
23:43
<@froztbyte>
<RichyB> McMartin, yum has one very specific problem that I'm used to running into in practice, which is that "yum search foo" will re-download the packages list before actually searching for foo unless it's recent/fresh, and that's mildly annoying because it takes a minute or two.
23:43
<@froztbyte>
man.
23:43 Orthia [orthianz@Nightstar-avg.1ee.224.119.IP] has quit [Ping timeout: 121 seconds]
23:43
<@froztbyte>
you should see how infuriating shat shit becomes in places with lesser internet
23:44
<@froztbyte>
I'm not even kidding when I say that I've seen 20min yum search runs
23:45
< RichyB>
McMartin, oh Fedora just rockets off into the distance, it's great and I love it. â¥
23:46
< RichyB>
froztbyte, yeah. Really wish that there was at least delta-compression for the multi-megabyte release lists.
23:47
< RichyB>
froztbyte, oh also, yum keeps a per-user cache of the package list.
23:47
< RichyB>
so if I run "yum search" as me and then "sudo yum install", it'll end up downloading 1 copy of the package list for me and 1 for root, which somewhat sucks.
23:47
<@froztbyte>
RichyB: go search for my name on the yum lists
23:48
< RichyB>
Workaround: sudo yum search, sudo yum install
23:48
<&McMartin>
RichyB: Huh.
23:48
<@froztbyte>
RichyB: years back when I had nary a clue I sent a question/suggestion about that problem
23:48
<@froztbyte>
RichyB: didn't even get a response.
23:48
<&McMartin>
For as long as I've used Fedora, they made yum fail instantly if you ran it non-sudo
23:48
< RichyB>
McMartin, *shrug* software is imperfect. :|
23:48
<@froztbyte>
they honestly don't care
23:48
< RichyB>
Ah, the read-only operations don't.
23:49
< RichyB>
froztbyte, I postulate that this is what happens when programmers have internet connections that are too reliable; most get stupid and lose empathy.
23:49
<&McMartin>
Oh hey, how about that.
23:49
<&McMartin>
Apparently some of my non-install operations were secretly not read-only
23:50 Turaiel is now known as Turaiel[Offline]
23:50
< RichyB>
McMartin, maybe there's something I haven't encountered or thought of, but "yum {search,info,list}" have always worked for me as ordinary user.
23:51
<@froztbyte>
RichyB: I would agree
23:51
<@froztbyte>
RichyB: I like to fuzztest software by giving it crappy packets
23:52
<@froztbyte>
I've made apache httpd crash by feeding it some skype
23:52
< RichyB>
Really? That was probably a remote-execution or at least DoS bug at one point.
23:53
<@froztbyte>
this was about 3 years ago
23:54 * TheWatcher readsup
23:54
< RichyB>
*nodnod* Hopefully fixed⦠hopefully. :)
23:54
<@froztbyte>
haha
23:54
< RichyB>
I thought Skype was all UDP?
23:55
< RichyB>
Kinda assumed that since IIRC they invented the idea that turned into STUN.
23:55
<@froztbyte>
it had some TCP as well (at one point?)
23:55
<@froztbyte>
for the auth stuff etc
23:56
<&McMartin>
RichyB: It's been a long time since I set up a sudo yum alias; I think it might have been to check for updates but not actually take them
23:56
<&McMartin>
And maybe it was getting interpreted with the same stricture as update itself
23:57
<&McMartin>
Speaking of yum update, I haven't done one in awhile, time to do that
23:57
<@TheWatcher>
Syka: CentOS is, as I have noted in the past, quite wonderful if you happen to be dealing with legacy systems, or are happy to go with (claimed) higher stability at the cost of dealing with packages released around the point that mammoths died out. Otherwise it's an utter fucking pain in the arse.
23:58
<@froztbyte>
see, this is the point where I .... not disagree, but more wonder
23:59
<@froztbyte>
you could just as well leave a debian running
23:59
<@TheWatcher>
Yeah, indeed
23:59
<@froztbyte>
hell, I've got two etch boxes I set up at $oldco back when I first started
23:59
<@froztbyte>
and those will live for *years* more
23:59
<@TheWatcher>
Frankly, that'd be my choice
23:59
<@froztbyte>
until the hardware dies. and then they'll just reprov on new hardware from backup.
23:59
<@froztbyte>
and they'll keep doing that until the software literally can't deal with new enough hardware
--- Log closed Sun Dec 15 00:00:04 2013
code logs -> 2013 -> Sat, 14 Dec 2013< code.20131213.log - code.20131215.log >

[ Latest log file ]