IRC Logs for #crux Sunday, 2018-04-08

Romsterbrian|lfs, i fixed romster/lapack it works on new gcc-fortrain now00:32
*** Kruppt has quit IRC00:40
*** TimB_ has joined #crux00:40
brian|lfsah ok thanks00:47
brian|lfswhat did it need a patch?00:49
Romsternah just some obscure option and to add -fPIC to CFLAGS00:57
Romster-fPIC wasn't being passed to LD00:57
brian|lfsya I know just looked00:57
brian|lfsI updated scimpy and numpy on my end00:57
brian|lfsscipy is still building00:58
Romstertook me a bit to figure it out LDFLAGS isn't respected and i even messed with make.inc00:58
brian|lfs it was annoying took me a week to get cura to work has a lot of python stuff01:00
brian|lfsturned out I needed it all as python301:00
brian|lfsI"m like after all that maybe we need to depercate python201:01
brian|lfsI noticed numpy and scipy only compile with pkgmk with prt-get they just bomb out01:01
*** druid_droid_ has joined #crux01:02
Romsterstrange whos ports?01:03
Romsterto much stuff relies on python2 still01:03
Romsterwe probably wouldn't have python3 or meson if i didn't do anything earlier. would of been delayed.01:05
brian|lfsnot sure where I got scipy and mumpy from but did modify them to build against python301:05
brian|lfsthey bumped the versions up after the lapack and fortran updates01:06
brian|lfsI'll upload my updated files eventaully to my repo01:06
druid_droid_Hello :), trying to learn C and I need a tool to download binary ports01:08
druid_droid_ a start
ryuodruid_droid_: there's binary packages but not ports?01:12
druid_droid_at the moment I only needed to download remote binary packages,01:15
druid_droid_I expect remote and local to share same ports by being in same git branch01:16
druid_droid_so they can share binaries01:16
druid_droid_pkg-get work until different binary packages are available01:17
ryuodon't you mean package sources?01:20
druid_droid_I setup a virtual machine that shares /distfiles and /packages, this virtual machine is only to build, save sources and binaries.01:22
druid_droid_then on other machines I can use this tool to download binary packages, saving time by not having to compile.01:23
druid_droid_I will use tool to understand better how C, make and so on work01:25
ryuodruid_droid_: how old are you?01:26
druid_droid_that question seg fault me, will re-coffee and come back :D01:28
druid_droid_I'm back, ryuo I have 3201:31
ryuoOlder than me and just starting out?01:32
ryuowhat are your goals?01:32
druid_droid_keep learning, since I liked crux I'm trying to do it using it.01:38
ryuoBut learning what?01:39
ryuoOr is that irrelevant?01:39
ryuodruid_droid_: i've spent a long time with C. it's not the easiest of languages to start with.01:45
druid_droid_I wold like to know more about how the system work and how to develop it or tools01:45
ryuoI'm intending to give Perl a try this summer.01:46
druid_droid_yes, but not hard I think after some time :P01:46
ryuoIt's available on nearly every Linux installation, even the most barebones.01:46
ryuoThough, embedded Linux is an exception.01:46
ryuodruid_droid_: if you feel like giving Perl a try, consider this free book:
ryuoIt's very useful for writing scripts that aren't practical to do with shell.01:48
ryuospeaking of shell, this is useful for learning about features of shell:
ryuothe POSIX standard of it.01:48
druid_droid_at the moment the only work I found is related with php, is a frelance work. I will setup a virtual machine for that working using crux. Since I needed the tool and I wanted to learn C I end up with that...01:49
ryuoAh, in that case, maybe PHP is a better choice.01:50
druid_droid_well, is not related,01:50
ryuoyou can still write scripts with PHP, it's just usually oriented towards web crap.01:51
druid_droid_yes the work is web crap XD01:52
druid_droid_hey ryuo if you are good at C can I ask you few things ?01:52
ryuodruid_droid_: yes. i've spent 10 years with it.01:53
druid_droid_wow, I have that of php, but I'm not that kung-fu01:53
ryuoyou've used php for 10 years?01:53
druid_droid_less XD maybe after 200601:54
ryuothat's still 12 years ago.01:54
ryuogo on.01:54
druid_droid_in that thing in C I have tryed to use curl inside pkg.c, but it crashed,01:55
druid_droid_I endup using system call01:55
druid_droid_and another thing I will do with time is change the read_line (to read line by line of a file)01:56
druid_droid_but the curl problem I could not understand, I changed the makefile to add lcurl, added the headers and crashed at curl_easy_init :(01:57
ryuowell... it doesn't help that a lot of your code...01:58
ryuoappears to make bad assumptions about how C works.01:58
ryuodruid_droid_: tell me, what do you think function local variables have as a default value?01:59
druid_droid_I need to start some where01:59
druid_droid_random if not assigned a value02:00
ryuosemi-correct... it's not actually random.02:00
ryuothe correct term is, undefined.02:00
ryuoit's undefined behavior to read from a variable that has not been written to before.02:01
ryuoglobal variables, static or extern, are not effected by this.02:01
druid_droid_I see02:01
ryuobut, any local variables or things allocated by malloc or realloc are.02:02
ryuothey have no default value if none is given.02:02
ryuoit's just whatever was last in memory.02:02
druid_droid_thanks ryuo02:02
ryuodruid_droid_: i also notice you're using strncpy and friends.02:02
ryuomy advice? don't use these relics.02:03
AnselmoI changed a tmux setting, and things are confusing now >_>02:03
ryuouse snprintf. it's safer and easier to use consistently. it avoids buffer overflow problems.02:03
ryuoit's been available since C99.02:03
ryuodruid_droid_: also, when calculating string lengths, always be sure you reserve one space for the null terminator.02:04
ryuoit's easy to forget this and end up with a string that isn't terminated properly.02:04
druid_droid_ryuo: there is a easy way to know in gdb space malloc reserved ?02:04
ryuoi don't use gdb.02:05
ryuowhat do you mean?02:05
druid_droid_I mean, after malloc there is a way to know the memory that have been allocated02:05
ryuouh... not really? all memory has to be manually managed in C, unless you're using something like libGC.02:05
ryuoyou can built fancy memory management schemes.02:06
druid_droid_so, after you call it even in debuger there is not a way to see the memory ?02:06
druid_droid_why you don't use gdb, I like C also because of gdb :D02:06
ryuoprobably you can, under a debugger like valgrind.02:06
ryuoit tracks memory allocations.02:06
ryuodruid_droid_: i dunno, i just ended up using valgrind more.02:07
ryuomost of my mistakes are memory related now.02:07
ryuoyou can also use address sanitizer from GCC.02:07
ryuoit offers alternatives to running your program under a full debugger.02:08
ryuodruid_droid_: but in general, you don't have that much level of information in your real program.02:08
ryuoonly when debugging.02:08
druid_droid_I'm installing valgrind02:08
ryuovalgrind specializes in debugging memory related stuff.02:09
ryuodruid_droid_: as for my snprintf advice, that means replacing uses of sprintf, str*cpy, and str*cat.02:10
ryuothe read-only str* functions like chr and len are still fine to use.02:10
druid_droid_I regret using that read_line function,02:11
ryuowhere did you read about C before?02:11
ryuofrankly i'd suggest going through the original C book.02:11
druid_droid_:D on the Internet, and that book but only few things02:12
ryuoyou can use mmap and crap to read from files but...02:13
ryuoreally, why not use fopen, fgets, etc?02:13
ryuothose others are POSIX extensions and not generally what you want to be using w/o a special reason.02:13
druid_droid_yes, I will pass the "reader" to that function02:13
druid_droid_and by default that fgts02:14
druid_droid_sorry fgets02:14
druid_droid_but in the worry and on roseta code I found that one, I tested, it reads, so ...02:14
druid_droid_now, with time I will polish and try to understand better,02:14
ryuodruid_droid_: fair enough.02:16
ryuoi find it somewhat surprising though. i figured Go would be preferable for someone of your background.02:16
ryuoit's a static typed language that tends to be more popular among the users of dynamic scripting languages like Python and PHP.02:17
druid_droid_Since long time I wish to learn C and the sorrounding tools, but I started, stoped,02:18
ryuoI see.02:18
ryuowell, don't expect an easy path... C's weaknesses are why i'm wanting to learn Perl.02:18
ryuothis is easy to do with strncmp02:19
ryuostrncmp(a, b, strlen(b))02:19
druid_droid_see that litle things I know I need to understand02:19
ryuostrncmp can also be used for end comparison if you understand how to adjust the pointers.02:20
druid_droid_but that things with time I think I go there,02:20
druid_droid_what looks harder is makefile,02:21
ryuoMakefile? not really, assuming you understand dependencies.02:21
druid_droid_and how disassemble in gdb, to see memory layout and so on02:21
druid_droid_yes, I will try to keep it minimal,02:21
ryuofrankly i'd just as soon use scons.02:21
ryuoit understands headers a lot better than Make does.02:22
ryuobut, your choice.02:22
ryuomost projects don't use hand-coded Makefiles anymore.02:22
ryuothey're either generated or not used at all.02:23
druid_droid_hey to make my first package only need to figureout how install DESTDIR works02:23
ryuodruid_droid_: just an observation from my experience.02:23
druid_droid_ryuo: the other tools seem a bit complex, first just minimal, ;)02:23
ryuomakefiles are annoying to maintain.02:23
druid_droid_is autotools or something02:24
ryuoautotools is one method to generate them, yes.02:24
ryuocmake is another.02:24
ryuoscons, doesn't generate makefiles at all.02:24
ryuoit's a python based build system but works primarily with C, C++, Objective-C sources.02:25
druid_droid_:P go pick some coffee, and see that DESTDIR thing so I can make a port02:27
ryuodruid_droid_: you can also use asprintf if you want strings to be allocated for you..02:28
druid_droid_ryuo: one thing I have done random until it worked was short_options in pkg_bin02:28
ryuoah, good. you used getopt.02:28
ryuothis isn't how people normally use it.02:29
ryuothey normally just save information about what was specified, and interpret it after parsing is done.02:29
ryuohere, you're taking action as soon as you know it was specified.02:29
druid_droid_I was thinking was cleaner that way02:30
ryuothis can create bizarre situations where the order they are specified in determines program behavior.02:30
ryuoYea, but it makes the program less intuitive to use.02:30
druid_droid_but, yes I get it02:30
druid_droid_I will move that down02:31
ryuoit's ultimately a design decision.02:31
ryuobut, something you should keep in mind.02:31
druid_droid_at start I have that way, then I moved some up ....02:31
ryuoyou may not be the only person using the things you write.02:31
ryuobut, these decisions are largely arbitrary.02:31
ryuoit's not necessarily wrong.02:31
ryuoyou don't need to change it, but it can make it awkward to use it.02:32
ryuothat's all i'm getting at.02:32
ryuothe usage of optarg...02:33
druid_droid_thanks ryuo :), I'm just making a pause, to get that all glued took me some time ;)02:33
ryuodruid_droid_: you really should free the string prior to using strdup or you'll leak if someone decides to specify the same option more than once.02:34
ryuosome people use macros to help deal with this crap.02:35
ryuoOr, even an inline function.02:35
ryuospeaking of macros... the CPP is an ugly hack but it's a very powerful tool. perhaps the most useful thing you can use in C.02:36
ryuofor example, your code for malloc does this a lot:02:36
ryuo(T*) malloc(sizeof(T)*(N))02:36
ryuoyou could use a macro to reduce the manual code duplication.02:36
ryuo#define alloc(T,N) ((T*)malloc(sizeof(T)*(N))02:37
ryuojust one example.02:37
druid_droid_I notice is hard to debug "defines"02:37
ryuoYes, they can be.02:37
ryuothey should be used with care.02:37
ryuoif they must be long and elaborate, they should probably be well tested.02:38
ryuoBut, this simple macro poses no real threat.02:38
ryuoIt's mostly for compile time convenience.02:38
ryuoIt doesn't change anything meaningful for runtime.02:38
ryuofor example, your str_start could easily be an inline function.02:40
ryuostatic inline str_start(const char* s, const char* start) { return strncmp(s, start, strlen(start)); }02:40
ryuoinstead of a macro.02:41
ryuostatic inline str_start(const char* s, const char* start) { return strncmp(s, start, strlen(start)) == 0; }02:41
ryuobah, forgot bool.02:41
ryuostatic inline bool str_start(const char* s, const char* start) { return strncmp(s, start, strlen(start)) == 0; }02:41
ryuoyour original does a lot of unnecessary parts.02:44
ryuothe 2 strings already start at the beginning.02:44
ryuoyou can start the comparison from there.02:44
ryuostrncmp limits it to the length of start.02:44
ryuoso, if that initial substring matches, it starts with it.02:45
ryuodruid_droid_: thing you need to keep in mind is strcmp, strncmp, and memcmp work on the differences between bytes. they return 0 if both arguments are identical, for no difference, or a positive/negative value based on the first byte pair to not match.02:46
ryuoit's why strcmp can be used to sort strings.02:47
ryuoASCII characters place characters in their usual ascending order in the table so they naturally work as expected when compared.02:48
*** _________mavric6 has quit IRC02:49
druid_droid_ryuo: if I understand why you mean will be easy to implement to get latest version02:50
*** _________mavric6 has joined #crux02:50
ryuodruid_droid_: yea, you don't need to compare their lengths. strncmp already does that.02:51
ryuoit also checks string bounds, which is why it isn't like memcmp.02:51
ryuomem* functions are a whole other beast...02:52
ryuointended to be used on memory regions that you know both already have the amount of space you specify.02:52
druid_droid_str_start have changed ;)02:52
ryuoalso of interest, the way you're using strncmp makes the order of s and start irrelevant.02:53
ryuoso, you can swap strncmp's arguments but not str_start's.02:54
ryuodruid_droid_: oh, when you get better at using C, you may also wish to use goto in complex functions.02:55
ryuoit can greatly simplify resource management.02:55
ryuoyou may also find your own uses for it.02:55
ryuobut, the general rule is, only use goto if standard control flow isn't enough.02:55
druid_droid_ryuo: can you point me a example about string ordering so I can implement to get last version02:55
ryuothat requires two things.02:56
ryuofirst, qsort.02:56
ryuosecond, an adequate sorting function.02:56
ryuoit needs to be customized every time you have a different type to sort.02:57
druid_droid_I will let that for later,...02:57
ryuoit's not super complicated, but i would start by practicing with integer sorting.02:57
ryuoyou don't need to learn a sorting algorithm.02:57
ryuojust learn how to use qsort.02:57
ryuojust note, qsort is only good for arrays.02:58
ryuoother data structures won't work.02:58
druid_droid_for the moment this simple thing have much to polish :P02:58
ryuothe companion to qsort is bsearch.02:58
ryuosame limitations.02:58
ryuoif you need binary trees, POSIX specifies an API for them.02:59
ryuobut, i would avoid the hash table it provides.02:59
ryuonot very useful.02:59
ryuoyou'd be better served with a library.02:59
ryuodruid_droid_: if you get tired of C, you can give a language like D a spin.03:00
ryuoi've heard it's supposed to be rather good but...03:00
druid_droid_or rust03:00
ryuoi don't really know.03:00
ryuoor Go even.03:00
druid_droid_one a time,03:00
ryuouh, yea.03:01
druid_droid_this list ;)03:01
ryuoi once learned Free Pascal, but i gave it up. lack of reason to use it.03:01
ryuostill was interesting.03:01
druid_droid_my first language03:01
ryuoAh, JavaScript...03:01
ryuothe other lingua franca.03:01
ryuoC and JavaScript are lingua francas in the two main places people will ever write code for.03:02
ryuoC, for native software languages.03:02
ryuoJavaScript, for browser stuff.03:02
ryuoEverything has to speak C or JavaScript to do anything, ultimately.03:03
druid_droid_I used two years javascript at work and home, first jobs, then I barely touched03:04
druid_droid_I will need almost to start also from scratch but I remember getElementById and company03:05
ryuosome people compile to JS just to avoid writing JS itself.03:05
ryuoyou can do that with C too.03:05
ryuothis is a language that runs in the browser by being compiled to JS from its C source.03:06
ryuonewlisp is kinda fun, but not very practical.03:06
ryuoso, conceivably, you may never have to write JS again. :D03:07
druid_droid_I have to touch few things in jquery, but never to deep,03:08
druid_droid_have the feeling was re-writing the language03:08
druid_droid_but is smoother that when I started "everything by hand"03:09
druid_droid_I don't touch to much web lately dev lately,03:10
druid_droid_sorry repeat,03:10
ryuoACTION shrugs.03:11
ryuoi just hope very basic concepts are not a challenge.03:11
ryuonamely standard for loops.03:11
druid_droid_ryuo: do you have any github or blog/etc03:14
druid_droid_I keep thinking about curl failing  XD03:15
druid_droid_thanks, I was unsure what to open just reading :)03:17
druid_droid_so I have a reference03:17
ryuodon't feel intimidated by it.03:17
ryuonotice i take advantage of short-circuit evaluation.03:21
druid_droid_beautiful code03:21
ryuoit's a BASH builtint designed to allow the dumping of all shell variables to JSON.03:22
ryuoRomster wanted better info gathering tools for Pkgfiles.03:22
ryuonow, you may consider this overkill, but since Pkgfile is a shell script, it really needs a shell interpreter to know what the true values of a variable is.03:23
ryuoit's not a static text file.03:24
ryuoThough some tools take a shortcut on the assumption that you don't do anything fancy like this:03:24
ryuoor w/e03:25
ryuoa naive line based parser would get the wrong value.03:25
ryuodruid_droid_: something you should be mindful of is short-circuit logic.03:26
ryuodruid_droid_: it determines what expressions will be evaluated, and hence what side-effects get applied.03:27
ryuonotice my writeChar is used with an OR.03:27
ryuoif either returns non-zero, it'll stop evaluating and record the failed operation in fail.03:28
druid_droid_I also see you have lxd scripts to build a crux image03:28
ryuodruid_droid_: half-finished.03:28
ryuoi didn't have time to finish it all.03:28
ryuothis is great for not attempting another write that'll fail too.03:28
druid_droid_I was thinking all dynamic have a $03:29
ryuodruid_droid_: where?03:30
ryuodruid_droid_: if you mean ${VAR}, this is an alternative to $VAR, which can create ambiguities in some contexts.03:31
druid_droid_I was thinking to get version from Pkgfile,03:32
ryuogo on.03:32
druid_droid_but yes I understand, :)03:32
ryuoif you know what you're doing, you can sometimes manipulate strings in shell w/o ever using an external command.03:33
ryuoecho ${PATH##*:}03:34
ryuoremoves all but the last directory of PATH03:34
ryuosee 2.6.2, paramater expansion for these.03:35
druid_droid_wow :D ryuo03:35
ryuocan be useful. if you care about shell performance, you need to minimize how much you rely on external programs.03:36
ryuoin general I say shell has the worst performance of any language.03:36
druid_droid_I have few scripts to help me with crux03:37
ryuobecause you're usually forced to delegate functionality to external programs via fork+exec, which adds up.03:37
ryuoit can greatly impact performance.03:37
ryuoThis is why the old revdep was so damn slow.03:37
ryuoit took 15 minutes or longer to get its job done.03:37
ryuothe versions i wrote took that down to less than 10 seconds in many cases.03:38
ryuothe lesson here isn't that shell should never be used, but rather that it should be avoided for anything that requires a lot of processing.03:39
ryuoif it must be used, you can still find ways to mitigate this problem.03:40
ryuofor example, doing more with fewer command invocations.03:40
ryuoi've used shell to generate a string containing the whole math operation I need calculated.03:40
ryuobefore feeding it to a single bc invocation.03:41
ryuoit was 10x faster than calculating the sum with a lot of bc invocations.03:41
ryuoit was for a programming challenge.03:42
ryuofind the sum of this set of numbers.03:42
ryuoshell is best used whenever you need to cobble together a bunch of command line utilities to do something.03:44
ryuothat's what it does best. anything beyond that and you begin to run into problems.03:44
druid_droid_thank you ryuo, hope see you tomorrow03:44
druid_droid_yes, I'm almost crashing over the keyboard03:44
*** druid_droid_ has quit IRC03:45
*** tilman_ has joined #crux03:55
*** elderK has joined #crux04:09
*** elderK has quit IRC04:09
*** elderK has joined #crux04:09
*** nogagplz has quit IRC05:49
*** nogagplz has joined #crux05:50
Romsterholy backlog batman06:06
*** daspork has left #crux ("The Lounge -")06:11
ryuoRomster: i was going for a world record. =p07:54
*** chinarulezzz has joined #crux08:10
brian|lfshey all09:31
cruxbot[opt.git/3.3]: python3: 3.6.4 -> 3.6.5 closes FS#163909:46
*** john_cephalopoda has joined #crux09:49
*** elderK has quit IRC10:16
*** druid_droid has joined #crux11:09
druid_droidryuo: ;) Morning, today will implement some tips of yesterday, but quick,11:11
*** onodera has joined #crux11:14
*** abenz has quit IRC11:22
*** abenz has joined #crux11:23
*** john_cephalopoda has quit IRC12:00
*** john_cephalopoda has joined #crux12:12
*** de11 has joined #crux12:17
cruxbot[opt.git/3.3]: btrfs-progs: updated to 4.16. Python bindings disabled for now.13:38
cruxbot[opt.git/3.3]: btrfs-progs: fix footprint13:42
*** TimB_ has quit IRC13:58
*** onodera has quit IRC14:06
*** onodera has joined #crux14:06
cruxbot[opt.git/3.3]: glib: updated to 2.56.114:12
cruxbot[opt.git/3.3]: pango: updated to 1.42.114:12
*** onodera has quit IRC14:15
*** de11 has quit IRC14:17
*** onodera has joined #crux14:18
*** onodera has quit IRC14:24
*** onodera has joined #crux14:25
BurnZeZdf’s qutebrowser seems to not work14:27
BurnZeZOdd, since it’s updated relatively recently14:27
BurnZeZQtWebEngine: cannot import name 'QtWebEngineWidgets'14:28
BurnZeZSeems like maybe his py3qt package might not contain it14:32
BurnZeZAh, no, it seems to be there14:34
BurnZeZMaybe it’s not14:40
BurnZeZI don’t know python14:40
*** onodera has quit IRC14:49
BurnZeZThe package seems to have built without it the first time, for some reason14:53
BurnZeZThere is some CRAZY thing going on14:54
BurnZeZSome process keeps removing my /usr/lib/ symlink and linking it to
BurnZeZSame with the /usr/lib32 one14:54
BurnZeZThat’s the nvidia GL lib14:55
BurnZeZI have no idea what could be doing it14:55
jaegerProbably ldconfig14:55
*** onodera has joined #crux14:55
BurnZeZgl-select is a bit broken in some ways, due to things like this14:55
jaegerIt is. I'm very much looking forward to glvnd so we can drop gl-select14:56
BurnZeZjaeger: How does ldconfig know to do this?14:56
BurnZeZWhere is it instructed?14:56
jaegerI don't know, haven't dug into ldconfig's code to look... but it does stupid things with the links sometimes14:56
jaegerand it's run every time a package is added14:57
BurnZeZThat explains it14:57
BurnZeZSupposedly it has to do with nvidia’s GLVND naming scheme?14:59
jaegerNo, glvnd will fix this problem, hopefully15:00
Anselmoblah email is terrible15:01
jaegerIt will remove the need for symlink BS15:01
BurnZeZ/usr/lib/ SONAME
BurnZeZThat’s probably why15:02
BurnZeZldconfig probably validates this first15:02
BurnZeZShredding the old link15:02
BurnZeZOr maybe last15:03
BurnZeZEither way, perhaps gl-select could just move the unused .so files out of the lib directory15:04
BurnZeZjaeger: Is there a reason we’re not using GLVND?15:09
BurnZeZI know that it’s been the default in nvidia’s drivers for quite some time15:11
jaegerxorg-server doesn't support it fully yet, as I understand15:13
jaegersupposed to in the 1.20 release, I think15:14
jaegerMaybe I've misunderstood and there's some functional libglvnd support that works without support on the server side, but the last time I tested it I got nothing but black screens on xorg server 1.1915:16
*** TimB_ has joined #crux15:22
cruxbot[opt.git/3.3]: linux-firmware: updated to 2018040815:23
BurnZeZAnother thing15:24
BurnZeZIs there a reason libraries are built without symbols by default?15:25
BurnZeZSounds like a headache15:25
BurnZeZBeing unable to debug crap just to save a few bytes15:26
frinnsta few bytes?15:26
frinnstno, a few gigabytes15:26
frinnstyou can enable NOSTRIP if you want15:26
BurnZeZEven if it was 20GB it would still be worth it15:26
frinnstshit will run slower too15:27
Anselmoif it was 20Gb it would exceed the size of most of my computers' disks15:27
frinnstI forgot I had that option set once and then did a complete rebuild15:28
frinnstshit got big, yo!15:28
BurnZeZThis should help a lot15:28
tilmanfrinnst: alternatively, you could use objcopy to extract debug symbols to separate files15:28
BurnZeZtilman: This is what I was confused about15:28
*** onodera has quit IRC15:28
frinnstand provide debug packages like debian. Wanna maintain it tilman? :)15:28
BurnZeZEww no15:28
frinnstcome on, you know you want back in!15:29
BurnZeZThat wouldn’t work15:29
tilmani'm not 100% sure why i mentioned that tbh15:29
BurnZeZtilman: Well, it shouldn’t slow down the binaries, right?15:29
tilmanbut it eliminates the potential start-up-delay15:29
frinnst/usr/lib/firefox/ grew to a gb or something with debug enabled15:30
BurnZeZTo be fair, firefox needs more RAM to link than an x86 system can provide15:31
tilmanfor 80% of the ports/packages, the overhead wouldn't be as great15:31
tilmanBurnZeZ: but how often do you debug ports/packages anyway? :>15:31
BurnZeZE-every day?15:31
tilmaneither you are the 5%15:31
tilmanor we're misunderstanding one another :p15:32
BurnZeZI’m the guy that breaks everything15:32
BurnZeZEven GNU grep breaks for me15:32
frinnstbroken hardware?15:32
jaegerdo you use -march=native? :D15:32
BurnZeZThis is a years long thing15:32
BurnZeZIt’s happened for me my whole life15:32
tilmanthe 0.0%15:32
*** onodera has joined #crux15:32
tilmanthe 0.05%15:32
BurnZeZSomehow my nature is to bring forth bugs15:32
tilmani was off by a factor of 10015:32
jaegerMaybe sitting in an EM field, hehe15:33
BurnZeZI thought all this15:33
BurnZeZI even though maybe carbon particles in the air were breaking my hardware15:33
BurnZeZthought *15:33
BurnZeZYet somehow it all turns out to be real bugs15:33
frinnstwhat was your issue with grep for example?15:34
tilmanare you looking for a job?15:34
BurnZeZSomehow I managed to get grep to allocate memory uncontrollably15:34
frinnstdid you grep a block device or something? :D15:34
BurnZeZJust some files in a directory15:34
BurnZeZIt happened so fast too15:35
BurnZeZIt was like it read the file into memory and never deallocated it15:35
BurnZeZWhich makes no sense15:35
BurnZeZLooking back, it seems more likely that the regexp stuff was breaking15:36
BurnZeZ(even though it was just a standard alphabetical query)15:36
BurnZeZA couple weeks ago I discovered how to break linux by unplugging mounted USB drives15:38
BurnZeZEventually resulting in the kernel hanging15:39
BurnZeZExtra fun if the USB devices controller happens to reset15:40
BurnZeZdevice’s *15:40
brian|lfswow BurnZeZ I thought I break stuff lol15:58
frinnstnever had that. obviously, if you have the usb device mounted as / - the kernel would eventually panic15:59
frinnstbut just a mounted filesystem?15:59
BurnZeZThe kernel never unmounts it16:00
BurnZeZumount turns into a never dying process, waiting for the kernel to respond16:00
frinnstwell, you can do lazy umount16:01
BurnZeZI mean16:01
BurnZeZumount is stuck waiting on the kernel16:01
BurnZeZWhich should not happen16:01
BurnZeZI think that might also happen to anything reading or writing to the filesystem that disappeared, too16:01
BurnZeZEventually, the kernel hangs16:02
frinnstnever seen anything like that16:02
frinnstanyways, just tested it with a fat32 fs on 4.16:
frinnstcould umount it without problems16:03
tilmanmy ubuntu system at work copes with ejected-tho-still-mounted thumb drives just fine, too16:03
BurnZeZI can reproduce with a couple different devices using differerent USB controllers, even16:03
BurnZeZ(One was a PS Vita)16:04
BurnZeZNow that I think about it, I think someone else reproduced it a month or two after I talked about it16:05
brian|lfswell be nice if grub2 generated config fiels with uuids on CRUX16:06
brian|lfsit insists on physical names16:06
brian|lfsso if I leave a flash drive plugged in my deive order changes and I get a kernel panic on boot16:07
*** emmett1 has joined #crux16:07
BurnZeZLILO with LVM here16:07
brian|lfsok  you must not be on EFI bios then16:07
BurnZeZThank you based compatibility mode16:08
brian|lfsnot sure the deal with grub I want to say something else is compiled with uuids off16:09
brian|lfsfrinnst, do you use nvidia for a video card16:10
brian|lfsjust curious I could get it to work on kernel 4.16 the nvidia drivers they fail to install16:11
*** druid_droid has quit IRC16:13
Anselmowas that 116:14
Anselmo*4.16.1 ?16:15
Anselmoor .016:15
brian|lfswhich was the newest at the time16:15
brian|lfsI'll try 4.16.1 latter16:18
Anselmoa person I know was trying it with .1 today with issue16:18
brian|lfsI prefer longterm kernels16:18
Anselmoand it looks like they need a patch16:19
brian|lfsoh ok then I won't bother wasting my time16:19
brian|lfsstill didn't have DIMM.2 support that I could see anyhow16:19
frinnstbrian|lfs: no, amd16:19
*** TimB_ has quit IRC16:20
brian|lfsso grub will see windows when I make a config file16:20
*** de11 has joined #crux16:21
*** emmett1 has quit IRC16:30
pedjanvidia is broken with 4.16, afaik16:32
pedjathere is a patch on nvidia forums, if you are desperate enough :)16:33
pedjaI guess they are waiting for xorg-server 1.20 to drop to release updated drivers16:37
*** TimB_ has joined #crux16:45
darfo<BurnZeZ> QtWebEngine: cannot import name 'QtWebEngineWidgets'16:53
darfoI think qutebrowser dependencies are out of order. Maybe rebuild py3qt after qtwebengine is built.16:54
darfodf is my port repo16:54
BurnZeZThat makes sense16:59
BurnZeZEither way, the renderer crashes and spews a stacktrace now16:59
BurnZeZHurray progress16:59
BurnZeZNo symbols though16:59
BurnZeZSo guess I need to re-compile it all17:00
*** chinarul1zzz has joined #crux17:02
pedjapretty nice list
*** chinarul1zzz has quit IRC18:19
onoderasince a few weeks I have to manually re-run /etc/rc.d/net for my internet to work18:19
onoderaanyone else with this problem?18:19
pedjaonodera, after boot?18:23
onoderaand it did start net just fine during boot18:23
onoderaanother weird thing, irssi also seems to connect18:23
pedjaany clues in dmesg/kernel/messages logs?18:23
onoderahowever ping and firefox don't connect18:23
*** onodera_ has joined #crux18:26
pedjadhcp or static?18:27
onodera_pedja: dhcp18:27
onodera_so i just rebooted18:27
onodera_I'm on irc right18:27
onodera_but ping gives me back connect: Network is unreachable18:27
onodera_[    9.379640] dhcpcd[2191]: segfault at 7fbc0d093a60 ip 00007fbc0b69e1cb18:27
onodera_sp 00007fffc48f27a0 error 4 in[7fbc0b627000+194000]18:27
onodera_Hmm I think this is my problem :p18:27
onodera_I wonder what's going wrong18:28
onodera_because it doesn't segfault on manually running net18:28
onodera_wait actually iy seems it does18:29
*** onodera has quit IRC18:30
pedjarun it manually with gdb?18:30
pedjaare you using custom CFLAGS/CXXFLAGS by any chance?18:33
onodera_pedja: onlu -march=native18:34
onodera_running it with gdb it doesn't seem to crash18:34
pedjatry rebuilding it with just the default ones18:35
onodera_nope still18:36
onodera_I updated to the new dhcpcd18:37
onodera_7.0.3, this seems to fix it18:37
*** de11 has quit IRC18:37
onodera_one segfault fix but that one seems to be on BSD18:39
pedjaopen the bug on flyspray?18:40
pedjaor just ping one of the developers :)18:41
onodera_posted on flyspray :)18:43
nwegood evening!18:47
nwehow is it with all ppl in #crux ?18:47
BurnZeZI noticed the 32-bit wine doesn’t seem to respect locale19:01
joacimit did for me back in the olden days when i used wine for touhou19:36
joacimthat must've been 10+ years ago tho19:36
BurnZeZI know it worked with the same settings on OpenSUSE19:36
BurnZeZIf I make two wine prefixes, one win64 and one win32, then do like, LANG=ja_JP.utf8 winecfg19:38
BurnZeZThe win64 one works, but the win32 is still english19:38
john_cephalopodaBurnZeZ: Yeah, you have to run it for the respective directory.19:39
BurnZeZI mean19:39
BurnZeZWith a new wine prefix19:39
john_cephalopodaBurnZeZ: For example "LANG=ja_JP.utf8 winecfg ~/.wine32"19:39
BurnZeZrm -r /home/burnzez/.wine19:40
BurnZeZThen do the 32-bit stuff19:40
BurnZeZStill fails19:40
BurnZeZIt might have been a font thing19:41
BurnZeZFor some reason missing some fonts was affecting the win32 stuff, but not the win6419:42
BurnZeZErr, never mind19:43
BurnZeZWas in the wrong xterm19:43
BurnZeZWINEARCH=win32 fails to set locale every time19:44
BurnZeZI feel like I encountered this last time I used CRUX19:46
BurnZeZFor context19:56
BurnZeZContrasted with this19:58
BurnZeZIt looks in /usr/lib32/locale20:09
BurnZeZBut that path does not exist20:10
BurnZeZThat’s the cause20:12
cruxbot[core.git/3.3]: dhcpcd: updated to 7.0.3. Closes FS#164220:49
*** onodera_ has quit IRC20:50
cruxbot[opt.git/3.3]: gdk-pixbuf: updated to 2.36.1221:24
*** john_cephalopoda has quit IRC22:13
*** g0relike-2 has joined #crux22:38
*** g0relike has quit IRC22:41
*** elderK has joined #crux22:46
*** elderK has quit IRC22:46
*** elderK has joined #crux22:46
*** chinarulezzz has quit IRC22:47
*** elderK has quit IRC22:47

Generated by 2.14.0 by Marius Gedminas - find it at!