<jlicht>by the way, how do more experienced guix hackers deal with having to write myriads of package definitions through guix import? Do you people keep these definitions on your personal git repos, or do you commit them?
<lfam>jlicht: I don't understand your question. Can you rephrase it?
<jlicht>lfam: I want to work on a Ruby project using guix => I import some gems that are not packaged yet in guix, using guix import gem
<jlicht>=> I end up with about ~15 ruby-<whatever> packages in my local guix git checkout
<lfam>Do you want to send the gem patches to guix-devel and get them into the distribution?
<jlicht>meh, they are not that polished yet, and I should still take care to properly set the license, fix stuff so all unit tests pass etc etc. But my question would boil down to; "Do we aim to package _everything_?"
<rain1>I'd like to know what the scope of /packages/ is too
<lfam>jlicht: If they are free software and you find them useful, then it's likely that somebody else will find them useful too. I see no reason not to submit them.
<rain1>that something can run non free binaries is no problem. wine and mame and linux all have this capability, but it is a freedom
<davexunit>I just want to chime to confirm that MAME is indeed free software now, AFAICT. They've gone through the trouble of contacting past contributors and relicensing using GPL-compatible licenses.
<alirio>rain1: can you package something useful depending on mame to include in guixsd?
<davexunit>rain1: has MAME made an official release with the liberated source?
<davexunit>rain1: it seems to me that they haven't, so we'll have to hold our horses for the next official release.
<mark_weaver>rain1: it's definitely not a problem that MAME and WINE and Linux can run non-free software, and in fact if it tried to prohibit it, that itself would make them nonfree because of freedom 0 as you pointed out
<rain1>davexunit, ah good point - hopeffully 172 will be
<davexunit>MAME emulates a variety of different arcade machine hardware
<davexunit>rain1: is there a game that you can link us to on this site that is free software? I'm actually really curious because I don't know much about the homebrew scene and how much overlap it has with free software.
<mark_weaver>this question of whether something steers users to obtain nonfree software is somewhat of a judgment call.
<rain1>My opinion: it's free software... end of story.
<alirio>davexunit: there's some problems we can't solve, always will be (rejecting all invalid programs vs accepting all valid programs, typing at compilation time), (sending innocents to prison vs letting guilty people free), (avoid packaging things with no clear use in freedom vs packaging everything not clearly unfree),...
<davexunit>or at least, based on how I'm interpreting you.
<mark_weaver>rain1: can you provide an example of a game that runs under MAME that is free (as in freedom) software and can be used with MAME without any nonfree software?
<mark_weaver>and preferably something where MAME is actually needed, as opposed to something that can be just as easily run natively on GNU/Linux.
<davexunit>can an emulator not be useful on its own as a tool for exploring machines that may be hard to obtain physically?
<alirio>davexunit: this is the question: assuming innocence or assuming guilty; jmarciano message clearly assumes guilty, so you need to prove innocence; you know someone fiddling with architectures they don't have to test?
<mark_weaver>perhaps, but right now I'm trying to evaluate the question of whether MAME steers users to obtaining nonfree software.
<alirio>davexunit: you are assuming innocence; no faulty logic, different axioms
<mark_weaver>if there are free (as in freedom) games that run under MAME and not natively on GNU/Linux, that would allow us to make this judgement more easily
<davexunit>alirio: I think you have the burden of proof mixed up.
<alirio>mark_weaver: this is sidestepping the question about assuming innocence or assuming guilty, if we can do that, sure; but maybe in some cases we don't
<davexunit>I can go look for free things that run on MAME, but MAME isn't just one thing: it's a whole collection of emulators to vintage hardware, including not only arcade machines but even some old calculators.
<mark_weaver>spyware can be useful too, e.g. chromium can be useful to study how much and what kinds of personal information are sent to google, but that doesn't mean we want it in Guix
<mark_weaver>having said that, this case is less clear. even if there is no free software that runs on MAME, I'm not sure what the right decision is here.
<alirio>davexunit: i'm saying we don't really have enough information at now, so we _assume_ guilty or _assume_ innocence
<mark_weaver>but since I already have too much to do, if the decision can be made more easily, I would be grateful
<rain1>but if someone wants to use it then they should be able to easily use it
<rain1>not have to write a package definition, since it's already done
<davexunit>rain1: well sure, but that's orthogonal here.
<alirio>mark_weaver: earlier analogy: <alirio> davexunit: there's some problems we can't solve, always will be (rejecting all invalid programs vs accepting all valid programs, typing at compilation time), (sending innocents to prison vs letting guilty people free), (avoid packaging things with no clear use in freedom vs packaging everything not clearly unfree),...
<mark_weaver>alirio: "jmarciano message clearly assumes guilty" suggests that "guilty" is a word that's applicable to MAME, and I don't see how it is
<alirio>mark_weaver: packaging everything not clearly unfree, mame (the yet to be released version) is in that situation
<mark_weaver>"not suitable for inclusion in Guix" or "not compliant with the GNU FSDG" is a different concept than "guilt"
<rain1>what I am curious is what is the scope of /packages/?
<alirio>mark_weaver: or "avoid packaging things with no clear use in freedom" as i worded it, with "assuming guilty" as analogy, i think the most important thing is that this decision isn't about guixsd, but is about fsdg and all free distros
<rain1>one could still replace a binary with a version thaht has been compiled with a bad library
<rain1>I don't know the best word to explain what I mean
<davexunit>MAME is pretty much entirely not practical. there's not much practicality in running software on emulated vintage hardware, so it seems unfair to me to demand that MAME meets some level of practicality.
<jololo>Hey! conneting from my new guix laptop! I am newly logged into my personal account but I can't mount usb drives I can only do it from the root account. when I su and run fdisk from commands it says "fdisk command not found"
<jololo>what email clients do people use? Any other programs people recommend? I'm going on a downloading spree
<jololo_>Sorry to bother - I've been reading the manual and it's really helpful, thanks! I have this problem with installing libreoffice and hexchat - they both fail because python-2.7.10.drv failed. Error say it is due to networking issues.
<lfam>jololo_: You need to pass the option '--fallback' to the command that is failing. That means you will build from source if the substituter fails
<lfam>Can you share the full path of the failing items? For example, /gnu/store/zby49aqfbd9w9br4l52mvb3y6f9vfv22-hello-2.10
<calier>WTF guys, even NixOS has /usr/bin/env. This NixOS user told me so.
<calier>I am trying to make my shell script run inside the shell of the program script every time it is run.
<Jookia>Debian's copyright files are much better in that respect
<rekado>about LVM support: GRUB has a module for reading from LVM partitions, so I added "insmod lvm" to my grub.cfg. I think once support for unlocking LUKS devices is merged, support for encrypted LVM would be simple to add.
<jmarciano>Just that you know, I wish to make software packages for GuixSD, and I am learning. I made one package xorriso, later I found it was already there. I am not following on IRC the discussion from yesterday. If there is anything that can be solved, if nobody complains, I will decide if to complain later, but not on IRC, in order not to disturb people, who help on package creations and on system development.
<jmarciano>I had computer club with 10 GNU operating systems, and 1-2 Hurd in Stuttgart, Germany, back in 1999, people were using GNU because it is free software.
<Jookia>I'm just saying that you might need to look at solutions that don't involve Guix removing packages you disagree with
<jmarciano>And I had one computer club Kosmos in Bosnia, back in 1988-1991, so I am and will never encourage other people to use neither one or the other package not mentioning it here any more for reasons I said. And you are free to do what you wish, and also the GuixSD group leaders.
<jmarciano>In answer to your last line, I guess, you already said that. I feel your mis-emotion, but I am trying not to get into it, and trying to avoid further discussion. I like to switch subjects to GuixSD new package inclusions rather.
<rekado>someone with an account could delete Blender and Mypaint.
<jmarciano>at 10:42 my time, you already mentioned that, that is wrong help from you. I will not need other solutions, you don't need to mention it any more. thank you if your help was genuine and I am wrong in seeing indications.
<roelj>DusXMT: I used Wine for compiling Windows binaries as well!
<Jookia>jmarciano: Sorry I think there's a bit of a language barrier preventing me from understanding what you're saying fully but I'll drop the subject
<jmarciano>thanks, I finished with it too, will not mention it on IRC, maybe on other line, and will rethink of it, rework it, during the time.
<jmarciano>my current problem is how to include LDFLAGS in package definition, if you can help me on that, I could finish gurgle
<civodul>rekado: i think you can create an account on libreplanet.org (though i understand all these accounts are boring)
<Jookia>jmarciano: I'm going to go shower but if nobody's helped you by the time I'm back I'll have a look. :)
<jmarciano>http://paste.debian.net/422112/ that is what I want to find, how to make a quick patch, and how to include LDFLAGS, I am wrong there. I could install it without mysql, guile, but I wish with 3 options, PostgreSQL, Mysql and Guile
<Digit>oh sweet. i've been teetering on the verge of getting a new guix (somewhere ~ hadnt decided wich machine or how yet) for a while now. i miss it. nearly bit the bullet last night. glad i didnt now that there's a new release. :)
<mark_weaver>I recently updated the wip-loongson2f branch, but it turns out there's some problem with either the toolchain or the library that's messing up floating point math somehow, such that both ogg123 and mpg321 are producing garbled audio. I've ruled ou the kernel, because the new kernel works fine with old binaries of those programs.
<mark_weaver>I can tell this is going to be an ongoing problem with everything that's not x86_64, because almost all of our users are on that architecture
<mark_weaver>the other architectures are likely going to be problematic until we have some kind of stable branch where the other arches aren't broken as often
<taylan>rain1: re. your question in #guile: Guile byte-compiles a file and stores it in the cache when the file is first run. it's recompiled when the file changes, but if it includes another file and that file changes, then it's not recompiled.
<mark_weaver>civodul: I've ruled out the kernel, it must be userland.
<mark_weaver>it can only do so much. if there aren't enough users testing things out during the testing period and sending in reports, and not enough developers to fix the problems, then it's not going to work. that may have been the case with sparc32
<mark_weaver>but for minority platforms like mips64el, it can make a world of difference to give some time to find and fix bugs without new ones being introduced by the frequent upgrades
<mark_weaver>things are broken so frequently on mips64el that I lack the capacity to keep up with it
<DusXMT>mark_weaver: I wonder, is there currently a commonly available mups64el machine?
<DusXMT>ACTION finds it kinda sad that there's a specific laptop model that so much attention goes into supporting, yet it can't be bought by regular mortals... I know, there's the libreboot laptops, I realize that.
<janneke>rain1: i'm working on better support for guile-next, why remove?
<alirio>efraim: rain1 seems to be discussing security/safety, privacy leaks are another issue
<str1ngs>which substitutes would produce eventually anyways right?
<alirio>the problem isn't just privacy leaks, but it's annoying to read several messages with different timezones at lists.gnu.org; altough the proper fix would be to this information don't leave email clients
<janneke>guix package: error: build failed: some substitutes for the outputs of derivation `/gnu/store/g13n5crbly56y26dlm223zb5scw80ljh-glibc-locales-2.22.drv' failed (usually happens due to networking issues); try `--fallback' to build derivation from source
<davexunit>Alpine doesn't use glibc because it's too heavy for them, apparently.
<davexunit>so everything is built with musl, which has limited compatibility.
<davexunit>changing the libc would be a big deal for most projects, but when Docker does it it's trendy.
<ng0>there are other factors to musl i think other than size i think. I tried it with gentoo hardened, but changing the libc is hard when you already have hardened system which is old, but still in progress
<davexunit>I should clarify that this is for the images that Docker themselves provide, the official stuff. users are free to use whatever images they'd like.
<davexunit>it's definitely motivated by anti-GNU sentiment.
<davexunit>just like GNU replaced proprietary UNIX tools with free ones, the anti-GNU crowd is replacing copylefted GNU tools with permissively licensed ones
<davexunit>lfam: unfortunately, when that came out, people attacked RMS for using antiquated software to read email. :/
<ng0>> attacked RMS for using antiquated software to read mail
<ng0>i must have missed the upgrade to neuro interface
<lfam>davexunit: If the offer was for all of LLVM, then I would say that whatever the reason was for not reading the message originally, it was a tragic mistake. How many years of developer time were lost to our movement?
<ng0>the whole puzzle of "email" server and client stuff is so old that there are no changes
<CompanionCube>ACTION likes free software but does not hate proprietary software
<ng0>on open source: i think for some it's a process of learning through discussion and challenging what they know
<davexunit>I'm noticing a lot of attack strategies that people use against RMS and the free software movement are being applied to Bernie Sanders in the U.S. primary elections.
<lfam>Anyways, I brought it up because it seems that, at least for GCC, there was not an effort to "attack" GCC, but rather a missed opportunity for cooperation.
<lfam>gpg and gpg2 are different programs that handle sensitive information in different ways. I'd rather not do something that might confuse our users.
<lfam>For example, gpg2 will cache symmetric encryption passphrases, while gpg will not. If a user doesn't trust their system enough to keep those passphrases in RAM, they will use gpg. We shouldn't create a 'gpg' binary that does cache those passphrases.
<lfam>I will say the situation is rather confusing already
<civodul>janneke: thanks, i've removed the corrupt item
<civodul>efraim: yes, what lfam said, plus i think we should follow upstream's choices
<mark_weaver>it would be good to fix this, for starters by making 'guix' set a %load-path (and %compiled-load-path) that includes only the things that are known to be good, e.g. the guix package itself, guile, and whatever else is needed (gnutls, guile-json?)
<mark_weaver>when packaging things, I've always tried to use 'substitute*' to patch things to run programs via absolute filenames rather than relying on PATH, e.g. see what I did in the 'wicd' package.
<mark_weaver>to the extent that we rely on path-like things, we lose the promised advantages of guix
<mark_weaver>now, for programs that shouldn't have any reason to need the user-provided PATH-like variables, then we can simply wrap them to set the needed variables with '=
<mark_weaver>it gets more tricky when dealing with programs that are expected to look in the user's PATH-like variables for something, e.g. for shells.
<str1ngs>or something like how debian handles multi-arch
<mark_weaver>or, when dealing with programs that launch other programs, like launchers for desktop environments
<lfam>I thought it was funny and I appreciate the raw enthusiasm
<mark_weaver>str1ngs: but it doesn't even really work for C programs, because in general a C program is composed of many shared libraries linked together, and those libraries are from different packages with different inputs, etc.
<mark_weaver>str1ngs: make sure to consider how to handle things like python programs that use libraries from a bunch of different python packages, with shared libraries also loaded from several packages, etc.
<fhmgufs>But I thought that this is a common abbreviation.
<petter>i was reminded of a quote: "All truth passes through three stages. First, it is ridiculed. Second, it is violently opposed. Third, it is accepted as being self-evident." I suspect it covers Guix somewhat as well
<rekado>many years ago I didn't really like GNU and hoped to have a system in which all GNU things were replace by really short non-GNU programmes. I even thought about switching to the BSDs. Guess what GNU/Linux distribution I used... :)
<rain1>maybe we could work out a way that doesn't involve having a secret store
<rain1>its ok to have to enter passwords twice as long as its understood why
<shanemikel_>I'm really excited about this.. I just discovered it a couple days ago, but I've been following/playing with nix for some time.. I can't express how glad I am there is a foss community fully embracing progress in the realm of distributions and package/install management
<petter>shanemikel_: may i ask how you discovered Guix?