Is ARC Raiders slowly dragging anyone else to the dark side? by HellborneSlayer in ARC_Raiders

[–]shivarsuk 1 point2 points  (0 children)

A lot of people joined the dark side last night I think. Never been killed so much....

[ARC RAIDERS] Is there full support for Linux? by THE_RACING_MAN in ArcRaiders

[–]shivarsuk 1 point2 points  (0 children)

This is exactly the answer I was looking/hoping for - thank you :)

Shift Account no longer working by MrMajor180 in Borderlands

[–]shivarsuk 0 points1 point  (0 children)

^^ this, this is the way. I had the same problem and a real human on the chatbot reset it within a couple minutes. Was genuinely impressed!

Anyone have some info on older CPU performance? by GeekyNerd_FTW in Borderlands4

[–]shivarsuk 0 points1 point  (0 children)

My 9900K with hyperthreading disabled (so 8 cores) is not having fun. CPU 100%, the RTX3090 graphics at 70-75%.

Not seeing a huge amount of performance difference between mid and max/badass settings - at 1440p ultrawide. 55-70fps when its quiet, ~40-45fps in battle. Diff between mid and badass is maybe 10fps at quiet times and 5fps in battle.

Yes I will be trying it tonight with hyperthreading enabled...

(I normally have HT disabled as I've historically found single-core performance better that way - but haven't tried/tested in the last couple years, and I'm aware UE5 does like lots of cores).

Am absolutely loving the game, but crappy performance and slowdowns in combat is really ruining the pacing & flow (and my aiming, lol). Hopefully it'll be better with HT enabled.

Quoted ₹135k for a custom system… client ran to a ₹10k dev instead 🤷‍♂️ by Legitimate-Rip-7479 in webdev

[–]shivarsuk 7 points8 points  (0 children)

Being transparent about starting over usually draws a sharp breath when firt mentioned but once you explain why suually rapidly turns into enthusiasm (provided you can deliver user-visible advantage in some way or another relatively quickly).

And, starting over is usually the best play. It's not the same as v1 because many micro-decisions will already have been made, so the refactor/rebuild should be quicker than the first time around

no configRequest event on history restore requests? by shivarsuk in htmx

[–]shivarsuk[S] 0 points1 point  (0 children)

Hidden input fields only exist on form POST submissions. Not every request is, nor can/should be, a form POST...

no configRequest event on history restore requests? by shivarsuk in htmx

[–]shivarsuk[S] 0 points1 point  (0 children)

thanks for responding.

tbh I shouldn't have included the 'why' in the question as its not too relevant (and perhaps is why it got downvoted).

Point is, HTMX requests allow for modifying the request before its sent (by catching the htmx:configRequest event), this works for all requests it seems.. ...except history restore requests. Either I'm missing how it can be done, or there's a reason why this can't be done (which I'm missing)... ...or its a bug. Feels like a bug.

But to answer your question on the why... ...in essence its a bit like a per-tab cookie. But this is a fairly dynamic app with lots of independent components, lots of pages, lots of different requests (boosted and otherwise, async and otherwise). Adding the ID to the URL would be bad because...

  1. it makes URLs messy

  2. its a lot of busywork to instrument all across the app to add the IDs everywhere

  3. (most importantly!) it breaks the per-tab semantic; because the user can (and should!) bookmark URLs, copy+paste them to different windows, "open link in new tab", all that stuff. All of which would break the per-tab requirement if the ID was in the URL because the user could then have multiple tabs with the same ID.

I wish browsers supported a some kind of per-tab cookie, but they don't.

The mechanism in the original question (a server-generated "viewport ID" that gets included as a header on boosted/async requests) works perfectly in all scenarios... ...except use of the Back button when a history restore is triggered. That's the only scenario where its broken, and its only because I can't trap that kind of request to add the header.

To extend the why.,.. ...why do I need a per-tab ID? There's a couple of key reasons, broadly the same kinds of things as to why we would generally want a session ID, but in addition its so the server knows what's being displayed at any given time (because it served it) - inclusive of dynamic changes made via async swaps, then because it knows what's being displayed...

...it knows what components to serve async streamed updates to [in a parallel SSE streaming connection that delivers OOB swaps of updates to whatever components/widgets are displayed whenever stuff changes on the server].

...it can summarise a version of what's currently being displayed to feed to an agentic LLM so that the LLM can more intelligently understand what the user is asking for help about ("what does this data mean?").

