<< 03-02-2024 >>

00:04:50*krux02 quit (Quit: Leaving)
00:20:40FromDiscord<Robyn [She/Her]> I'm reading the code carefully and struggling to understand why I am having an issue with it... ._.
00:20:44*disso-peach quit (Quit: Leaving)
00:25:11FromDiscord<Robyn [She/Her]> My Nim code: https://play.nim-lang.org/#pasty=isGRpdNRVHSb↵↵The Python code: https://www.online-python.com/HYP7UGhgkt
00:32:28FromDiscord<Elegantbeef> Are python characters single byteS?
00:32:29FromDiscord<Elegantbeef> Also why the hell are you doing `cast[string](...)`
00:33:31FromDiscord<Elegantbeef> If you look at your `repr` you get only one of the two bytes
00:34:19FromDiscord<Elegantbeef> So your logic is wrong
00:34:30FromDiscord<Elegantbeef> sent a code paste, see https://play.nim-lang.org/#pasty=blQxRcHloTPh
00:34:49FromDiscord<Elegantbeef> Since `0x10000` is about 2.5 bytes larger than 1 byte
00:40:41FromDiscord<Elegantbeef> https://play.nim-lang.org/#pasty=oChLUtxExAyw yep your issue is assuming Python `char` and Nim `char` are the same @Robyn [She/Her]
00:42:36FromDiscord<Elegantbeef> Actually you can drop the `$` and just do `add`
00:42:40FromDiscord<Elegantbeef> `std/unicode` has a `add` for `Rune`
00:43:26FromDiscord<Robyn [She/Her]> Aaah... Joy, thanks for pointing that out to me, I'm blind otherwise
00:43:44FromDiscord<Elegantbeef> If only you wrote the code from scratch so you'd have thought about what you were doing
00:47:56FromDiscord<Robyn [She/Her]> I would've still made the same mistake :P
00:48:09FromDiscord<Elegantbeef> I disagree
00:52:53FromDiscord<zumi.dxy> `runes`?
00:53:12FromDiscord<Elegantbeef> What about them?
00:53:27FromDiscord<zumi.dxy> Sorry I thought that wasn't mentioned yet, whoops
00:53:35FromDiscord<Elegantbeef> They're converting from non standard utf8 to utf8
00:54:00FromDiscord<Elegantbeef> So `std/unicode` is wholly useless on the consumption side, but on the emitting side it's fine
00:54:56FromDiscord<Robyn [She/Her]> In reply to @Elegantbeef "I disagree": I did not at any point realise I needed runes- I thought that `char` would do the trick...until you made me remember it's 8 bits, again-
00:55:15FromDiscord<Tommy_pac> sent a long message, see https://pasty.ee/qXdKqnZMiLHs
00:55:34FromDiscord<Robyn [She/Her]> <@&371760044473319454>
00:59:21FromDiscord<Elegantbeef> hey you might've skipped runes and just did the logic directly
00:59:49FromDiscord<Elegantbeef> Though bitwise operators aren't really needed as long as you make the bytes right
01:00:47*azimut joined #nim
01:09:07FromDiscord<Robyn [She/Her]> Fair
01:09:19FromDiscord<Robyn [She/Her]> In reply to @Elegantbeef "hey you might've skipped": :P
01:17:24FromDiscord<drunkenalcoholic> does anyone know of an simple daemon example, nothing too comlpex as im only learning. the raeson is I have a process running in a forever loop that I would like to destroy when the window manager gets destroyed or user logs out
01:18:34FromDiscord<Elegantbeef> Sounds like you should use your init system
01:20:03FromDiscord<Elegantbeef> If you use systemd you can just make a user service
01:20:22systemdsucksor just .xinitrc
01:21:40FromDiscord<Elegantbeef> Hey some people use wayland!
01:21:46FromDiscord<Elegantbeef> Not that I do, but some do
01:22:21systemdsuckssorry, didn't account for the betatesters
01:23:09FromDiscord<Elegantbeef> I'm a simple man it does not have a way to do global push to talk
01:58:09FromDiscord<nasuray> In reply to @Elegantbeef "Hey some people use": https://media.discordapp.net/attachments/371759389889003532/1203157447531962418/image0.gif?ex=65d012b1&is=65bd9db1&hm=5f62f20df97e5fade4bd83974f3dbf116241626a9e152a9089dec95bcfc990b2&
02:32:52FromDiscord<␀ Array 🇵🇸 🍉> https://infosec.exchange/@malwaretech/111864954043268604
02:57:05*lucasta quit (Quit: Leaving)
03:24:37FromDiscord<drunkenalcoholic> noob question, how would I declare an "empty" DateTime variable e.g dTimeStamp: DateTime = now() I was think = nil or something but that didn't work, reason I need it to be "empty" is to check later in code if it has a value and if not run a proc else discard
03:27:26FromDiscord<Elegantbeef> `default DateTime`
03:27:41FromDiscord<Elegantbeef> But you likely want `std/options` and to do `none(DateTime)`
03:28:39FromDiscord<drunkenalcoholic> ahh i see. so "if dTiemStamp == default:" wouldn't work?
03:30:00FromDiscord<drunkenalcoholic> sent a code paste, see https://play.nim-lang.org/#pasty=AlrbKJNvSsEm
03:30:02FromDiscord<Elegantbeef> `default` is a procedure
03:31:32FromDiscord<drunkenalcoholic> the above it what I am tring to do 🙂 , I will look into to the default procedure, thanks
03:34:11FromDiscord<drunkenalcoholic> I think I will just use a bool variable to indiocate first run, don't want add extra modules if I don't need to
03:34:22FromDiscord<Elegantbeef> Just use options
03:35:41FromDiscord<drunkenalcoholic> im noob, so I will have to go and learn how to use options, which is a good thing
03:43:05FromDiscord<Elegantbeef> Well it's a much better interface than having two variables
03:44:57FromDiscord<drunkenalcoholic> sent a code paste, see https://play.nim-lang.org/#pasty=tQzymOHHcTCb
03:45:08FromDiscord<drunkenalcoholic> what am I doing wrong here in the if statement
03:45:30FromDiscord<Elegantbeef> `dTimeStamp.get` or `dTimeStampe.unsafeGet` since you know `isSome` is true
03:46:36FromDiscord<Elegantbeef> `Option[T]` encapsulates the value inside and encourages correct access of it through a `isSome` check followed by `get`
03:47:29FromDiscord<drunkenalcoholic> Thank you, your info is greatly appreciated
03:50:39FromDiscord<drunkenalcoholic> "if isNone(dTimeStamp.get) or now() + initDuration(minutes = INTERVALS) > dTimeStamp:" isNone(sTimeStamp.get) should get the container content and compare if = none? return a bool, I am still getting errors , so I am missing something
03:51:46FromDiscord<Elegantbeef> read the `std/options` manual
04:20:26FromDiscord<drunkenalcoholic> ok fixed, thank you for your help
04:32:09NimEventerNew Nimble package! instagram - Instagram internal web api implementation, see https://github.com/thisago/instagram
04:38:17FromDiscord<pierce.jason> I'm having trouble getting nimble to init a blank project for me. fails seemingly right before git init while trying to cd into the new project dir that it just created. running the cd and git init manually afterwards is successful. nimble v0.14.2 on Win10. tried from both cmd.exe and Git Bash
04:40:11FromDiscord<pierce.jason> output: https://gist.github.com/pierce-jason/35afe8351158d302475fc36e19ff6707
04:42:35FromDiscord<Elegantbeef> TIL nimble runs git init
04:43:49FromDiscord<pierce.jason> @ElegantBeef --git option
04:44:22FromDiscord<Elegantbeef> Seems it attempts to use bashisms even on windows
04:44:42FromDiscord<pierce.jason> project initializes successfully w/o --git init
04:44:42FromDiscord<Elegantbeef> instead of doing `git init -C path/here/` it does `cd path/here/ && git init`
04:45:09FromDiscord<pierce.jason> bashisms should be fine... in Git Bash shell especially
04:45:56FromDiscord<Elegantbeef> Hey I didnt know what shell you were using
04:46:10FromDiscord<Elegantbeef> Create an issue is all I can say
04:46:13*eery quit (Ping timeout: 255 seconds)
04:46:19FromDiscord<Elegantbeef> The fact this `--git` flag exists is quite odd to me though
04:46:39FromDiscord<pierce.jason> tried from both cmd.exe and Git Bash, same result
04:47:53*eery joined #nim
04:48:32FromDiscord<pierce.jason> hey, look it there, an issue exists already. good deal
04:55:14*azimut quit (Ping timeout: 255 seconds)
05:45:59*azimut joined #nim
05:59:08FromDiscord<leorize> it's not fine, because nimble doesn't use it on windows↵(@pierce.jason)
06:01:55FromDiscord<Elegantbeef> It's quite absurd that it uses cd instead of `-C` 😄
06:48:43*khazakar joined #nim
06:51:28FromDiscord<Hamid_Bluri> In reply to @demotomohiro "That is how `peekXYZ`": strange, the `hasData(p: Process)` returns `false` if the `stdout` is not closed yet
06:57:38FromDiscord<Hamid_Bluri> I tried `fcntl` to make it non blocking but it always returns -1 as an indicator of erro 😄
06:58:01FromDiscord<Hamid_Bluri> (edit) removed "an" | "erro" => "an error"
07:30:02*azimut quit (Ping timeout: 255 seconds)
07:34:29FromDiscord<Hamid_Bluri> OMG it worked
07:42:54FromDiscord<Phil> Beef: Turns out it's specifically clang + valgrind that has the problem
07:43:13FromDiscord<Phil> https://bugs.kde.org/show_bug.cgi?id=452758↵Swapping to gcc solves the problem as well (seemingly at least)
07:58:14FromDiscord<whisperecean> Phil: Moigagoo helped me
07:59:29FromDiscord<whisperecean> I had to do this to print the UUID : proc `$`(val: UUID): string {.borrow.}
08:58:47FromDiscord<Phil> In reply to @whisperecean "I had to do": Huh, odd.↵That is essentially equivalent to `proc $(val: UUID): string = val.string`, didn't you have that before?
08:58:59FromDiscord<Phil> (edit) "In reply to @whisperecean "I had to do": Huh, odd.↵That is essentially equivalent to `proc $(val: UUID): string = val.string`, didn't you have that ... before?" added "somewhere"
08:59:45FromDiscord<whisperecean> I did not have proc $ anywhere hm
08:59:52*azimut joined #nim
08:59:53FromDiscord<Phil> Ohhhhhh
08:59:59*advesperacit joined #nim
09:00:58FromDiscord<Phil> sent a long message, see https://pasty.ee/UyvfLLENzvmD
09:26:18FromDiscord<whisperecean> Yeah lesson learned. It is much harder to do trivial tasks with caveats like these
09:30:37FromDiscord<tapeda> That's when you ask yourself if a string alias would better serve your purpose than a distinct string that borrows a bunch of procedures. Distinct is kinda niche imho
09:31:48FromDiscord<Phil> In reply to @tapeda "That's when you ask": You need the distinction for static proc dispatch, alias won't save you
09:32:02FromDiscord<Phil> In his case at least
09:32:59FromDiscord<Phil> It's all about mapping types to columns and that's only possible when it comes to more "exotic" stuff if you use distinct types
09:49:57FromDiscord<whisperecean> I could not make the 3 procs with just type alias from what I remember
09:54:11FromDiscord<Phil> Aye because a type alias is just a different name over the same type.↵The compiler recognizes them as the same thing and thus will wire up procs for strings to that type alias the same as before.↵Only distinct types are recognized as actually entirely different types
09:54:19FromDiscord<Phil> (edit) "Aye because a type alias is just a different name over the same type.↵The compiler recognizes them as the same thing and thus will wire up procs for strings to that type alias the same as before.↵Only distinct types are recognized as actually entirely different types ... " added "that get their own procs"
10:09:00*ehmry is now known as ehmry__
10:34:46*jkl quit (Quit: Gone.)
10:37:06*jkl joined #nim
11:27:10FromDiscord<norax.2> does someone know whats the comand to export the nim bin variable on unix,thanks in advance
11:27:22FromDiscord<norax.2> (edit) "export" => "edit"
11:31:08FromDiscord<nnsee> In reply to @norax.2 "does someone know whats": what is the "nim bin variable"?
11:31:18FromDiscord<norax.2> that thing needed to run nim
11:31:22FromDiscord<norax.2> i forgot the name
11:31:34FromDiscord<norax.2> and accidentally erased it from my sistem
11:31:42FromDiscord<norax.2> (edit) "sistem" => "system"
11:31:58FromDiscord<nnsee> i have no idea what you're talking about
11:32:05FromDiscord<nnsee> do you mean choosenim?
11:32:15FromDiscord<norax.2> is like export {thename}=nim bin directory
11:32:24FromDiscord<norax.2> but i forgot the name
11:32:25FromDiscord<nnsee> oh, the path variable
11:32:51FromDiscord<nnsee> `export PATH=$PATH:$HOME/.nimble/bin` probably
11:33:08FromDiscord<nnsee> you don't need that to "run" nim btw
11:33:18FromDiscord<summarity> `choosenim show` lists the current active version path (unless you also deleted the path to choosenim)
11:33:19FromDiscord<nnsee> that just makes it so you don't have to use the full path to the nim binary to execute it
11:33:54FromDiscord<whisperecean> @Phil Stumbled upon code like this yesterday https://github.com/hamidb80/ReMS/blob/main/src/backend/database/models.nim Do you think it is well structured?
11:34:54FromDiscord<norax.2> In reply to @nnsee "`export PATH=$PATH:$HOME/.nimble/bin` probably": THANKS
11:35:00FromDiscord<norax.2> it worked
11:35:20FromDiscord<nnsee> yeah, just make sure you put it in your shell's rc file
11:35:24FromDiscord<nnsee> so .bashrc if you're using bash
11:35:24FromDiscord<norax.2> ik ik
11:35:29FromDiscord<norax.2> i accidentally resetted it
11:35:32FromDiscord<norax.2> thats wy
11:35:40FromDiscord<norax.2> (edit) "resetted" => "erased"
11:35:53FromDiscord<norax.2> that ressetted i a mixtape between italian and english lol
11:36:18FromDiscord<norax.2> (edit) "wy" => "why"
11:37:24FromDiscord<Phil> sent a long message, see https://pasty.ee/vyKnEZFbCfbN
11:37:24FromDiscord<norax.2> now it works
11:37:31FromDiscord<norax.2> thx alot
11:37:51FromDiscord<Phil> (edit) "https://pasty.ee/EthluzEhOCkj" => "https://pasty.ee/yvHqeMXGtjuM"
11:38:12FromDiscord<Phil> The problem with structuring along technical boundaries is it scales like ass imo
11:38:17FromDiscord<whisperecean> Ill look into this thanks
11:39:33FromDiscord<Phil> In reply to @whisperecean "Ill look into this": If you're curious about ways of structuring you could look into domain driven design.↵Don't try to dig too deep into it, people like to overcomplicate it and have mixed in a ton more stuff than just splitting code along the lines of "topics"/"domains" , but it contains various pretty neat ideas
11:40:24FromDiscord<Phil> As an example of how I structure things, I've got a webpage for DnD related stuff.↵So I have pages about creatures, characters, items, locations, quests and more
11:40:24FromDiscord<whisperecean> I will most likely run into some other caveat with lowdb before restructuring :F
11:40:46FromDiscord<Phil> So because of that, I have a "creatures" dir, a "characters" dir etc.
11:42:02FromDiscord<Phil> sent a long message, see https://pasty.ee/IfXrdQxQTCQE
11:50:04FromDiscord<Robyn [She/Her]> In reply to @Elegantbeef "https://play.nim-lang.org/#pasty=oChLUtxExAyw yep y": I am yet again confused why this isn't working https://play.nim-lang.org/#pasty=orHpVKlmvdoQ
11:54:34FromDiscord<Robyn [She/Her]> Oh wait
11:55:13FromDiscord<Robyn [She/Her]> Yep fixed that
11:55:25FromDiscord<odexine> I don’t even know where to start to help
11:55:28FromDiscord<Robyn [She/Her]> Needed to make the bytes converted to int32s
11:55:54FromDiscord<odexine> Maybe next time minimise the code? It’s really difficult to help you when we have to figure out 17 different things before we can even start
11:56:17FromDiscord<Robyn [She/Her]> That's fair, I'll keep that in mind-
11:57:02FromDiscord<odexine> Maybe add more comments explaining why you’re doing things
11:58:51FromDiscord<norax.2> my god im setting up a vscodium(vistual studio code but opensource) and a github project and it is so cleeaaan https://media.discordapp.net/attachments/371759389889003532/1203308617810575370/image.png?ex=65d09f7a&is=65be2a7a&hm=adc7589a76934cc045f0f22e7ae748cfb3240cd146993b183679723137b06716&
11:58:57FromDiscord<norax.2> and easy
11:59:02FromDiscord<norax.2> i just press commit
11:59:05FromDiscord<Robyn [She/Her]> In reply to @odexine "Maybe add more comments": Yk that's actually a good idea
12:00:16FromDiscord<odexine> And also tell us more about your problem and what’s expected, etc
12:32:34FromDiscord<Robyn [She/Her]> That's why I had an assert statement at the end, but I will be more descriptive-
12:48:17*khazakar quit (Quit: Connection closed for inactivity)
12:55:31FromDiscord<odexine> In reply to @chronos.vitaqua "That's why I had": Well I understand that, yes, that was sufficient to tell us what was expected, but any ideas or hints as to why you think what’s happening is happening would also be appreciated
12:59:33FromDiscord<Robyn [She/Her]> Fair
13:01:05FromDiscord<odexine> :ChiguPien: I’m not scolding you
13:01:15FromDiscord<odexine> I just realised it looked like I was :ChiguPien: :ChiguPien: :ChiguPien:
13:02:16*jmdaemon quit (Ping timeout: 268 seconds)
13:02:30FromDiscord<Robyn [She/Her]> Pffff you're fine xD
13:02:50FromDiscord<Robyn [She/Her]> I didn't interpret it as scolding, it was constructive criticism in how I could get better feedback
13:04:08FromDiscord<Robyn [She/Her]> Hm... Is it worth publishing the Modified UTF-8 code as a library once I make sure it passes all the tests?
13:07:01FromDiscord<nnsee> wait what are you doing exactly
13:09:40*krux02 joined #nim
13:09:53FromDiscord<Robyn [She/Her]> In reply to @nnsee "wait what are you": Java uses Modified UTF-8 for encoding and decoding, and NBT strings (and other strings sent over by the network for that matter), are Modified UTF-8, so I wanna convert that to Standard UTF-8 (when parsing it on the Nim side) and back (when dumping it)
13:10:16FromDiscord<Robyn [She/Her]> And there's probably other usecases for MUTF-8 so
13:14:03FromDiscord<nnsee> oh yeah, right
13:14:14FromDiscord<nnsee> why _wouldn't_ it be worth publishing it?
13:14:27FromDiscord<Robyn [She/Her]> In reply to @nnsee "why _wouldn't_ it be": Can't think of any reasons for that tbf
13:18:10FromDiscord<Robyn [She/Her]> What's the lowest Nim version this should support hm...
13:19:03FromDiscord<nnsee> i generally go for 1.6
13:19:13FromDiscord<Robyn [She/Her]> Alright!
13:30:28FromDiscord<Robyn [She/Her]> https://paste.ecorous.org/otiqirehum.yaml If I understand correctly... This means it'll test every specified backend with every specified Nim version with every specified OS?
13:37:20FromDiscord<Robyn [She/Her]> Worked as expected~
13:40:00FromDiscord<ebahi> hello, ive been trying out nimble tests and was wondering if it was normal that in my nimble project file i've set a binDir yet when i compile my tests it doesn't get compiled in bin?
13:40:08FromDiscord<ebahi> is this intentional?
13:47:50FromDiscord<Robyn [She/Her]> https://github.com/Yu-Vitaqua-fer-Chronos/MUTF-8 @nnsee :) now I can go back to ~~suffering~~ working on the NBT encoder and decoder
13:48:09FromDiscord<nnsee> nice
13:48:22FromDiscord<Robyn [She/Her]> Windows takes forever for it's tests, for some reason
13:49:34FromDiscord<nnsee> it's probably running defender on every source file trying to find viruses
13:49:57FromDiscord<Robyn [She/Her]> Oh huh, fun then :p
13:51:12FromDiscord<nnsee> i was semi-joking
13:51:21FromDiscord<nnsee> but i wouldn't be surprised if i was right
15:00:02*azimut quit (Ping timeout: 255 seconds)
15:00:29FromDiscord<Robyn [She/Her]> XR↵(@nnsee)
15:00:36FromDiscord<Robyn [She/Her]> XD
15:00:47FromDiscord<Robyn [She/Her]> Taking a break for a while since it's a nice day out
15:09:09FromDiscord<Phil> In reply to @Robyn "Taking a break for": I envy you, only gray weather with drizzle for me
15:34:01FromDiscord<nnsee> someone pinged me here but deleted their message?
15:43:45FromDiscord<Robyn [She/Her]> Huh, I didn't see that
16:07:49FromDiscord<whisperecean> @Phil Looks like i will need another conversion procs for timestamptz
16:09:06FromDiscord<Robyn [She/Her]> In reply to @whisperecean "<@180601887916163073> Looks like": What are ya doing? Do ya have a problem or?
16:09:19FromDiscord<whisperecean> I am trying to work with Postgres.
16:09:50FromDiscord<Robyn [She/Her]> Ah with Norm?
16:09:53FromDiscord<whisperecean> Yes
16:10:02FromDiscord<Robyn [She/Her]> That's definitely in Phil's alley then
16:10:59FromDiscord<whisperecean> Actually I dont know...maybe I dont
16:12:19FromDiscord<whisperecean> https://github.com/moigagoo/norm/pull/23/files
16:12:25FromDiscord<whisperecean> But i dont see timestamptz there :/
16:20:36FromDiscord<whisperecean> This is odd...
16:24:49FromDiscord<whisperecean> I am getting a DbError on field created DateTime which is psql timestamptz
16:27:27FromDiscord<whisperecean> I think norm should already understand it but it cant because the psql is coming back as timestamptz and not timestamp? @Phil
16:48:31FromDiscord<Phil> I'm bouldering ATM, I'll try to look at it in 2h or so but no guarantees I'll be cognitive enough to do anything
16:48:40FromDiscord<Phil> I'm already only running on caffeine
16:51:56FromDiscord<Robyn [She/Her]> https://github.com/nim-lang/packages/pull/2802
16:59:50FromDiscord<Robyn [She/Her]> Is there some sort of standard that parsers follow in Nim?
17:10:46FromDiscord<Robyn [She/Her]> Hm... When should I use a Table vs a TableRef
17:12:54FromDiscord<griffith1deadly> In reply to @chronos.vitaqua "Hm... When should I": like another object/ref object?
17:13:21FromDiscord<Robyn [She/Her]> In reply to @griffith1deadly "like another object/ref object?": I don't understand what you mean
17:13:42FromDiscord<Robyn [She/Her]> `std/tables` has a `Table` which is an `object` and then a `TableRef` which is just `ref Table`
17:17:07FromDiscord<griffith1deadly> In reply to @chronos.vitaqua "I don't understand what": as beef said: > when you don't have multiple views into a single value, so you do not need to use a `ref`
17:35:01*azimut joined #nim
17:44:28FromDiscord<Robyn [She/Her]> In reply to @griffith1deadly "as beef said: >": Hm... A table is probably better here then
19:22:05FromDiscord<Phil> Yeah I'm not capable of being more than a vegetable for the rest of the day
19:22:38FromDiscord<Phil> Not sure how I did it but I pretty much exactly hit my energy limit. Caffeeine crash + Workout end are absolutely killing me
19:39:47FromDiscord<Robyn [She/Her]> God I am hating this so much rn]
20:01:06FromDiscord<jviega> Hating what?
20:06:35FromDiscord<Robyn [She/Her]> In reply to @jviega "Hating what?": Trying to write an NBT parser from scratch
20:07:59FromDiscord<Robyn [She/Her]> Writing my own parser for 2 reasons:↵- I can be familiar with the codebase and update it as the NBT format changes (for example, 1.20.2 NBT data sent from a network has no named tags)↵- It gives me experience in writing a parser for binary data formats in general
20:09:43FromDiscord<saint.___.> In reply to @chronos.vitaqua "Trying to write an": Are you using a PEG
20:09:45FromDiscord<Robyn [She/Her]> It's just so painful
20:09:53FromDiscord<Robyn [She/Her]> In reply to @saint.___. "Are you using a": Nope, handwritten
20:10:03FromDiscord<saint.___.> Nice
20:10:14FromDiscord<saint.___.> In reply to @isofruit "Not sure how I": Have u ever thought about quitting caffeine
20:11:01FromDiscord<Phil> Given that my rate of consuming caffeeine is like... once every 3 months I doubt I could drink that much less caffeine
20:11:23FromDiscord<Phil> The crash is because I was already dead tired and thus pumped myself with an espresso before bouldering
20:11:24FromDiscord<saint.___.> Ooh gotcha
20:11:47FromDiscord<Phil> Which works to a degree, though required another espresso halfway through
20:12:54FromDiscord<Robyn [She/Her]> In reply to @saint.___. "Nice": Not nice when I can't figure it out 😭
20:52:17FromDiscord<srabb> is there a way to play sound via the nim command line using some magic library?
20:55:28FromDiscord<srabb> also how do i go to #gamedev on matrix \:(
20:57:18FromDiscord<leorize> #gamedev \<- that's how
20:57:36FromDiscord<leorize> all rooms can be found under [#nim\:envs.net](https://matrix.to/#/#nim:envs.net) space
20:58:17FromDiscord<srabb> thanks \:D
21:33:28*Zevv joined #nim
21:33:35ZevvPMunch around?
21:44:46FromDiscord<demotomohiro> In reply to @srabb "is there a way": `writeFile("/dev/audio", pcmdata)`
21:45:16FromDiscord<Robyn [She/Her]> In reply to @demotomohiro "`writeFile("/dev/audio", pcmdata)`": That's not portable
21:45:16FromDiscord<demotomohiro> I have never tried it though.
21:45:39FromDiscord<Robyn [She/Her]> Many Linux OSes don't even have /dev/audio
21:46:01FromDiscord<Robyn [She/Her]> I don't, I was looking into it when I wanted to do some fuckery with brainfuck :p
21:46:43FromDiscord<␀ Array 🇵🇸 🍉> the file doesnt need to exist to actually output audio↵(@Robyn [She/Her])
21:46:56FromDiscord<␀ Array 🇵🇸 🍉> the file doesnt need to exist to actually output audio using it
21:48:07FromDiscord<demotomohiro> In reply to @srabb "is there a way": I used this library before to play audio: https://github.com/treeform/openal
21:48:31FromDiscord<Robyn [She/Her]> In reply to @␀ Array 🇵🇸 🍉 "the file doesnt need": It does, the device needs to exist
21:48:34FromDiscord<Robyn [She/Her]> And it doesn't :P
21:48:41FromDiscord<Robyn [She/Her]> Just says permission denied
21:48:54FromDiscord<␀ Array 🇵🇸 🍉> it doesnt ive done this on arch↵(@Robyn [She/Her])
21:49:05FromDiscord<Robyn [She/Her]> I'm on Arch
21:49:11FromDiscord<␀ Array 🇵🇸 🍉> what
21:49:35FromDiscord<Robyn [She/Her]> sent a code paste, see https://play.nim-lang.org/#pasty=VJslXiWAVEju
21:49:45FromDiscord<␀ Array 🇵🇸 🍉> i legit remember doing `cat /dev/urandom | /dev/audio`
21:50:39FromDiscord<Elegantbeef> > Support from /dev/audio was removed in Linux kernel version 4.15
21:50:46FromDiscord<Elegantbeef> Atleast if a SO answer is to be believed
21:51:32FromDiscord<␀ Array 🇵🇸 🍉> i was running kernel v6
21:51:33FromDiscord<␀ Array 🇵🇸 🍉> ima have to try again whenever i get home
21:51:34FromDiscord<Elegantbeef> image.png https://media.discordapp.net/attachments/371759389889003532/1203457782528081971/image.png?ex=65d12a66&is=65beb566&hm=9c4a3498b6fbe7c7b1252e6d182100abb0ca1466955068068617e0dd81d07dfb&
21:51:35FromDiscord<Elegantbeef> Thanks Nim docgen
21:51:39FromDiscord<Robyn [She/Her]> In reply to @␀ Array 🇵🇸 🍉 "i legit remember doing": That means that `/dev/audio` was a device that you could use :P
21:51:45FromDiscord<Robyn [She/Her]> In reply to @␀ Array 🇵🇸 🍉 "ima have to try": Fair
21:52:00FromDiscord<␀ Array 🇵🇸 🍉> are you usinf pipewire?↵(@Robyn [She/Her])
21:52:19FromDiscord<Robyn [She/Her]> Don't believe so
21:52:28FromDiscord<␀ Array 🇵🇸 🍉> i think i have pipewire and the pulseaudio thing for it
21:52:36FromDiscord<␀ Array 🇵🇸 🍉> thats probably why↵(@Robyn [She/Her])
21:52:40FromDiscord<Robyn [She/Her]> Think I'm using alsa?
21:52:44FromDiscord<Robyn [She/Her]> In reply to @␀ Array 🇵🇸 🍉 "thats probably why (<@524288464422830095>)": h
21:52:45FromDiscord<Robyn [She/Her]> Ah
21:52:59FromDiscord<Elegantbeef> Jesus using alsa whilst pipewire exists
21:55:03FromDiscord<Robyn [She/Her]> sent a code paste, see https://play.nim-lang.org/#pasty=YzRvjMwjDrrC
21:55:04FromDiscord<Robyn [She/Her]> soooo
21:55:47FromDiscord<Elegantbeef> Do you not have that lib installed?
21:56:46FromDiscord<Robyn [She/Her]> Probably not
21:57:04FromDiscord<␀ Array 🇵🇸 🍉> `pacman -S libpipewire`↵(@Robyn [She/Her])
21:58:11FromDiscord<Robyn [She/Her]> Now what do I do? :p
21:58:38FromDiscord<␀ Array 🇵🇸 🍉> uh i don't remember lol i made to switch from pulseaudio to pipewire a long time ago
21:58:43FromDiscord<␀ Array 🇵🇸 🍉> just read the arch wiki
21:59:22FromDiscord<␀ Array 🇵🇸 🍉> i remember it being pretty trivial tho
21:59:56FromDiscord<Robyn [She/Her]> Fair enough xD
22:00:01FromDiscord<Robyn [She/Her]> I'll do that tomorrow probably
23:20:27*advesperacit quit ()
23:20:33FromDiscord<srabb> is there a way to run seperate lines of nim code at a certain bpm
23:21:02FromDiscord<Elegantbeef> Threads or async are your choices
23:21:33FromDiscord<srabb> my gratitude upon thee
23:21:59FromDiscord<Elegantbeef> Though "certain bpm" is an odd statement
23:22:23FromDiscord<srabb> like running something at 120 bpm to sync it with music
23:22:39FromDiscord<Elegantbeef> Music visualiser?
23:22:47FromDiscord<srabb> no no no lol
23:24:02FromDiscord<srabb> my goal is to have a program that prints 2 different phrases in a loop and it does that at a certain bpm
23:24:10FromDiscord<srabb> its not hard to explain, im just stupid
23:24:52FromDiscord<Elegantbeef> Well two futures running inside of a while loop with a `sleepAsync` can achieve that
23:26:24*krux02 quit (Remote host closed the connection)
23:39:34FromDiscord<srabb> thank