Logs: liberachat/#haskell
| 2021-06-12 19:28:40 | <maerwald> | qrpnxz: don't |
| 2021-06-12 19:28:47 | <qrpnxz> | :( don't do me like this ghcup |
| 2021-06-12 19:28:49 | <janus> | safinaskar: i always use v2 for a single project in nix-style, what does it do when invoked globally like that? |
| 2021-06-12 19:28:51 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds) |
| 2021-06-12 19:29:06 | <maerwald> | qrpnxz: that's a conflict of binaries installed by whatnot and how ghcup handles them |
| 2021-06-12 19:29:16 | <maerwald> | XDG support should go |
| 2021-06-12 19:29:16 | × | bfrk quits (~bfrk@200116b84548c000c4b7ca996e91149b.dip.versatel-1u1.de) (Ping timeout: 268 seconds) |
| 2021-06-12 19:29:59 | → | waleee joins (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) |
| 2021-06-12 19:30:15 | <maerwald> | but you can also just remove the binary |
| 2021-06-12 19:30:25 | <qrpnxz> | i just need to change where ghcup puts bins, the rest should be fine |
| 2021-06-12 19:30:30 | <maerwald> | or that |
| 2021-06-12 19:30:35 | × | xsperry quits (~as@user/xsperry) (Remote host closed the connection) |
| 2021-06-12 19:30:50 | <maerwald> | that's what I don't like about config options... you can't predict how users use them |
| 2021-06-12 19:30:59 | <qrpnxz> | but only way i see is to make an alias :/ |
| 2021-06-12 19:31:12 | × | dunkeln quits (~dunkeln@94.129.65.28) (Ping timeout: 252 seconds) |
| 2021-06-12 19:31:22 | <maerwald> | yeah, why not |
| 2021-06-12 19:31:28 | <maerwald> | that's what shell is for |
| 2021-06-12 19:31:53 | <maerwald> | if a program runs ghcup without asking you, you should be angry |
| 2021-06-12 19:32:10 | <qrpnxz> | it'll have to be a shell script then |
| 2021-06-12 19:32:27 | <qrpnxz> | though, who runs ghcup? |
| 2021-06-12 19:32:29 | → | beka joins (~beka@104.193.170-244.PUBLIC.monkeybrains.net) |
| 2021-06-12 19:32:36 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 2021-06-12 19:32:37 | <maerwald> | qrpnxz: I think VSCode does |
| 2021-06-12 19:32:41 | <qrpnxz> | ic |
| 2021-06-12 19:32:46 | <maerwald> | but they probably do their own prefix or so |
| 2021-06-12 19:32:50 | <maerwald> | not sure |
| 2021-06-12 19:32:58 | <qrpnxz> | will make script just to be safe |
| 2021-06-12 19:33:15 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 245 seconds) |
| 2021-06-12 19:34:16 | <safinaskar> | how to generate pictures with such comparison tables: https://www.etalabs.net/compare_libcs.html ? ideally svg |
| 2021-06-12 19:34:18 | <maerwald> | qrpnxz: you can rename ghcup to ghcup-bin, then make ghcup a wrapper script. But then make sure you run `ghcup upgrade --inplace`, otherwise it may overwrite your wrapper |
| 2021-06-12 19:34:54 | <qrpnxz> | indeed, thx for heads up, i'll also remove write perm just in case |
| 2021-06-12 19:34:57 | <maerwald> | qrpnxz: or just remove write permissions |
| 2021-06-12 19:35:00 | <maerwald> | yep |
| 2021-06-12 19:35:39 | × | hklhvl quits (~user@73.173.185.9) (Quit: ERC (IRC client for Emacs 27.2)) |
| 2021-06-12 19:36:45 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 2021-06-12 19:36:46 | <maerwald> | the readSymbolicLink bug above can be fixed, but there are more problems with XDG... e.g. when installing binaries that start with `cabal-`, such as `cabal-hie` |
| 2021-06-12 19:36:56 | → | dunkeln joins (~dunkeln@94.129.65.28) |
| 2021-06-12 19:36:58 | <maerwald> | so a hermetic binary dir is better |
| 2021-06-12 19:37:38 | → | aerkenemesis joins (~aerkeneme@c83-252-164-58.bredband.tele2.se) |
| 2021-06-12 19:38:07 | <maerwald> | I'm not sure ~/.local/bin is already in the XDG spec even |
| 2021-06-12 19:38:33 | <maerwald> | seems it is |
| 2021-06-12 19:38:37 | <safinaskar> | smitop: "seq undefined 0" and "(\a b -> b) undefined 0" give different results |
| 2021-06-12 19:38:45 | <maerwald> | " User-specific executable files may be stored in $HOME/.local/bin. Distributions should ensure this directory shows up in the UNIX $PATH environment variable, at an appropriate place. " |
| 2021-06-12 19:38:58 | <safinaskar> | smitop: websearch "haskell bottom" |
| 2021-06-12 19:39:05 | <aerkenemesis> | I'm having some problems building my project, I'm gettning `ghc: ^^ could not load 'recursionzmschemesz.......', dependency unresolved. This only happens when I do a `nix build`, if I build "normally" using cabal new-build in my nix-shell it works |
| 2021-06-12 19:39:07 | <smitop> | thanks! |
| 2021-06-12 19:39:20 | <qrpnxz> | it is but cabal doesn't want to play nice with what's already there then an alternative will be needed |
| 2021-06-12 19:39:22 | <safinaskar> | smitop: this is basic question, i recommend reading "learn you haskell for great good" first |
| 2021-06-12 19:39:33 | → | fizbin joins (~fizbin@73.112.85.251) |
| 2021-06-12 19:39:36 | <smitop> | yes i have already read that |
| 2021-06-12 19:39:43 | <aerkenemesis> | I found some stuff related to profiling when googling the problem but I don't have any profiling enabled |
| 2021-06-12 19:39:51 | <maerwald> | qrpnxz: it says *may*... so I guess we could adhere to XDG spec and not put binaries in ~/.local/bin? |
| 2021-06-12 19:40:16 | <qrpnxz> | ofc you can change XDG_BIN_HOME |
| 2021-06-12 19:40:17 | <safinaskar> | janus: "what does it do when invoked globally like that?" - it downloads packages, builds them, cache them and make them available in plain "ghc" or "ghci" |
| 2021-06-12 19:40:22 | <qrpnxz> | .local/bin is the default |
| 2021-06-12 19:40:30 | <maerwald> | qrpnxz: that's variable was made p by ghcup :) |
| 2021-06-12 19:40:34 | <maerwald> | the XDG spec doesn't have it |
| 2021-06-12 19:40:35 | <qrpnxz> | it wasn't tho |
| 2021-06-12 19:40:38 | <qrpnxz> | it does |
| 2021-06-12 19:40:40 | <maerwald> | no |
| 2021-06-12 19:40:47 | <qrpnxz> | look https://theos.kyriasis.com/~kyrias/basedir-spec.html |
| 2021-06-12 19:41:04 | <maerwald> | I'm looking at https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html |
| 2021-06-12 19:41:34 | <maerwald> | there was a PR about it, but I don't remember the XDG_BIN_HOME or similar being accepted |
| 2021-06-12 19:41:39 | <janus> | safinaskar: but if the project you're building is incompatible with one of those installed packages, it will be installed locally to the project and the globally installed version is ignored? |
| 2021-06-12 19:41:39 | <qrpnxz> | mm, fair enough |
| 2021-06-12 19:42:11 | <qrpnxz> | anyway, i'm sure it's used by other programs as well, it fits like a glove |
| 2021-06-12 19:42:21 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) |
| 2021-06-12 19:42:35 | <qrpnxz> | ik that .local/bin, variable or not, is def the defacto std for local bin |
| 2021-06-12 19:42:55 | <maerwald> | qrpnxz: feel free to comment on https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/96 |
| 2021-06-12 19:43:05 | <maerwald> | I don't know what to do with XDG dirs |
| 2021-06-12 19:43:40 | × | fizbin quits (~fizbin@73.112.85.251) (Ping timeout: 245 seconds) |
| 2021-06-12 19:43:44 | <maerwald> | ah, here was the converstion https://gitlab.freedesktop.org/xdg/xdg-specs/-/issues/63 |
| 2021-06-12 19:43:51 | <safinaskar> | janus: i think yes |
| 2021-06-12 19:44:14 | <safinaskar> | janus: i think this global list is ignored when i do "cabal v2-build" |
| 2021-06-12 19:44:16 | <qrpnxz> | i mean it should probably be using $XDG_DATA_HOME/ghcup/bin not bin home |
| 2021-06-12 19:44:22 | <qrpnxz> | that's what i'm gonna do |
| 2021-06-12 19:44:26 | <maerwald> | qrpnxz: yeah, that's one way |
| 2021-06-12 19:44:35 | <safinaskar> | janus: but i think cache itself is used, of course, i. e. cabal doesn't download them twice |
| 2021-06-12 19:44:43 | <janus> | safinaskar: aaah ok so that dockerfile is explicitly for development, not for CI or something like that |
| 2021-06-12 19:45:33 | <maerwald> | qrpnxz: it would be a breaking change though |
| 2021-06-12 19:45:40 | <janus> | i wonder if there is a way to convert a haskell projects dependency list into something that can be used to prepare a docker image |
| 2021-06-12 19:45:55 | <janus> | because CI builds should really be using prebaked dependencies, no? |
| 2021-06-12 19:46:03 | × | dunkeln quits (~dunkeln@94.129.65.28) (Ping timeout: 252 seconds) |
| 2021-06-12 19:46:11 | <safinaskar> | janus: "is explicitly for development" - yes, it allows me to run ghci and have all this packages available in ghci |
| 2021-06-12 19:46:58 | <maerwald> | qrpnxz: at any rate, I'll provide a fix for the bug |
| 2021-06-12 19:47:01 | <qrpnxz> | maerwald, well the cabal ppl don't really have to change anything. I'm able to do so by just by making that script |
| 2021-06-12 19:47:06 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) (Ping timeout: 264 seconds) |
| 2021-06-12 19:47:19 | <qrpnxz> | though ofc making the script is kind of annoying |
| 2021-06-12 19:47:46 | <qrpnxz> | maybe have an ENV variable to ignore BIN_HOME and use the data dir? |
| 2021-06-12 19:48:04 | <safinaskar> | janus: you may see ci script i use here: https://git.sr.ht/~safinaskar/check-cfg-ambiguity/tree/master/item/.build.yml |
| 2021-06-12 19:48:06 | <qrpnxz> | that might be the best backward compatible change |
| 2021-06-12 19:48:20 | <safinaskar> | janus: it uses sourcehut's ci (but it is similar to other CIs around) |
| 2021-06-12 19:48:38 | <safinaskar> | janus: and the script is a bit advanced, because it uses my own manual parsing of cabal file |
| 2021-06-12 19:49:00 | <safinaskar> | janus: you may see prev. versions of this script in git history, they are simpler |
| 2021-06-12 19:49:02 | <janus> | oh, that was my fear :P manual parsing |
| 2021-06-12 19:49:15 | <safinaskar> | janus: i mean shell/sed/grep parsing |
| 2021-06-12 19:49:36 | <janus> | so not parsing, more like SATANISM :O |
| 2021-06-12 19:51:33 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2021-06-12 19:51:54 | <safinaskar> | janus: this version https://git.sr.ht/~safinaskar/check-cfg-ambiguity/tree/c6909efcbc1139c8c09fb407144e523743e7fec3/item/.build.yml is pretty simple |
| 2021-06-12 19:53:12 | × | Scotty_Trees quits (~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) (Ping timeout: 252 seconds) |
All times are in UTC.