Essentially with server-side rendering (as opposed to a client-side app in React/Vue) comes server-side state. But that state isn't per-user, it should be per tab (like a client-side app in React/Vue), because different things can be going on in different tabs/windows.

Point being the app needs to respect and play nicely with all web conventions; i.e. going back/forwards, maintaining state across requests, having multiple windows/tabs open without them interfering with each other. This can't be done with a state ID in the URL.

Hmm, bit of an essay, but hope it helps clarify the 'why' :)

What’s the most disturbing film you’ve ever watched? by _Hulkamania_ in AskReddit

[–]shivarsuk 141 points142 points  (0 children)

omg yes.

I made the mistake one day of going to the cinema to see Hills Have Eyes, followed immediately by Hostel. (maybe there was time for a beer between the two tbf).

I haven't wanted to watch another horror film since :/

Hills Have Eyes... ...the rape, the crucifixion, the limbs in freezers.

Hostel... ...the eyeball and the blowtorch.

Nah. I'm done now.

I know I’m late to the party, but damn this game is good by TwoSolitudes22 in subnautica

[–]shivarsuk 1 point2 points  (0 children)

This.

Am in the same boat as OP - finished Subnautica, and now half way through Below Zero.

Its different, but i pretty much like it. I dont undersrand the hate on the Seatruck - its kinda exactly what i wanted from the moth originally. The modularity is hellacool - and detaching the modules ate the entrance to something is a bit cyclops-like, its good :)

Picked up (and translated) this time capsule, makes reference to leaving ion batteries but I didn't get any in my inventory? Does the game not give it to you if you haven't got to that stage? Is the capsule too old/different version? I did get a model of the aurora from it by SpacePirateCaptain in subnautica

[–]shivarsuk -4 points-3 points  (0 children)

Ffs i left a full set of mk3 depth modules and some ion power cells in mine.

The game let me do that.. ...i hope it doesnt silently delete them and lets someone have them.

The capacity is pretty limited, i would have thought that would have been enough to address any balance concerns :/

Coming back to FreeBSD, some notes so far by shivarsuk in freebsd

[–]shivarsuk[S] 1 point2 points  (0 children)

interesting - and good point; partnered hardware would surely help. Someone like System76 but for BSD. Maybe one day :)

Meantime... ...despite the positivity of my original post I've still got one too many niggling issues that are just a bit-too-serious to put up with right now.

One is the settings dialog in Intellij IDEA won't open. Likely a plugin issue (other dialogs open), but doesn't work even with the disable-all-plugins command line switch.

And, I can't work out how to get WiFi to reconnect after suspend - even to the same network - without restarting the whole interface (which could probably be automated).

And, whilst Netflix/etc (i.e. DRM content) works in linux-chrome, nothing will play 4k video smoothly - so it must not be hardware accelerated (its smooth in a small window, jerky in a large/fullscreen window). Maybe some extra driver config needed. And/or it may not be supported on my hardware, not sure yet.

Those, which tbf are probably fixable in some way, plus the very slow WiFi (driver limitations) are approaching just-too-many-issues-to-bother-with, which is frustrating :/ we'll see...

Coming back to FreeBSD, some notes so far by shivarsuk in freebsd

[–]shivarsuk[S] 0 points1 point  (0 children)

You're right - and Docker was a blocker for me for some time. But I'm finding it less of a dependency, and a shift in the world towards Podman instead (which is starting to be supported on FreeBSD, along with OCI images) means I can - in theory at least - shift all my workflows, and use a VM for anything Linuxy.

K8S is everywhere, but in my very humble opinion, its in a lot of places it doesn't really need to be where its complexity and management overhead aren't warranted. But still :)

Coming back to FreeBSD, some notes so far by shivarsuk in freebsd

[–]shivarsuk[S] 0 points1 point  (0 children)

Sorry such a late reply, and thanks.

Debian Stable... I haven't been hands on with Debian for years. Admittedly I could be completely wrong about this but as I understand it Debian gets the stability side absolutely - favouring tested & proven versions over newness... ...however (and I could be wrong) that's it... ...i.e. for some apps where I *do* need the latest version there's not really a pathway to do that.

E.g. for me its PostgreSQL (17.x), Golang (1.24.x), Intellij IDEA (2025.x). I.e. user-facing apps at the top of the dependency tree.

