<Anarchos>
I want to solve a minor bug in libroot : POSIX states that it should be possible to rename an empty directory to itself. Though our libroot calls the rename system call, which raises an error B_BAD_VALUE.
<Begasus>
Hi Anarchos
<Anarchos>
if files are different, it calls the file system rename operation.
<Anarchos>
My question : at which layer should it be allowed to rename an empty folder to itself : in libroot, kernel/vfs, or file_system/bfs layer ?
* Anarchos
just sends a bottle in the haiku's developer's sea :) (not sure if the 's are correct)
<PulkoMandy>
Anarchos: If I understand posix correctly, you have to "resolve" the paths first (convert any "..", ".", and symlinks except for the last component) and then see if you arrive at the same inode number (this also handles cases of hardlinked files)
cyrus__ has quit [Ping timeout: 480 seconds]
<PulkoMandy>
So it looks like a job for the vfs or the filesystem, which will probably already do these tasks to locate the file or directory to rename
<PulkoMandy>
So, vfs if possible (then it is done once for all filesystems), otherwise in each filesystem
<andreasdr[m]>
Hi there.
<PulkoMandy>
The vfs may return a specific error code (EALREADY?) and libroot could convert this to B_OK, if we decide that there are some other calls of the syscall where we want to handle that error in different ways. But I don't see why, the POSIX spec seems reasonable here
<Anarchos>
they are not mandate to be different names.
<Anarchos>
that is the unit test i encounter with the testsuite of OCaml compiler.
cyrus__ has quit [Ping timeout: 480 seconds]
<phschafft>
I think that is to be understood in the context of the rest of the paragraph.
<phschafft>
it's not about renaming directories onto themselfs.
<Begasus>
Hola OscarL phschafft
<phschafft>
it's about that the target gets removed. which for directories is only valid if they're empty as per directory removal rules.
<Begasus>
k, so it looks like I can build hedgewars in Terminal, with haikuporter it still can't find the units :/
<OscarL>
Hey there Begasus and fellow Haikunauts.
<phschafft>
basically that rename() should work on the new name like unlink() or rmdir().
<phschafft>
so basically if unlink() (if not a directory) or rmdir() (if a directory) would fail it should fail, otherwise succeed (unless one of the other errors happened).
cyrus__ has joined #haiku
cyrus__ has quit [Ping timeout: 480 seconds]
wicknix_ has joined #haiku
wicknix has quit [Ping timeout: 480 seconds]
cyrus__ has joined #haiku
<Anarchos>
phschafft yes but what is strange is that 'mv -T foo foo' works if foo is an empty dir
<Anarchos>
but the syscall rename gives B_BAD_VALUE
<phschafft>
compare the code paths. POSIX there speaks about the syscall basically, not mv. mv may have any number of extra checks and/or diagnostics.
cyrus__ has quit [Ping timeout: 480 seconds]
<phschafft>
so the question here is a bit on what mv does with and without -T.
<PulkoMandy>
"If the old argument and the new argument resolve to the same existing file, rename() shall return successfully and perform no other action." I think this is the relevant part of the spec here
<PulkoMandy>
It doesn't matter if it is a file or a driectory, empty or not. If the source and destination are the same, just do nothing and return ok
<Anarchos>
PulkoMandy beware there is a specific paragraph just after this one , for directories.
<PulkoMandy>
Yes, but it is after. So I would do this check first: source and destination are the same, so there is nothing to do. No need to check the other things then
<phschafft>
yes, but at least POSIX makes no differene here regarding the type of the inode.
<phschafft>
if the inode is the same, just return success. end of story.
<phschafft>
no testing for it's type or status.
<phschafft>
see also RATIONALE where it is explained why this is defined this way.
<phschafft>
also a file with 10k of lines should be splitted. ;)
<Anarchos>
phschafft i didn't write it ;)
<phschafft>
I'm aware and I'm not arguing into your direction. more hanging it as note into the air in the hope someone will get the message before it falls down to the ground and ends up in the null device.
<Anarchos>
PulkoMandy i will try to do a PR on this one tonight.
cyrus__ has quit [Remote host closed the connection]
<phschafft>
will talk with Clotho next time I'm in the swamp. ;)
floof58 has quit [Ping timeout: 480 seconds]
<Begasus>
k, test for fpc/hedgewars passes now :)
<OscarL>
phschafft: "Graveyard Keeper is the most inaccurate medieval cemetery management sim of the year" :-D
<Begasus>
still: options.inc(25,3) Fatal: Can't find unit GL used by uConsts :/
<OscarL>
Begasus: managed to build it with HP, or that still fails?
<phschafft>
;)
<Begasus>
this is with hp OscarL
mr_lou has joined #haiku
<OscarL>
Begasus: nice :-)
<Begasus>
progress in building the testcase, so that part it ok, diff error now
<phschafft>
OscarL: it's a lot of fun.
<gordonjcp>
argh
<gordonjcp>
the phantom no-input thing strikes again
<OscarL>
that sounds like a double negative? you mean you get input, but in ghostly form? :-P
<OscarL>
gordonjcp: which app is giving you problems?
floof58 has joined #haiku
mr_lou has quit [Quit: Leaving]
<OscarL>
Begasus: just for reference, on 32 bits, only "0ad_x86" is giving that 'unresolvable requires "cmd:python2"' warning.
<OscarL>
if it wasn't so darn big... I'll give it a try and update it.
<Begasus>
ok, thanks on the update OscarL :)
tombhadAC has quit [Quit: Vision[]: i've been blurred!]
<Begasus>
it works in Qt Creator with the system installed fpc :/ (uLand.pas(380,49) Note: Call to subroutine "function GetRandom(m:LongWord):DWord;" marked as inline is not inlined)
<OscarL>
Begasus: stab in the dark... see if you can compare compilation flags used by Qt Creator vs hp?
<Begasus>
tried to import as much as I can there OscarL (afaict)
<Begasus>
so it's working fine (also in Terminal)
<Begasus>
there is progress, at first it could find the units for hedgewars, now it's some sub/uiint?
orealis has quit [Quit: yap...]
mmu_man has quit [Ping timeout: 480 seconds]
<Anarchos>
phschafft the rename behaviour for identical files (B_BAD_VALUE) comes from the commit f40c5e32 of Axel (05 nov 2009)
mmu_man has joined #haiku
<Begasus>
time for an upgrade? ;)
<Begasus>
fpc rebuild number * ..
orealis has joined #haiku
gshumway_ has joined #haiku
zard has quit [Quit: leaving]
toydragon has quit [Ping timeout: 480 seconds]
zard has joined #haiku
gshumway has quit [Ping timeout: 480 seconds]
<Anarchos>
to do a Pull request on gerrit, should i create a local branch and push it on gerrit ? Or should i commit to my local master branch, and push to gerrit ?
<zard>
Either way should work. I like creating a local branch, though.
mr_lou has joined #haiku
<Anarchos>
how to recover my password on gerrit ?
<Anarchos>
i can log with github, but i would like to recover the existing password
<OscarL>
Anarchos: not sure if you can get an old password if you lost it.
<OscarL>
if you can login with github, for example, you can create new ones, for https credentials on Gerrit, or for the "single-sign-on" (https://sso.haiku-os.org/).
<nekobot>
[haiku/haiku] 935c0c739c0e - vfs: rename is a no-op when same path.
<OscarL>
Anarchos: congrats on the fast merge :-D
<Anarchos>
OscarL not sure he got the typos too lol
<Anarchos>
OscarL on the roadmap : analyse the only 2 discrepancies in the whole ocaml testsuite on haiku x86_64 :)
<OscarL>
Anarchos: those programming language testsuites tend to find lots of weird stuff :-) Good luck hunting the remaining ones!
<Anarchos>
OscarL one is a network recvfrom error :/
<Anarchos>
the other is a fprintf "%f" (21.0+21.0) --> 42.1 :/
<OscarL>
meanwhile, I get lots of errors from the Python testsuite, but I'm too dumb to fix any :-D
<phschafft>
the printf one is 'fun'
<Anarchos>
phschafft ocaml must be cursed by Cthulu. No other explanation in my mind.
<phschafft>
hm.
<OscarL>
Missing fsetround(FE_TOWARDZERO) somewhere? Can rounding be locale dependent, for example?
<Anarchos>
OscarL maybe. I am really not versed in arcane of floating points and fprintf !
<OscarL>
Anarchos: just for kicks, I'd try with `export LC_NUMERIC=C` before that test, and see if bug still remains.
<Anarchos>
OscarL yes i remember having to do LC_ALL=C because there was some «3.00» hardcoded in hashtable code in ocaml (size of init bucket if i remember)
<Anarchos>
and in France the locale says to write it «3,00»
<phschafft>
just as it touches one of my current tickets: does that mean that in Fance the num block also contains ','?
<OscarL>
Not for Argentina, and we too use "," for decimal separator.
<phschafft>
you have '.' on that key?
<OscarL>
yup
<phschafft>
hm.
<Anarchos>
phschafft no it contains "." But in excel or in teams/spreadsheet, it types "," differently from the other "." key in the main keyboard :/
<phschafft>
also hm to Anarchos.
<phschafft>
I was wondering to allow '.' as a separator, as alias to ','.
<OscarL>
.... <<<< /me hitting that key repeatedly.
<Anarchos>
OscarL on a french keyboard you can type «Alt gr + .» to get …
<phschafft>
same on my german one.
<Anarchos>
phschafft we can also have ' ' as a thousand separator : 3 000 = 3000
<Anarchos>
1 000 000=1e6 :)
<phschafft>
same here. but space is not in the num block so not part of my ticket. ;)
<Anarchos>
phschafft speaking of keyboard, i am also the creator of this keymap : data/system/data/KeyboardLayouts/Fizzbook NL2
<lorglas>
hi Begasus
<OscarL>
phschafft: we use "." for "thousands" separator down here: 1.000.000,01
<phschafft>
I however wonder if I should ignore a few characters when parsing numbers. some programming laguages allow _ as in 1_000_000. I like that.
<Anarchos>
phschafft why don't you rely on a glibc scanf ?
<phschafft>
there this lion goes no glibc has gone before!
<phschafft>
*where
<phschafft>
scanf is to expensive on this project. and I'm already operating on the character array anyway.
<Anarchos>
phschafft what about designing by hand your automata ?
<phschafft>
hm?
<Anarchos>
phschafft and beware that you can't use the lexer for positive ints to parse negatives because MIN_INT will never be the opposite of a positive int.
<phschafft>
within limits.
<phschafft>
when I'm on generic code level I sometimes use functions for bigger ranges and just check for a range match, then cast, and return that.
<Anarchos>
phschafft it does the trick indeed :)
<Anarchos>
now time to go live with family... bbl
<phschafft>
it might not be the optimal solution, but it is easy, easy to maintain, and removes a lot of duplicate code.
<phschafft>
but in this specific usecase all floating points as well as negative numbers are considered invalid. ;)
<Anarchos>
OscarL what a shame gerrit doesn't accept patches trhough github, i would have earned a badge for fast merge :)
<phschafft>
so in this very sepecific usecase I can ignore them.
<phschafft>
(which is very nice for a change ;)
<OscarL>
Anarchos: :-)
<Anarchos>
OscarL i already saw such badge on github
Anarchos has quit [Quit: Vision[]: i've been blurred!]
Begasus has quit [Quit: Vision[]: i've been blurred!]
<yann64[m]>
<Begasus> "yann64, you know 4.8 from..." <- Hi Begasus: went by the version/tarball available on the main website, so no did not see this version 4.8
jmairboeck has joined #haiku
<yann64[m]>
Will change the receipe accordingly over the weekend
<OscarL>
Hi yann64[m]. Begasus has already "left the building" (for today at least :-D)
<yann64[m]>
<Begasus> "could also use a Deskbar menu..." <- You are right about the menu item, still noob with recipes, something more for me to think abtout the future
<yann64[m]>
Ok, as he seems to be using the Matrix bridge like myself I thought he would get the notification anyway
<yann64[m]>
Will answer directly on the receipe PR
<andreaa71>
OscarL : the true year is 1971 ... my poor brain ... 72 wrong ... my poor memory ... :)
<andreaa71>
italians and wrong papers ...
<OscarL>
andreaa71: that's OK :-) I tend to forget my birthday too.
<andreaa71>
OscarL : thanks
<andreaa71>
:)
<cyrus__>
"But pointers just get garbage-collected anyway." <--- something a junior engineer just told me in his performance review. Wut?
<andreaa71>
cu later
andreaa71 has left #haiku [#haiku]
Olig has quit [Quit: Vision[]: i've been blurred!]
<bjorkint0sh>
cyrus__, well when you restart :-)
<cyrus__>
Hah!
<OscarL>
Buh! andreaa71 already left, before I could make a joke about those damn italians messing documents up, and /me having 3 grandparents with *very* Italian last names :-P
<OscarL>
cyrus__: Confidently incorrect... best kind of incorrect? :-P (at least he's a junior?... heard worse from some of my "seniors" :-D).
<cyrus__>
OscarL: That one took the cake for me. I was getting on him because I was told a large number of his PRs were being kicked back because he wasn't free'ing pointers when he was done with them, even though it had been explained to him a whole bunch of times why it was necessary.
<cyrus__>
That dude spent too much time in Java land. Or something.
<OscarL>
kids these days with their managed progamming languages. *shakes head*
dqk has joined #haiku
<nosycat>
Real programmers use Ada anyway.
<OscarL>
real programmers focus cosmic rays directly into HDD sectors, pfft! :-P
<Anarchos>
nosycat i was given an ADA book last week :)
<bjorkint0sh>
HDD? wow. Rich.
<OscarL>
Ada... reminds me of good guy Andrew Bachmann.
dqk_ has quit [Ping timeout: 480 seconds]
<bjorkint0sh>
Punch Cards.
andreaa71 has joined #haiku
<nosycat>
Small world. I did some reading about it these days.
<Anarchos>
OscarL reminds me of this xkcd about the man moving hands, using butterfly effect to create lenses in atmospheric layers to focus cosmic rays :)
<cyrus__>
Even in our tech stacks that use managed code, we have standing mandate that large memory objects like arrays, collections, lists, etc should be pro-actively cleared when done with them (and force-GC'ed where applicable) to free memory where we can. All these resources aren't free dangit
<bjorkint0sh>
emacs has a butterfly mode.
<OscarL>
He used to work for NASA (using ADA, of course!), and do BeOS/OpenBeOS work on the side :-P
<OscarL>
Anarchos: yeah... I had that one in mind too :-)
<andreaa71>
bjorkint0sh : nano and pico ... easy
<bjorkint0sh>
nooooo
<andreaa71>
why
<bjorkint0sh>
well fine. they're fine.
<bjorkint0sh>
like stale bread is fine if you're starving :-D
<andreaa71>
info starvig ...
<andreaa71>
info starving ...
HaikuUser has joined #haiku
<OscarL>
cyrus__: about "free" resources... that's why I think about many "first world" programmer..., wish they had to use crappy CPUs, and slow and unreliable networks, instead of having 64 core workstations with 128 petabyts of RAM when desiging simple websites :-P
HaikuUser has quit []
<cyrus__>
OscarL: No doubt
<OscarL>
s/why/what/ (sorry for my frequent typos, and broken "English")
<nosycat>
I keep trying to remind people of it, and they always yell at me.
<andreaa71>
i am happy to see good people ... :)
<OscarL>
nosycat: o7. Thanks for your efforts!
<andreaa71>
you are good people :)
<andreaa71>
peace ...
<nosycat>
:)
<cyrus__>
I gave a (admittedly long-winded) spiel about "being a good citizen in any environment" recently to my team. Explained that I grew with Commodore VIC20, Tandy 1000, etc and even in the early days of Windoze and Mac, you only had a finite amount of RAM and compute cycles and learned to be a good steward so the whole ecosystem didn't come crashing down around you.
<nosycat>
How did that go?
<andreaa71>
cyrus__ : as matter ... i bought theC64 from the retro games ...
<cyrus__>
Just because your dev machine has gobs of resources doesn't mean the target environment will *and* just because those resources are available at any given time, doesn't mean there aren't other software competing for them because they need them too.
<cyrus__>
pfffft... went over like a lead balloon.
<nosycat>
Figures.
<cyrus__>
I hear one more "I can't reproduce" when they are running it locally again I'm gonna strangle some people.
<dovsienko>
once upon a time I worked in a company where software developers could have any PC they could justify for the development needs, but before a project went live, it had to pass a test on a "typical user" PC
<nosycat>
Oh, nice!
B2IA has quit [Quit: Vision[]: i've been blurred!]
<dovsienko>
which was about a 10-15 years old PC with commensurate software
<cyrus__>
dovsienko: That's just it.... we have testing environments for this in QA. That's why we have a whole QA team kicking this stuff back and the engineers just shrugging.
<cyrus__>
We made a couple VMs in QA available to test in so they could verify before we deploy to QA. But I can't seem to hammer it into their heads to actually.... ya know... like... USE IT.
<dovsienko>
I have some experience at both the developer and the QA side of this fence
<OscarL>
I remember doing QA for a tech company on SOCAL in 2015... they had some 4 MB .png images... for an icon on a webpage. They didn't see the problem :-(
B2IA has joined #haiku
<cyrus__>
wut?
<dovsienko>
(as well as a sysadmin and a network engineer)
<OscarL>
meanwhile... I was managing their Jenkins setup via a 2G connection :-(
<nosycat>
Sounds about right.
<kallisti5[m]>
is python 3.12 really supposed to only offer a "python3.12" cli binary?
<kallisti5[m]>
(and no python3)
andreaa71 has left #haiku [#haiku]
<dovsienko>
hard times produce strong people. strong people produce easy times. easy times produce weak people. weak people produce hard times. hard times...
<cyrus__>
don't get me started. The web guys are always pulling that crap. "You need to optimize your assets, the payload is unnecessarily huge". "I haven't heard any complaints" Get outta here.
<cyrus__>
It's me. I'm complaining. Right now. To your face. Sheesh.
<dovsienko>
in any case, whichever hat and formal title one wears, there is a need to have common sense and to reason about technical design decisions
<dovsienko>
if one cannot explain what problem you are trying to solve and why the solution is good enough, it does not matter in which programming language one will produce bad code
<cyrus__>
I always bring up that line from Jurassic Park: "You spent so much time thinking about whether or not you *could*, you never stopped to think about whether or not you *should*."
<Anarchos>
cyrus__ in France we say «Science sans conscience n'est que ruine de l'âme. »
<dovsienko>
I am sure they would use French
<nosycat>
Motto of this age, Anarchos.
<cyrus__>
Anarchos: Indeed
<Anarchos>
nosycat i am frightened to see that my colleagues are not annoyed to work for a military big corp...
<Anarchos>
i feel really bad every morning to work there
<OscarL>
kallisti5[m]: yes. because the 3.10 is the default one (and 3.xx versions are not necessarily compatible between them). I've toyed with the idea of having all python version recipes use "make altinstall", and have a "python_default" recipe that provides "python3" according to user wishes... but haven't finished toying with that.
<kallisti5[m]>
hm. ok. so while python3.12 works great on riscv64, I should build 3.10 lol
<kallisti5[m]>
since most packages require "cmd:python3"
<OscarL>
kallisti5[m]: workaround while you test... just `ln -sr` a python3 into non-packagked/bin
<kallisti5[m]>
heh, nah. This is the package going to our repos
<kallisti5[m]>
(for riscv64)
<kallisti5[m]>
anyway, once i get 3.10 built (minus tk lol), then I can try building icu74 for riscv64
<cyrus__>
Anarchos: I have friends that are ex-military intelligence and every one of them have told me: "Never work for us" or "Promise me you'll never take a job here, not even as a contractor." they obviously can't tell me why, but I wholeheartedly believe them when they say "just don't, dude"
<cyrus__>
I used to want to just to "look behind the curtain" but I think I'll remain blissfully ignorant.
<OscarL>
kallisti5[m]: I see. Welp... I've added 3.11 and 3.12 in a "for testing purposes" basis (that's why we only provide the minimun support for them, as in almost no .hpkg packages for those versions, besides setuptols and pip).
mmu_man has joined #haiku
<OscarL>
Same with /me trying to keep up with 3.13.0.
<kallisti5[m]>
OscarL: yeah, I was just grabbing the latest python3. Didn't realize newer versions were only for testing
<kallisti5[m]>
also, no ?all for architecture
<nosycat>
Anarchos: that's a related issue, yeah.
<nosycat>
Anyway, see you!
<OscarL>
kallisti5[m]: can't have "all", we dont support gcc2 anymore for Python.
<kallisti5[m]>
?all !gcc2_x86 :-)
nosycat has quit [Quit: Leaving]
<kallisti5[m]>
well !gcc2_x86 ?all
<OscarL>
wouldn't that disable it for all arches? buildmasters do not build for untested archs ("?"), AFAIK.
<kallisti5[m]>
correct. It makes it so it won't automatically build and will only build locally via allow_untested_arches=true
<kallisti5[m]>
however, python3.12 seems to work fine from my testing :-)
<kallisti5[m]>
also, none of this is blame. You're doing awesome work on these packages
<OscarL>
sounds like riscv needs addig somewhere where "all" is processed :-)
<kallisti5[m]>
I was more confused about the lack of python3 lol
<OscarL>
kallisti5[m]: thank you :-). I know my limitations, but try to help where I can.
HaikuUser has joined #haiku
HaikuUser has quit []
zard has quit [Quit: leaving]
<OscarL>
after reading the logs to catchup what I missed (I'm a slow reader, + lag, etc)... man... this channel can have some interesting topics... when it is not just me talking nonsense :-P
<cyrus__>
eh... yeah lol
<cyrus__>
More to the point of this channel: I gotta see if I can figure out why IntelliJ and PyCharm keep crashing. They both tie up a core and never actually launch the app. But the previous version worked fine. Starting to think the bump to java17 has something to do with it. But first I need to make sure java17 itself is working ok on my machine. Looks like all the launcher script does is set JDK17_HOME and then call the launcher scr
<cyrus__>
ipt that is bundled with it.
jmairboeck has quit [Quit: Konversation terminated!]
<cyrusbuilt>
hmmm... doesn't ever appear to even launch a java process. bash launches and eats a core. So the launcher script is doing something weird maybe
<augiedoggie>
i was going to test it and look at it but it takes forever for me to download packages
<augiedoggie>
i only get ~400K/s to the packages servers :/
<OscarL>
augiedoggie: still faster than my usual average of 200/220 KB/s
<augiedoggie>
it would probably be quicker for me to build the pycharm package than download 500MB from the haikudepot server
<OscarL>
cyrusbuilt: see if anything shows up on /var/log/syslog?
rexbinary has joined #haiku
<OscarL>
or try to halt the thread that pegs the CPU (via ProcessController on the Deskbar).
<OscarL>
(halt as int... call the debugger on it, to see what/where it is)
<cyrusbuilt>
Copied and pasted the last line of the "outer" idea.sh script into terminal and it launches
<cyrusbuilt>
Spits out a bunch of exceptions, but it launches
<cyrusbuilt>
Thats when I do the same thing I did with IntelliJ. If I launch it using the 'outer' script, bash launches and spins off into lala land
<cyrusbuilt>
Gotta give it the bionic elbow
<augiedoggie>
you could copy the script somewhere writable and add a `set -x` at the top to watch it
<cyrusbuilt>
good call
<cyrusbuilt>
weeeeiiiiirrrrdd. It launched.
<cyrusbuilt>
I just created a new script in 'home' copied and pasted the contents, the added 'set -x' under the shebang.
<cyrusbuilt>
wth
tombhadAC has quit [Quit: Vision[]: i've been blurred!]
<cyrusbuilt>
Also pipenv wants to write things to /boot/home/config which is RO, so that blows up too
<cyrusbuilt>
What the... chmod: changing permissions of '/boot/home/config': Read-only file system
<cyrusbuilt>
What am I missing?
<augiedoggie>
first run from Terminal is ok after deleting the settings
<augiedoggie>
all other scenarios seem to be broken
<augiedoggie>
it's storing some odd value
<augiedoggie>
or not getting the proper environment variables when run from Tracker
<augiedoggie>
the svg problem seems to be intermittent
<OscarL>
cyrusbuilt: run `df`, will show that /boot/home/config has type "packagefs" (notice the lack of W flag too :-D)
<cyrusbuilt>
aaaahhhhh
<cyrusbuilt>
well then... pipenv is never gonna work lol
<OscarL>
cyrusbuilt: ~/config/non-packaged/ is RW (same as /system/non-packaged/)
<augiedoggie>
$JDK17_HOME isn't set when launched from Tracker
<cyrusbuilt>
Can't seem to figure out how to get pipenv to write there. Looking at it's options.
<OscarL>
patches welcomed. I hate venvs (PEP-582 for life! :-P)
<Anarchos>
OscarL ok the sendto test error is an issue in the ocaml test (discrepancy with what POSIX says)
<OscarL>
Anarchos: one down... 2 to go? :-)
<cyrusbuilt>
OscarL: I'm with ya. I assume it's part of the 'pip' package. Maybe I can make a patch.
<OscarL>
"pip install --user" works at least... that's as far as I went.
<cyrusbuilt>
Trying that next
<OscarL>
pip install works too. (for things like pyserial, at least).
<OscarL>
if things expect to be able to use venvs, or compile things... changes of success drop significantly.
<OscarL>
(without us patching them, or at least providing custom build options)
<OscarL>
way too many python packages assume you either run on Win, or Linux or Mac. And even then... our Python packages still need further refinements/patches).
<cyrusbuilt>
I was able to do 'pip freeze > requirements.txt' then 'pip install --user -r requirements.txt'
<cyrusbuilt>
The project didn't have a requirements.txt file, only a Pipfile
<cyrusbuilt>
augiedoggie: You're right about svgcache. The first 2 times, it crashed and then the 3rd time was a charm.
<cyrusbuilt>
Ha! See what I did there?
<cyrusbuilt>
Well... maybe I can make patches for IntelliJ and pycharm that set JDK17_HOME before launch, and then that should (mostly) fix that issue.
<cyrusbuilt>
Then maybe I can figure out a way to patch pipenv.... but not sure if that's worth the effort
mr_lou has quit [Ping timeout: 480 seconds]
<cyrusbuilt>
Looks like I could just add a line 'export $JDK17_HOME=/packages/openjdk17-17.0.7.3-2/.self/lib/openjdk17' before all that and it should work.
<cyrusbuilt>
Whoops. Minus the '$'
<augiedoggie>
but that path will need to be updated every time the jdk recipe gets changed
<cyrus__>
I only worry about using that specific path.
<cyrus__>
Beat me to it!
<cyrus__>
Yeah gotta find a better way to get that path
<augiedoggie>
probably better to source the profile script instead, like `. /system/data/profile.d/openjdk17.sh`
<augiedoggie>
or whatever the path is
<cyrus__>
oohhhh yes indeed
<cyrusbuilt>
yep that is exactly the right path
<augiedoggie>
i think the problem might be something else...
<augiedoggie>
it doesn't like being launched via symlink
v_harkonnen has quit [Ping timeout: 480 seconds]
<augiedoggie>
it must be checking $0 in the script and getting the symlink path
<augiedoggie>
anyhow, i have other things to do for now, it launches fine if i open Tracker to /boot/system/apps/pycharm and double click the script from there
smalltalkman__ has quit []
<cyrusbuilt>
augiedoggie: Thanks for looking at it. I'll see if I can figure it out
<cyrusbuilt>
testing some changes now
B2IA has quit [Quit: Vision[]: i've been blurred!]
B2IA has joined #haiku
dovsienko has quit [Quit: Leaving]
B2IA has quit []
B2IA has joined #haiku
OscarL has quit [Read error: Connection reset by peer]
Atomozero has joined #haiku
<B2IA>
(atomozero) test
<cyrus__>
augiedoggie: confirmed. It's not a fan of being launched via symlink without or without sourcing openjdk17.sh
<cyrus__>
not sure what the correct fix is, but I'll keep playing with it
Atomozero has quit []
Atomozero has joined #haiku
<cyrus__>
Maybe it's because it's the shebang line: sh -l
<cyrus__>
No I don't think thats it
<B2IA>
(AGMS) Hi atomozero, looks like your test worked.
<B2IA>
(AGMS) Though your file sharing isn't working, see the BeShare Handbook file to set up port forwarding, which is why it isn't working. Same goes for michel. The count of your files shows up in brackets here to indicate firewall/router problems.
Anarchos has quit [Quit: Vision[]: i've been blurred!]
v_harkonnen has joined #haiku
Atomozero has quit [Quit: Vision[]: i've been blurred!]
mmu_man has quit [Ping timeout: 480 seconds]
BrunoSpr has joined #haiku
<augiedoggie>
cyrus__: changing the exec to a normal background job makes the problem go away, at least that could be used as a temporary fix
<augiedoggie>
hmmm
v_harkonnen has quit [Remote host closed the connection]
BrunoSpr has quit [Quit: Vision[]: Ich wurde gewaschen!]
BrunoSpr has joined #haiku
<BrunoSpr>
hello all
<cyrus__>
evenin BrunoSpr
<cyrus__>
augiedoggie: true. Not sure if it'll fly in a PR tho?
mmu_man has joined #haiku
<cyrus__>
I dunno
<augiedoggie>
the PR would be sent to haikuports and i have some influence there ;)
<cyrus__>
ah indeed
<augiedoggie>
it's an odd bug, i tried to reproduce it using some other scripts
<augiedoggie>
symlink to a script that exec'd another script and so on
<cyrus__>
pardon my ignorance here, but how do I change the exec to background in haiku?
<augiedoggie>
remove the exec and put ' &' after the command
<augiedoggie>
that space and then &
<augiedoggie>
that's*
<cyrus__>
oh right. duh. same as any other posix-compliant system
<cyrus__>
if nothing else, the PR might at least start the conversation if anyone has any better idea. defo is a weird bug though.
<augiedoggie>
yeah, if you file it i'd probably let it sit for a while to see if korli or PulkoMandy comments on it
<cyrus__>
I'm debating whether or not it would be good to still source that script or not. Probably not necessary if openjdk17 is already installed (per the REQUIRES)
<augiedoggie>
i believe that's why the launcher uses `sh -l`
<augiedoggie>
so that it picks up those files even when launched from Tracker
<cyrus__>
I'll just switch to background exec and call it a day for now. I'll open PRs for both of those probably on Monday
<cyrus__>
Gonna play with it over the weekend a bit
<cyrus__>
Can't launch a terminal in pycharm either and it pops up a bunch of error toast messages about not being able to save plugins or something. Gonna look into those some more too
<cyrus__>
complains about something to do with pty4j
<cyrus__>
when trying to launch the terminal that is
xet7 has quit [Remote host closed the connection]
BrunoSpr has quit [Quit: Vision[]: Ich wurde gewaschen!]