Thursday, 2018-08-02

*** tpb has joined #timvideos00:00
*** Kripton has quit IRC00:20
*** zaratustra15 has joined #timvideos00:23
*** Kripton has joined #timvideos00:25
*** deltab25 has joined #timvideos00:29
*** zaratustra15 has quit IRC00:30
*** annieslmaos has joined #timvideos00:38
*** d__b has joined #timvideos00:41
*** pj1 has joined #timvideos00:43
*** annieslmaos has quit IRC00:44
*** pj1 has quit IRC00:45
*** GrapeNinja has joined #timvideos00:49
*** GrapeNinja is now known as Guest8706000:50
*** pilottage has joined #timvideos00:52
*** pilottage has quit IRC00:54
*** oldschool^19 has joined #timvideos01:04
*** xfxf has joined #timvideos01:04
xfxf/01:04
*** oldschool^19 has quit IRC01:09
*** deltab3 has joined #timvideos01:16
*** deltab3 has quit IRC01:17
*** musician_pro has joined #timvideos01:22
*** musician_pro has quit IRC01:27
*** ascheel4 has joined #timvideos01:41
*** niko7 has joined #timvideos01:41
*** ascheel4 has quit IRC01:42
*** niko7 has quit IRC01:43
*** Pugabyte1 has joined #timvideos02:20
*** Pugabyte1 has quit IRC02:21
*** sekizo25 has joined #timvideos02:43
*** sekizo25 has quit IRC02:48
xobsCautious optimism: Much quieter today?03:03
*** Turbo-Folker has joined #timvideos03:05
*** rogue2 has joined #timvideos03:05
*** rogue2 has quit IRC03:12
CarlFKI may have set some stuff so only registered nics can talk03:18
CarlFKwhich isn't great for new people. but oh well...03:18
xobsI did something similar on #kosagi on OFTC.  Also set it +s so it doesn't show up in /list03:18
xobsIRC flags are weird and confusing03:19
CarlFKI just cut/pasted some random stuff that someone told me on the internet03:20
*** NightMonkey20 has joined #timvideos03:23
*** danmackay24 has joined #timvideos03:23
*** HollyW00d28 has joined #timvideos03:25
*** Elwell has quit IRC03:28
*** NightMonkey20 has quit IRC03:28
*** danmackay24 has quit IRC03:30
*** HollyW00d28 has quit IRC03:31
xobsWhat could possibly go wrong03:37
mithroxobs: I would love to chat about litex-buildenv ideas and thoughts sometime03:43
xobsmithro: Sure.  I was just responding to that bug.03:43
xobsWe can chat here or there.03:43
mithroxobs: I need to go find dinner first03:43
mithroShould be back in like 15-20 minutes03:47
xobsAlright, enjoy-dinner03:47
*** Elwell has joined #timvideos03:53
*** diogenese0 has joined #timvideos03:54
*** diogenese0 has quit IRC03:55
*** rohitksingh_work has joined #timvideos03:56
*** Jovan26 has joined #timvideos04:00
*** Jovan26 has quit IRC04:01
mithroxobs: Back now04:09
*** mww113 has joined #timvideos04:10
*** mww113 has quit IRC04:11
xobsWelcome back04:11
mithroxobs: FYI -- I wrote this a while back - https://docs.google.com/document/d/1SLRMCTETNKA0Cfy8dExF8QAn8j0FVbUEgorsicJmoeU/edit#heading=h.h2wbgumo1dxi04:13
tpbTitle: Type of "litex" tests - Google Docs (at docs.google.com)04:13
mithrohttps://docs.google.com/document/d/11uzjWRWk9-KuBFc7chUNUluL5ajysY2qfXvt1vttl7k/edit#heading=h.2gyfmvssus6p is also interesting04:15
tpbTitle: LiteX Firmware - Google Docs (at docs.google.com)04:15
*** cfields19 has joined #timvideos04:36
*** cfields19 has quit IRC04:37
mithroxobs: So what is your plans around that Python script?04:59
*** Elwell has quit IRC04:59
xobsmithro: The goal of the script was to make it easy to get new users onboard who know hardware but not Python.  i.e. bunnie.05:00
xobsIt started out as a bash script, then turned into a Python script when I realized it could work on Windows as well.05:00
xobsI want to avoid any modules that aren't part of Python's standard library.05:00
mithroxobs: Yeap05:01
mithroxobs: That is part of the aim around the whole litex-buildenv but we went a little bit to far down the shell script rabbit hole05:01
xobsI added dependency checking because lately I've had to jump around systems a lot, and I would frequently forget to install dependencies such as Vivado or a compiler.05:02
xobs(In fact, I'm getting a replacement machine today, so I'll get to go through the whole exercise again.)05:02
mithroxobs: FYI - Anaconda can take a conda environment and create a single downloadable installer05:02
mithroxobs: Including Python and everything05:03
mithrohttps://github.com/conda/constructor05:03
tpbTitle: GitHub - conda/constructor: tool for creating installers from conda packages (at github.com)05:03
*** neptune has joined #timvideos05:03
mithroxobs: Have you seen apio plus what TinyFPGA has been doing?05:04
xobsmithro: That might be, but I was really turned off by https://github.com/ContinuumIO/anaconda-issues/issues/8203#issuecomment-372984539 -- their dismissive nature insisting that "There is nothing to be done here" when it's really broken.05:05
tpbTitle: Due to glibc 2.12 limitation, static executables that use time(), cpuinfo() and maybe a few others cannot be run on systems that do not support or use `vsyscall=emulate` · Issue #8203 · ContinuumIO/anaconda-issues · GitHub (at github.com)05:05
mithroxobs: Well, it's because we are statically linking the compiler05:06
mithroxobs: Which is a bit unusual....05:06
mithroxobs: https://github.com/FPGAwars/apio05:07
tpbTitle: GitHub - FPGAwars/apio: Experimental open source ecosystem for open FPGAs (at github.com)05:07
mithroxobs: https://tinyfpga.com/bx/guide.html05:09
tpbTitle: TinyFPGA BX User Guide (at tinyfpga.com)05:09
mithroxobs: I don't know another good way to get a self contained Python environment on Linux05:10
xobsmithro: Why do you need a self-contained Python environment?05:11
mithroBecause people's system Python tends to be screwed up in all types of fascinating ways -- plus up until recently Python 3.5 wasn't available on all Linux systems and 3.6 wasn't compatible with misoc05:13
mithroxobs: Plus you still need a way to get distribute the binary cross compiler toolchain05:16
xobsI could see system python being screwed up.  On Ubuntu, at least, the dependency order goes site-packages, $PYTHONPATH, /usr/share/python05:17
xobsIn lxbuildenv I treat the cross-compiler as a thing that the user needs to install.  If they've done riscv stuff for other platforms, then they won't need to install an extra compiler on their system.    They already need to manually install Vivado.05:19
mithroThe worse case is when they have previously installed litex or similar dependency05:19
mithroAnd you get weird things like "why are they getting this error despite installing the newer version"05:19
xobsAgreed.  Python seems to prioritize globally-installed packages over manually-specified packages, which is why I first did a site.py that undoes that, and now I have lxbuildenv muck with sys.path to also undo that.05:20
mithroxobs: By using the conda Python we have a bit more control - for example we could try going to Python 3.6+ which for example shouldn't need the hash seed thingy. https://stackoverflow.com/questions/39980323/are-dictionaries-ordered-in-python-3-605:24
tpbTitle: Are dictionaries ordered in Python 3.6+? - Stack Overflow (at stackoverflow.com)05:24
mithroxobs: the ideal setup would be "git clone xyz; cd xyz; make" then your done05:30
xobsmithro: That would be ideal.  That's what lxbuildenv is, assuming you already do work with riscv and therefore have a compiler.05:32
mithroxobs: Thats a pretty big _if_ for most people :-P -- also at some point I expect to start seeing issues with people using older riscv compilers05:33
xobsI have concerns with conda.  I don't know how well it's maintained, and I remember it was extremely difficult to figure out how to build packages for it, and in fact in looking at it now it seems as though you can't necessarily get the package source.05:33
mithroxobs: If you know of alternatives - happy to see if they are better, the advantage of conda is that it's used very heavily by the scientific Python crowd, so we kind of ride on those coat tails05:34
mithroxobs: Another alternative might be something docker based or similar05:34
mithroFYI - Our conda packages are here -> https://github.com/timvideos/conda-hdmi2usb-packages05:35
tpbTitle: GitHub - timvideos/conda-hdmi2usb-packages: Conda build recipes for the toolchains needed by LiteX / MiSoC firmware (at github.com)05:35
mithroxobs: I was playing with changing our toolchain builds to use their more standard way of building compilers here -> https://github.com/mithro/conda-hdmi2usb-packages/tree/crosstool-ng05:36
tpbTitle: GitHub - mithro/conda-hdmi2usb-packages at crosstool-ng (at github.com)05:36
mithrohttps://github.com/mithro/conda-hdmi2usb-packages/tree/crosstool-ng/crosstool-ng-feedstock/recipe05:36
tpbTitle: conda-hdmi2usb-packages/crosstool-ng-feedstock/recipe at crosstool-ng · mithro/conda-hdmi2usb-packages · GitHub (at github.com)05:36
xobsmithro: Ah, okay.  That makes more sense! I didn't see any version of "conda source", so I didn't realize that you were building your own conda packages.05:37
mithroxobs: At the moment conda seems to fall into the "conda is crappy, but it seems to be the least crappy of all the options"05:37
mithroxobs: They are slowly relearning a lot of things debian learnt years ago05:38
xobsThem and everyone else.  I'm pretty sure the Node group has similar issues.05:39
mithroha yeah05:39
mithroxobs: Atleast the conda people seem to be learning them /faster/ than debian did05:39
xobsThey have a corpus of knowledge to build on.05:40
mithroOnly took them 3 years to start thinking about reproducible builds...05:40
mithroxobs: Yeah - same way the FOSS community caught up to Google's bigtable and gfs in a much faster timeline then it took google to originally develop them05:40
mithroRandom thing of the day, Spent the morning drawing this -> https://docs.google.com/drawings/d/1qREImoaUjWDSsnbimDu-Mig3_M9hTr-6q-zbPd2VPEM/edit05:41
xobsThe lxbuildenv approach with a "deps/" directory has the nice property that one given project repo points to a known-good set of submodules, which makes those buidls reproducible.05:41
tpbTitle: Verilog to Routing (VtR / VPR) - Carry Chain + Pack Patterns - Google Drawings (at docs.google.com)05:41
mithroxobs: Assuming you have the same version of risc-v and vivado installed?05:41
xobsNaturally.05:42
mithrohttps://crosstool-ng.github.io/docs/build/ <-- that actually looks like a pretty decent way to produce crosstools05:42
tpbTitle: Building the Toolchain (at crosstool-ng.github.io)05:42
mithro(And what conda has started using...)05:43
xobsI know more about Python than I did back in January at LCA, but there are still some blind spots.05:44
mithroThe _real_ solution is openembedded / yocto / bitbake thingy -- but that is biting a pretty huge thing05:45
xobsI thought the version of Python used for hdmi2usb was special, which isn't particularly the case.05:45
xobsI also didn't know which packages were important and which weren't.  Or what dependencies there were.05:45
mithroxobs: That was somewhat partly the goal -- let people ignore all the Python details05:46
xobsI'm hoping that by avoiding the need to install something special, and then perform additional setup steps inside of that environment, it can make the build system seem less complex and more approachable by giving someone less to focus on.05:46
mithroxobs: Of course everyone seems to have a /different/ set of things they think are easy / hard to do05:48
xobsAlso, you're right.  Toolchains are hard.  The crosstool-ng stuff looks useful.05:48
xobsmithro: It's true!  But I was surprised to find that the whole migen/litex stuff really has no extra dependencies.05:48
mithroxobs: We have issues like you can't use gcc 4.7 or gcc 4.4 for lm32 but 5.1 and 4.9 where fine, etc05:50
tumbleweeddefaultdict(<class 'list'>, {'s': ['cherubin'], 'l': ['ajfus']})05:51
tumbleweedoopspaste05:51
mithrotumbleweed: oh - I thought you were making some type of comment about Python 3.6 having ordered dictionaries :-P05:51
xobsIt was apropos05:52
tumbleweedit was a t-shirt assignment dump05:52
mithroxobs: BTW - when I sad "git clone x; cd x; make" that is kind of literally what I meant - but your makefile could just have a single target which runs the lxbuildenv.py script...05:53
mithroxobs: For example Verilog to Routing has a makefile which runs cmake with the default configuration and then builds it -- made me not care about the fact the project was using cmake05:54
xobsmithro: Your "all:" target would be "$(PYTHON) top.py"05:54
mithroxobs: Something like that05:54
mithroI'm going to walk home now, since it's almost 11pm05:55
xobsThat's why the dependency checker has solutions for when dependencies are missing -- how to download Vivado and where to get the riscv toolchain from.05:55
mithroxobs: Yeah05:55
mithroxobs: btw - easy_install was pretty terrible in many ways - but it had a really nice "stub" feature, you committed the small stub which would then download and setup a proper easy_install environment when one wasn't available05:57
mithroxobs: Maybe it would be a good idea to start a Google doc with some type of "wishlist" ?05:57
mithroxobs: Would be a shame for you to accidently relearn a bunch of things we have already seen previously :-P05:58
mithrobetter to be making all new mistakes! ;-)05:59
mithroxobs: it would be worth checking out of apio and stock python is maybe a better fit - Its likely that tinyfpga has opinions there06:03
mithroBtw, actually walking home now - so typing is slow06:04
*** Elwell has joined #timvideos06:04
*** Elwell has quit IRC06:05
xobsI'm curious to know what other sorts of gremlins lurk in the notion of using system python.06:05
*** Elwell has joined #timvideos06:06
mithroxobs: People do all types of strange things to their system python06:31
mithroxobs: I dumped some random thoughts here -> https://docs.google.com/document/d/1V47Zc0eyjUUGBNsJuYORdb4TqH4C1WjzrX9odX0YdZE/edit06:40
tpbTitle: Google Docs - create and edit documents online, for free. (at docs.google.com)06:41
mithroAnyway, sleepy time for me!06:46
mithrohave a good night06:46
xobsI'll have a look at the doc.06:46
xobsGoodnight!06:46
*** Kripton has quit IRC06:51
*** NeddySeagoon25 has joined #timvideos06:52
*** NeddySeagoon25 has quit IRC06:52
*** ktechmidas has joined #timvideos06:57
*** Kripton has joined #timvideos07:00
*** Remco4 has joined #timvideos07:36
*** Nineteen has joined #timvideos07:49
*** thaytan has quit IRC07:51
*** thaytan has joined #timvideos07:51
*** ChanServ sets mode: +v thaytan07:52
*** bluszcz7 has joined #timvideos08:26
*** Torgeir has joined #timvideos08:41
*** rohitksingh_work has quit IRC08:54
*** Guest11047 has joined #timvideos09:16
*** Guest11047 has quit IRC09:18
*** Razesdark23 has joined #timvideos10:00
*** tasse24 has joined #timvideos10:09
*** tasse24 has quit IRC10:14
*** Arokh21 has joined #timvideos10:24
*** __idiot__ has joined #timvideos10:38
*** deeprave has quit IRC11:09
*** _florent_ has quit IRC11:09
*** deeprave has joined #timvideos11:10
*** _florent_ has joined #timvideos11:12
*** poutine24 has joined #timvideos11:22
*** poutine24 has quit IRC11:22
*** tinyfpga has quit IRC11:57
*** tinyfpga has joined #timvideos11:57
*** Zapy11 has joined #timvideos12:08
*** Phex has joined #timvideos12:18
*** Phex has quit IRC12:24
*** infernix16 has joined #timvideos12:27
*** infernix16 has quit IRC12:32
*** fsamareanu22 has joined #timvideos12:32
*** fsamareanu22 has quit IRC12:33
*** Iota3 has joined #timvideos12:47
*** Iota3 has quit IRC12:52
*** tinyfpga has quit IRC12:56
*** tinyfpga has joined #timvideos12:57
*** rohitksingh has joined #timvideos13:03
*** clarjon116 has joined #timvideos13:09
*** evil has joined #timvideos14:02
*** evil has quit IRC14:02
*** mcintosh14 has joined #timvideos14:14
*** mcintosh14 has quit IRC14:15
*** _f15h has joined #timvideos14:19
*** geot has joined #timvideos14:19
*** _f15h has quit IRC14:20
*** jrslepak24 has joined #timvideos14:20
*** geot has joined #timvideos14:20
*** jrslepak24 has quit IRC14:26
*** jwhisnant0 has joined #timvideos14:27
*** jwhisnant0 has quit IRC14:30
*** Kronuz11 has joined #timvideos14:52
*** rohitksingh has quit IRC15:00
*** dwC-- has joined #timvideos15:42
*** rohitksingh has joined #timvideos15:42
*** rdococ4 has joined #timvideos15:54
*** rdococ4 has quit IRC15:56
*** GeekDude23 has joined #timvideos16:04
*** GeekDude23 has quit IRC16:05
*** Kripton has quit IRC16:13
*** Kripton has joined #timvideos16:16
*** geot has quit IRC16:22
*** rohitksingh has quit IRC16:23
*** connection has joined #timvideos16:39
*** connection has quit IRC16:40
*** rohitksingh has joined #timvideos16:43
*** mdoep25 has joined #timvideos17:04
*** geot has joined #timvideos17:06
*** NightMonkey21 has joined #timvideos17:20
*** NightMonkey21 has quit IRC17:26
*** geot has quit IRC17:34
*** samsagaz has joined #timvideos17:34
*** geot has joined #timvideos17:39
*** rohitksingh has quit IRC17:45
*** rohitksingh has joined #timvideos17:49
*** cr1901 has joined #timvideos17:58
*** CarlFK has quit IRC18:09
*** geot has quit IRC18:38
*** CarlFK has joined #timvideos18:46
*** ChanServ sets mode: +v CarlFK18:46
*** waldo323 has quit IRC20:34
*** waldo323 has joined #timvideos21:16
*** rohitksingh has quit IRC22:18
mithroxobs: Added a few more things to that doc -- bunch of things I have seen go wrong with System Python and more of a proper wish list...23:58

Generated by irclog2html.py 2.13.1 by Marius Gedminas - find it at mg.pov.lt!