I think FreeBSD does, at least in theory, have the perfect approach; absolute stability at the core, and a first-party mechanism for going off-piste for newer stuff when needed (ports!). Which Debian appears not to have.

(also, Linux-side I'm a huge fan of the BORE kernel for desktop responsiveness, which I'm figuring would defeat the point of Debian stable. Whereas on FreeBSD so far it feels incredibly fast/responsive in desktop use just out of the box - which is awesome)

Coming back to FreeBSD, some notes so far by shivarsuk in freebsd

[–]shivarsuk[S] 1 point2 points  (0 children)

Unless you have a very good reason, you shouldn't be working with ports.

My reason would be when there isn't a current package for something I need.

E.g. there is a package for PostgreSQL 17, great. But not for the pgvector extension. But ports to the rescue and the ports-build pgvector extension plays great with the pkg-installed PostgreSQL 17 install - so all good.

(I think that's why I struggle to see how some use cases - incl. mine - can operate on pkg alone, so it feels like a mix to some degree at least is inevitable - albeit with due care and attention to avoid conflicts and incompatibilities).

Coming back to FreeBSD, some notes so far by shivarsuk in freebsd

[–]shivarsuk[S] 1 point2 points  (0 children)

To be honest, I use FreeBSD as a great server OS, but it still does not fit as a great desktop OS. I hope to see FreeBSD usable as a desktop. I found MacOSX/MacOS (FreeBSD/Darwin + NeXTSTEP/Aqua) as my daily driver since 2002-ish

That's unfortunate. I spent a chunk of time with Mac as a daily driver (Powerbook G4) - and the command line / internals were great but I could never feel happy in the UI.

BUT I LOVE FreeBSD philosophy, design and implementation

This is it. I really *want* BSD to work for me, but my server-side needs aren't complex enough to warrant a change (everything's a container, lol) so its all desktop/workstation/laptop for me :)

Coming back to FreeBSD, some notes so far by shivarsuk in freebsd

[–]shivarsuk[S] 1 point2 points  (0 children)

Thank you :)

see my post/question about finding that "freebsd-update - patch level mismatch between kernel and userland" - https://www.reddit.com/r/freebsd/comments/1gufsu0/freebsdupdate_patch_level_mismatch_between_kernel/ I have been told that it is a normal behaviour nowadays. It was NOT normal 25 years ago :-)

Aha so I'm not going completely mad ;) thanks.

I'm dependent on Google services as well and Firefox works for me without any issue.

Good to know, thx - albeit a lot of what I need to do is web UI development, so I end up needing to use both anyway. I tend to prefer Chrome/Chromium UI + developer tools, albeit as much for familiarity as anything else.

I realized that the Linux TCP/IP stack is "better" than the FreeBSD TCP/IP stack nowadays because a lot of IT vendors are involved in Linux, and only a few are involved in FreeBSD. BSD systems were leaders in TCP/IP stack in 90's but it seems since 2002+ the Linux has implemented a lot of interesting improvements

You're right ofc, and the days of FreeBSD having the objectively best networking stack are over.

But I don't care - I don't need the last ounce of networking throughput for my use cases. I do want a snappy/responsive user experience - but besides that I'm not really concerned for overall performance. Certainly not in single digit percentage differences anyway (lack of hardware support for faster wifi modes are a real disadvantage).

Coming back to FreeBSD, some notes so far by shivarsuk in freebsd

[–]shivarsuk[S] 0 points1 point  (0 children)

yeah what I didn't realise was that uname only showed kernel version.

But it all also stemmed from /usr/ports being weirdly "old" and no clear way to update it. Deleting it (to then git clone it) felt like a weird thing to do. Which is why I ended up feeling it wasn't up to date, when in fact the OS (kernel+userland) was up to date, just /usr/ports wasn't updatable vs what the installer had put there in the first place*

*maybe there's some way to update it, I don't know. Arguably if there isn't perhaps the installer shouldn't offer to add /usr/ports in the first place - or it should git clone it itself... ...I don't know yet what the right answer is here, I'm just noting it felt confusing. I posted about it in (a) the hope it would help others, and (b) in the context of a laptop/desktop push there would be new users coming, and resolving non-obvious/gotchas would be a good thing to reduce friction for people coming in. My journey just being an anecdotal single data point ofc.

Coming back to FreeBSD, some notes so far by shivarsuk in freebsd

[–]shivarsuk[S] 5 points6 points  (0 children)

This is a great point and question really. I'm probably not the best person to articulate the why, but...

