gchristensen changed the topic of #nixos-chat to: NixOS but much less topical || https://logs.nix.samueldr.com/nixos-chat
evanjs has quit [Quit: ZNC 1.7.4 - https://znc.in]
evanjs has joined #nixos-chat
<savanni> happy dance!!! With secure boot turned off, my machine installed just fine. With kernel 5.3.7 and no extra kernel options, ACPI works! I can suspend and resume the machine!!!
<savanni> I'll have to post my configuration file in a gist as soon as I have X working.
<infinisil> ar: Aw yeah I got a converter working in Nix :P
<infinisil> For all unicode
<infinisil> Well except the null byte, but that's not a valid SSID anyways
<pie_> extremely garbage wip searx nix meta search https://i.imgur.com/8niJeGe.png
<infinisil> Noice!
<clever> infinisil: i remember when my wifi driver had a bug, and would drop the last byte of the ssid
<clever> infinisil: so i had to intentionally pad it out, so it would get the right ssid after loosing a byte, lol
<infinisil> Nice and whacky
<clever> that kind of bug is easy to work around when doing things manually
<clever> but will wreak havoc on any UI
<infinisil> Now I'm wondering whether I should put this string -> byte converter into nixpkgs
<infinisil> Because the implementation needs a file of all bytes from 1 to 255, which is a bit nasty
<infinisil> But the only way without changing Nix
<clever> oh, and something is wrong with my wifi, ever since i got home
drakonis_ has joined #nixos-chat
<clever> 64 bytes from system76.localnet (192.168.2.32): icmp_seq=1 ttl=64 time=1111 ms
<clever> 64 bytes from system76.localnet (192.168.2.32): icmp_seq=5 ttl=64 time=2110 ms
<clever> 64 bytes from system76.localnet (192.168.2.32): icmp_seq=7 ttl=64 time=40.1 ms
<clever> 10 packets transmitted, 7 received, 30% packet loss, time 9255ms
<clever> infinisil: what the heck is up with my wifi?
<joepie91> that looks like radio interference
<joepie91> hvae you tried moving it to a different channel?
<joepie91> (on the router)
<clever> Link Quality=56/70 Signal level=-54 dBm
<clever> Bit Rate=54 Mb/s Tx-Power=22 dBm
<clever> Tx excessive retries:5 Invalid misc:1338679 Missed beacon:0
<clever> joepie91: hmmm, yeah, its pinned to channel 5 right now...
<joepie91> clever: does your router show you an interference/congestion graph for channels?
<clever> i have an android app that will
<joepie91> that works too :)
<clever> i dont see much on channel 1
<joepie91> also I should sleep...
<clever> The device is restarting...
<joepie91> huh. usually channel 1 is congested out the wazoo
<clever> silly router, restarting is for windows, lol
<joepie91> because a ton of shitty cheap routers default-pin to 1
<clever> i only see 4 networks in the 2.4ghz band
<clever> and the instant i say that, a 5th appears on 1, lol
<joepie91> lol
<joepie91> oh also
<clever> the rest are on 7? 9 and 11?
<joepie91> an SSID I ran across while travelling today
<joepie91> "Bill Wi the Science Fi"
<clever> the one on 9 also appears to be rather fat
<clever> and covers the same range that the 7 and 11 cover seperately
<clever> no change with it set to channel 1
<joepie91> hm dunno then
<joepie91> I'm going to bed though :P
<joepie91> falling asleep
drakonis has joined #nixos-chat
drakonis_ has quit [Ping timeout: 250 seconds]
<jackdk> I have also seen "Pretty fly for a Wi-Fi"
xd1le has joined #nixos-chat
drakonis1 has joined #nixos-chat
<ashkitten> augh, questionable content's rss feed did the thing again where it doesnt have any comics for a while and then it just lumps a bunch into one post
<savanni> @ashkitten: Oh, I thought I was the only one that was happening to...
<ashkitten> yup
endformationage has quit [Ping timeout: 276 seconds]
drakonis1 has quit [Quit: WeeChat 2.6]
<ar> clever: your device doesn't have 5GHz wifi?
<ar> infinisil: i'm confused. for some networks iwd needs this funky configuration file name, for some it needs the plan-ssid.psk
<ar> hm. iwd manpages are even less useful than some of the gnu manpages saying that "useful manual is in the info pages"
<ar> how did they achieve that? their man pages don't even have links to a useful documentation
<ar> ah, the logic for whether to use hexstring or not is: for (c = ssid; *c; c++) if (!isalnum(*c) && !strchr("-_ ", *c)) break;
chreekat has joined #nixos-chat
<ar> also interesting, despite setting dns_resolve_method=resolvconf, iwd still tries to call resolved over dbus
<ar> src/resolve.c:resolve_resolvconf_init() Trying to find resolvconf in $PATH
<ar> src/resolve.c:resolve_resolvconf_init() resolvconf found as: /run/current-system/sw/bin/resolvconf
<ar> oh, great, it works if i start the thing manually with --debug, but not when started as a systemd unit
adamt has quit [Quit: Connection closed for inactivity]
<ashkitten> i was asked to implement something like windows' libraries on linux using fuse, and i'm a bit torn
<ashkitten> i wish i could wait a few months and use the upcoming version of the fuse crate with more idiomatic stuff like futures and such
<ashkitten> i guess i'll just suck it up and rewrite it later whenever that happens
<ashkitten> (basically this would work similarly to an overlay filesystem with a key difference: edited files are always modified in their original location)
<ashkitten> wonder how windows deals with name collisions
<ashkitten> hmmmmm
<ashkitten> really, i should just implement this as symlinks to the original files
<ashkitten> that would be closer to the windows implementation
<ashkitten> the thing is, afaik windows doesn't actually implement it at the filesystem level, rather at the ui level
<ashkitten> so then libraries aren't actually addressable outside of explorer, and they don't need to do any name collision resolution because they can differentiate within the ui
<ar> >windows' libraries
<ar> you mean like Music, Pictures, Documents, and so?
<ashkitten> yeah
<ashkitten> they're collections of the contents of multiple directories
<ar> hm. systemd.services.iwd.path = [ pkgs.openresolv ]; didn't fix the above; now i get "iwd[1658]: Cannot write to /run/resolvconf/lock" "iwd[1658]: resolve: /nix/store/0sh5b0jf27znkpy9wrzna3yyq4yd78x7-openresolv-3.9.2/bin/resolvconf exited with status (256)."
<ar> which is interesting, because iwd is ran as root
<ar> ah, because /run is ro for iwd process
__monty__ has joined #nixos-chat
<sphalerite> hm, I want to configure samba to only allow access from my LAN. For ipv4 this is simple enough — hosts allow = 192.168.2.0/24 — but I want to allow IPv6 as well, and I have a dynamically allocated (=> changing) IPv6 prefix over time… Any ideas?
<__monty__> Isn't that what the fixed by mac-address link local IPv6's are for?
<sphalerite> I don't have a way to ensure that it's only ever accessed via link-local addresses though
<sphalerite> clients may use their global addresses too
<ar> that appears to work: http://dpaste.com/3VNN2BD.txt
<eyJhb> Anyone can recommend some good TED Talks while working?
<__monty__> eyJhb: NixCon presentations, Strange Loop, Fosdem, other conferences : >
<ar> c3 talks too
<eyJhb> Where is the Mobile nixcon talk?
<eyJhb> :(
adamt has joined #nixos-chat
<eyJhb> Whooo
* eyJhb wants OnePlus One support :p
<adisbladis> eyJhb: Just do it :)
<adisbladis> Porting is actually not _that_ hard
<adisbladis> Of course depending on your hardware
<eyJhb> Yeah, but I am considering if you could make some "NixOS" like, but just Android. E.g. declaring settings, apps, etc. adn using a recovery menu to switch between versions
<eyJhb> That would be cool as well
<adisbladis> eyJhb: Have you seen nix-on-droid?
<adisbladis> Not quite what you want, I know
<eyJhb> gchristensen: what is this script? - https://youtu.be/DK_iLg2Ekwk?t=929
<eyJhb> adisbladis: yeah! I will look more into it, but yeah, not quite what I want
<adisbladis> eyJhb: Right now it's the best you can get on your phone
<eyJhb> My current approach with my phone is KISS, but it is quite hard.. But it does two completely different things
<eyJhb> E.g. The use/thing I am looking for, would e.g. also be the ability to specify launcher+settings
<eyJhb> Is that nix-on-droid?
<eyJhb> Yay
<adisbladis> Also look at the beatuy on the right ;)
<adisbladis> beauty*
<eyJhb> adisbladis: Alexander? Or what? :p
<adisbladis> eyJhb: No :P That's me introducing him
<eyJhb> ;) Boytoy adisbladis :p
<eyJhb> You have the Swedish look down :p
<eyJhb> adisbladis: you somewhat remind me of a friend from CPH :D
xd1le has quit [Quit: leaving]
<gchristensen> hetzner server auctions are wow
<eyJhb> gchristensen: what is your dirty Git script? :D - And looking for a serer?
<gchristensen> dirty git script?
<gchristensen> yeah
<eyJhb> > gchristensen: what is this script? - https://youtu.be/DK_iLg2Ekwk?t=929
<{^_^}> error: syntax error, unexpected '-', expecting ID or OR_KW or DOLLAR_CURLY or '"', at (string):269:36
<eyJhb> I have used it before, I loved it... Cheap and powerfull servers{!
<gchristensen> oh the one that warns about dirty repos?
AluisioASG has joined #nixos-chat
<eyJhb> Yeah :D
<eyJhb> Seems useful
<gchristensen> it is in my nixos-config repo under packages
<gchristensen> did-graham-commit-his-repos/
<eyJhb> Does it check /?
<eyJhb> I think I have sooo much uncomitted stuff
<eyJhb> Might set it up at some points, seems nice
<gchristensen> it isn't very useful
<gchristensen> I'm very good about ignoring it
<__monty__> I can imagine. Though I always regret not committing when it's fresh in memory.
<eyJhb> If you do not commit within 30 minutes, it should just start playing Friday with Rebecca Black or whatever she is called
<eyJhb> Sounds like you need motivation!
<infinisil> eyJhb: Not a Ted talk, but about as good: https://www.youtube.com/watch?v=aO0TUI9r-So
<infinisil> Whoops, I was scrolled up
<clever> ar: every single time i tried to upgrade to a N band router, bad things have happened :P
<clever> ar: the first one, did ipv6 route advertisement, even with ipv6 disabled, so it null-routed all v6 traffic
<ar> clever: i don't remember how long ago i upgraded *from* N-band router
<clever> ar: the latest one, wont allow traffic from wifi->wired, so the wifi is basically useless
<eyJhb> infinisil: turned togames done quick :p
<ar> but i stopped using my accesspoints as routers sometime before that
<clever> and of course, no option exists to disable that security
<clever> ar: i need to just buy a proper access point, and stop abusing routers as AP's
<clever> i'm just puzzled by the sudden and extreme dip in performance
<ar> that reminds me i should replace my edgerouter-lite with a nixos box
<clever> i also started testing hostapd on my nas, as an ap, lol
<clever> i set it up, confirmed it works, then never tested it
drakonis1 has joined #nixos-chat
<gchristensen> andi-: if I may suggest, swapping the } and { eys
<__monty__> gchristensen: Is this a ploy to sew the seeds of mass confusion among nix contributors?
<ar> /39/46
<gchristensen> no
<gchristensen> on his keyboard, pressing the top left button inputs a ], and the top right bottun inputs a [
<__monty__> I can see how that can be confusing.
<ar> what keyboard is that?
<__monty__> Another kinesis advantage probably?
<gchristensen> yeah
<etu> Oh, it's donate to nixos day
<etu> :)
<__monty__> Where do I send my kidney cooler?
<adisbladis> __monty__: I know a guy
psyanticy has joined #nixos-chat
<eyJhb> The swedish mafia.
<eyJhb> It is always nice getting a contract, where you explicit are hired to work on your opensource project and have agreed that they will not own the code at all, etc. and then there is a "we own everything you work on in work hours" thing in the contract
<eyJhb> God damn it
<__monty__> Doesn't actually matter. They agreed to contribute it under a foss license. Not like they can take that back.
<adisbladis> eyJhb: Wouldn't one clause invalidate the other?
<adisbladis> Also it doesn't really matter who owns the copyright if the code is in the open anyway?
<eyJhb> I only have the spoken word on that... So that wouldn't make much sense to enforce
<__monty__> adisbladis: Not necessarily. The former might be talking about outside of working hours. Which isn't valid in an employment contract afaik? Might depend on labor laws.
<eyJhb> Not really, as 1 years of work would fall to them within a day and I could get fired right after
<__monty__> What do you mean?
<__monty__> Any code you've pushed to a foss repo is covered by its license.
<ar> speaking of fun clauses in contracts, doesn't google have a "we own everything you do while employed, incl. in your free time"?
<eyJhb> __monty__: regarding who holds the copyright to the software. I wouldn't want to have spent so much time and energy on it, and then just "give" it to them where I could potentially get fired
<eyJhb> I actually think this clause would try to take-over such a thing __monty__
<eyJhb> Sounds about right ar. Seems the same for Disney :p
<__monty__> eyJhb: What do you mean? They literally can't. There's no such thing as "unpublishing" contributions.
<__monty__> And copyright claims wouldn't hold up.
<eyJhb> __monty__: Google Translate `This applies whether or not these can be registered under the laws of patents, designs, copyrights, designs, trademarks or not.`
<eyJhb> But yeah, it doesn't specify existing things
<__monty__> That's super far-reaching and I can't believe it'd hold up if actually contested in a european court.
<eyJhb> Yup, it really is. That is why I do not like that being in my contract...
<eyJhb> Also they have some forced labor which I cannot deny in that contract under any circumstance
<eyJhb> Which is also weird :p
<__monty__> Which might work out to your advantage. Because I *think* if you can show that clause is not valid under labor laws, all other clauses are disregarded too, making the contract null and void and return *all* of the copyright to what you produced to you.
<__monty__> I'd hire a lawyer if I were you, seriously.
<eyJhb> The joys of uni! Lets find a professor which can guide me :D
<__monty__> Just go to a big law firm to have the contract checked and explained to you.
<__monty__> Uni profs might not be quite honest about uni contracts.
<eyJhb> It isn't a uni contract, it is a external private company
<FaeFly> I understand things like that can often be negotiated away (and yes, likely not enforceable in EU, but not a lawyer etc...)
<eyJhb> Also, as long as I don't talk to HR at uni, professors are really honest at not liking HR :p
<eyJhb> Yeah, I hope so at least. I have written to them and asked about it.. Actually one of the first contracts I have read, even though I have like signed 10+ now I think
<andi-> gchristensen: go ahead, I have backups :P
ddima has quit [Quit: Lost terminal]
drakonis1 has quit [Ping timeout: 245 seconds]
drakonis has quit [Ping timeout: 276 seconds]
drakonis has joined #nixos-chat
drakonis1 has joined #nixos-chat
endformationage has joined #nixos-chat
<kraem> ar: do you mind sharing what options you set for iwd to function properly? are you using it's builtin dhcp functionality?
<ar> kraem: yup; here are all the relevant options from my configuration.nix: http://dpaste.com/3VNN2BD.txt
<ar> kraem: well, userControlled.enable = true; is irrelevant
<kraem> ah does it need the systemd.services.iwd part for it to have access to openresolv?
<etu> Hmm, smartcards/gpg seems to be broken on latest unstable :/
<etu> Can't decrypt or sign anything
<etu> but gpg --card-status shows me the smartcard
<adisbladis> etu: Oh!
<adisbladis> I know this one!
<adisbladis> I hacked it locally when I didn't have an internet connection and forgot about it
<adisbladis> Something changed with how pinentry works, I'm still not sure about the exact root cause
<adisbladis> etu: My "fix" was to hack home-manager http://ix.io/20vo
<adisbladis> Not pretty at all :/
<etu> :(
<kraem> ar ^ :)
<adisbladis> I have no idea why gpg-agent suddenly started looking up pinentry relative to itself
<ar> kraem: yes, without "path = [ pkgs.openresolv ];" it won't find the resolvconf binary, and without serviceConfig = { ReadWritePaths … it won't be able to: acquire a lock at /run/resolvconf/lock; resolvconf won't be able to update resolv.conf
<kraem> thanks!
<jtojnar> We changed how pinentry works in https://github.com/NixOS/nixpkgs/pull/71095
<{^_^}> #71095 (by flokli, 2 weeks ago, merged): Split pinentry flavors and enable udisks2 on install media again
<adisbladis> jtojnar: Ahh :)
<adisbladis> I was offline when I had the issue, so I was debugging blindly :)
<adisbladis> jtojnar: That broke home-manager gpg-agent
<adisbladis> (and possibly more, but at least that)
<jtojnar> https://github.com/NixOS/nixpkgs/pull/72391 might be needed for some systems
<{^_^}> #72391 (by urkud, 17 hours ago, merged): nixos/gnupg: add dbus dependencies for gnome3 pinentry
<flokli> IIRC, we don't properly restart systemd user services, causing to basically two gpg-agents being started
<flokli> (while switching to the new configuration)
<flokli> reboot fixed it for me ;-)
<etu> I just rebooted, still broken
<etu> I stopped pcscd, no help
<etu> I don't have any settings regarding gpg-agent enabled
<etu> (Not in home-manager or systemwide)
waleee-cl has joined #nixos-chat
drakonis has quit [Read error: Connection reset by peer]
<etu> But yeah, it's started regardless and I don't seem to find a service for it (--user service that is)
<flokli> try stracing a gpg -d $file, and see if gpg tries to spin up its own agent
drakonis1 has quit [Ping timeout: 245 seconds]
<flokli> and while doing so, monitor the gpg-agent.service/.socket
<flokli> (by looking at status and journal)
<adisbladis> I think I'll just replicate the pinentryflavour setting in home-manager :)
<etu> I don't have a gpg-agent.service :)
drakonis has joined #nixos-chat
<adisbladis> etu: Then likely your agent is spun up on first use
<etu> yeah it is
<adisbladis> jtojnar: Thanks for pointing me in the right direction :)
<etu> Never been a problem before
drakonis_ has joined #nixos-chat
drakonis1 has joined #nixos-chat
<flokli> programs.gnupg.agent.enable defaults to false. if set to true, it creates a gpg-agent.socket and .service user unit
<flokli> so basically anything probing the file socket should spin up that gpg-agent
<adisbladis> I really need to stop using gpg-agent...
<adisbladis> It's really not hard to make something infinitely better for ssh
drakonis has quit [Ping timeout: 264 seconds]
adamt has quit [Quit: Connection closed for inactivity]
<adisbladis> flokli: Looks nice, but not quite what I had in mind
<adisbladis> I was toying with this before, I'll dig out the code
<adisbladis> flokli: ^
<ar> heh, made my first PR.
<flokli> adisbladis, ar: nice :-)
<adisbladis> flokli: If I have trouble sleeping tonight that looks like something worth digging into ;)
<flokli> adisbladis: haha
<flokli> I'd rather spend my time with imagemagick, gitlab and opensmtpd :-D
<flokli> or maybe just some alcohol :-D
<adisbladis> flokli: You do you :)
<eyJhb> flokli: _alchohol_
* adisbladis prefers crypto :3
<eyJhb> adisbladis: you cannot drink crypto! You drink when you are doing crypto :D
<etu> eyJhb: I have a label printer right here
<etu> eyJhb: I can print a label that says crypto and put it on a bottle that contains alcohol
<flokli> etu: that's my spirit!
<flokli> btw, it's friday
<etu> indeed
<flokli> \o/
<adisbladis> flokli: Heh, spirit
<flokli> adisbladis: pun intended
<etu> I had half day today
<etu> It was amazing
<etu> In 2h I did more work than for 2 days before, because it was fewer people bugging me at the office.
<eyJhb> :( Had a long day at uni, and now I should start work...
<etu> oh well, about to head out for some evening plans
<etu> adisbladis: btw, if you go ahead and fix pinentry that would be great ;)
<adisbladis> etu: Not so sure I'll have time :/
<etu> (office space pun not intended)
<adisbladis> My sister is visiting
<etu> Well, I managed to start my gpg agent and sign what I wanted to sign
<etu> that's a start
<etu> But not happy about current state anyways
<samueldr> eyJhb, adisbladis, partially related to something you said earlier https://github.com/ajs124/NixDroid
<adisbladis> samueldr: Have you seen the crazy fork? https://github.com/danielfullmer/NixDroid
<adisbladis> (if it's good crazy or just crazy crazy is TBD)
<adisbladis> I'm leaning towards good crazy
<samueldr> not yet
<samueldr> 222 commits ahead 😨
<samueldr> microg, graphene
<samueldr> definitely something else :)
<adisbladis> I really want to try it.. But my Pixel is my daily driver :P
<samueldr> I'll try the more limited in scope thing with my xiaomi-lavender, especially since there is no upstream lineageos rom still
<drakonis1> today we finally reach 200k commits
<etu> adisbladis: oh wow
drakonis has joined #nixos-chat
drakonis1 has quit [Quit: WeeChat 2.6]
drakonis_ has quit [Ping timeout: 240 seconds]
drakonis has quit [Ping timeout: 264 seconds]
drakonis has joined #nixos-chat
<gchristensen> yay
drakonis_ has joined #nixos-chat
MichaelRaskin has joined #nixos-chat
<pie_> meanwhile
<pie_> <y> x: the other way round. debian/ubuntu/other distros with properly implemented CM feel like a poor substitute of nixos
<pie_> <x> maybe it's called mirageos
<pie_> <x> y: i want the operating system that nixos feels like the poor substitute for, where everything is just declarative to begin with
<pie_> <x> y: yes, I know. I'm saying that even NixOS is itself a hack, like you said of CM in general
<pie_> <x> because we don't have operating systems that just expose declarative objcap configuration and orchestration APIs in the first place
<waleee-cl> x do realize that there's a real thing called mirageos?
<gchristensen> objcap I agree with
<gchristensen> but I disagree that nixos is a hack, obviously :P
<ar> pie_: i'm here and i'm ok with being quoted here
<ar> pie_: the other person is here too
<MichaelRaskin> gchristensen: NixOS module system does give an impression of «now let's spend a ton of effort to emulate distributed shared-state imperative computing in a purely functional language»
<gchristensen> sure
<savanni> Hey, y'all. in case you are interested, I created a repository for my system-level NixOS configuration. Probably interesting to folks running Ryzen thinkpads.
<MichaelRaskin> I sincerely believe that the previous approach was _still_ less of a hack, for all of its drawbacks
<gchristensen> nice!
<ar> MichaelRaskin: which previous approach?
<MichaelRaskin> That huge configuration expression where each module read its part without any extra levels of magic
tilpner has quit [Quit: tilpner]
FaeFly is now known as FireFly
drakonis has quit [Quit: WeeChat 2.4]
drakonis has joined #nixos-chat
<eyJhb> Red wine and pizza + coding, what is not to like?
<eyJhb> Also curious, does anyone have a favorite meal they eat on fridays? Usually ran with Lasagna
<ar> sushi
<eyJhb> ar: homemade?
<ar> no, i'm too lazy for that
<eyJhb> Sounds like a nice thing for a friday! :D Treat yo' self!
lucus16 has joined #nixos-chat
<eyJhb> worldofpeace: btw. I have tried to get the flower thing going on a weekly basis for months now, and I keep forgetting not having the time :(
<eyJhb> Whooo, Nixpkgs just rounded the 200.000 commits!
<infinisil> \o/
psyanticy has quit [Quit: Connection closed for inactivity]
<eyJhb> Wondering if this works on Windows as well - https://github.com/phayes/freeport/blob/master/freeport.go#L8-L20
<andi-> has anyone seen / played with https://github.com/ebkalderon/nix-language-server yet?
drakonis_ has quit [Ping timeout: 245 seconds]
<infinisil> andi-: Seems like just a(nother) nix parser for now
<infinisil> I don't see any LSP functions implemented
<andi-> Yeah, I tried using it didn't get much/anything
drakonis_ has joined #nixos-chat
drakonis has quit [Ping timeout: 246 seconds]
drakonis has joined #nixos-chat
edef is now known as edef2
edef2 is now known as edef
<pie_> too lazy to read the rfc process, is there procedure for rolling back an rfc?
<gchristensen> pie_: sounds like you should read the RFC process then :)
<pie_> 'x)
<pie_> yes
__monty__ has quit [Quit: leaving]
<eyJhb> gchristensen: Waiting for something? :p
<gchristensen> me to get off my butt and do something simple
<gchristensen> also waiting for this server to magically fix itself
<gchristensen> (fix == currently it runs not-nixos, which is a p0 bug)
<eyJhb> Better get off your butt then and do the simple task ! ;) - Seems horrible!
<eyJhb> But I know that myself from waaay too many projects. Thinking about picking up my temp/humid sensor project again
xd1le has joined #nixos-chat
<joepie91> \o/
<joepie91> pie_: much-needed project :)
<pie_> could someone please do a sanity check and see if the above works for them?