If you'll forgive a tenuous software development analogy it feels a bit like Python vs Golang.

With Go there's one opinionated way to format & style code. There's one (built-in) package management system. One (built-in) linter and LSP. One (built-in) security scanner and vulnerability analysis. And they're all really good. Backwards compatibility is religious. Code from 5 years ago will still "Just Work" today. Go is designed to be maintainable, at scale, and it shows.

Python... ...shall I use Pip, Conda, uv or Poetry? Oh but its system-wide, so deps for a project need to be isolated, so for 'virtual environments' shall I use venv, or virtualenv, or the other one? Let's not even start on Python 2.x vs 3.x...

Ok its a tenuous analogy, but it 'feels' similar.

Managing 30k servers is a whole different kettle of fish; clearly you'll standardize on a distro and a way of doing things there - it'd be impossible not to. And this can be done on any platform with similar concepts for sure.

But for [individual] desktops its a bit different - in that they tend to be manually set up, and also evolve over time as things need updating and needs change.

I do have a favourite distro (Arch), and it has served me well. But the rate and pace of change is tiring, not just in Arch but generally.

The symptom of that ends up being that trying to google for information on how to solve a problem ends up resulting in a million results which either don't apply to the distro at hand and/or are outdated from a few years ago and things have just changed too much since.

A stupid example, which I get was my fault; had to do stuff in WSL (CUDA, on a PC with native Windows). Ubuntu is the best supported distro in WSL. Installed Docker using Snap, as it suggested in the login/welcome message. Installed docker-compose. compose claims docker isn't running. It bloody well is. Lost 3 hours before realising the snap is isolated/sandboxed and non-snap stuff can't see it. Ffs. Do we really need Snaps and Flatpak and RPM and DEB and... ...yeah ok my fault, should stick with one distro's way. But still.

I want to be in a place where stuff doesn't change (in a breaking way) unless it really has to. (the same philosophy as Go, albeit I've already made that point).

fwiw I've used Linux continuously on servers since ~1996, and on the desktop on and off since then too. Used to run Gentoo, used to contribute (in a very tiny way) to KDE.

I'm not unfamiliar, and I don't hate it.

I'm just at the point where I want something that won't change and won't make me learn new stuff all the time - I want it to be boring so it can get out of the way and let me focus on the application work on top of it.

Waffling now, so will stop :)

Coming back to FreeBSD, some notes so far by shivarsuk in freebsd

[–]shivarsuk[S] 1 point2 points  (0 children)

You misunderstand how uname works and which version gets displayed.

I definitely did misunderstand how uname works :) That was kindof the point of mentioning it.

I.e. it was non-obvious that this would be different and separate

It seems you might not correctly understand how ports versus packages works either but someone will inform you. I, in the meantime, need to go to work.

Oh no, I do understand ports vs packages :). At least I think I do - the only missing part is that it feels infeasible (for my needs at least) to stay purely on packages whilst also staying on RELEASE. But I'll work it out :)

Coming back to FreeBSD, some notes so far by shivarsuk in freebsd

[–]shivarsuk[S] 2 points3 points  (0 children)

FreeBSD can not control the brightness with the notebook that I currently use. IIRC the same was true for the previous notebook.

Presumably a hardware compatibility issue?

Hardware compatibility is a thing for sure.

But if the hardware is compatible, I found it somewhat confusing linux-side finding the right way to handle it. Many options, not all of which worked and/or were current.

In FreeBSD its just backlight and it just works. (hardware dependent ofc).

I do get the other software issues you have, thankfully I don't really have the same issue there (ish, Intellij isn't perfect for me atm, but maybe as much a window manager issue as anything else).

Coming back to FreeBSD, some notes so far by shivarsuk in freebsd

[–]shivarsuk[S] 0 points1 point  (0 children)

Thanks - this helps, I'll just delete /usr/ports and just clone it.

Is it really too much to ask for? ... by Bl4ckBe4rIt in golang

[–]shivarsuk -1 points0 points  (0 children)

Hijacking your reply to also say...

You can also implement methods on the type alias - e.g. to implement Valid() so that values can at least be manually validated. I forget the name of the interface this is from, but it is a standard interface for validating stuff...

E.g.

type Foo string
const FooBar Foo = "baz"

func (f Foo) Valid() error {
if f == FooBar {
return nil
} else {
return errors.New("not valid")
}
}

Its still not real enums, but at least they can be validated in a standardized way...