

It’s a crappy clickbait title, I don’t see why it shouldn’t get downvoted
It’s a crappy clickbait title, I don’t see why it shouldn’t get downvoted
I guess how much people care also depends on whether they tend to use laptops in ways and places that are prone to causing damage to the ports. I’ve never damaged any port on any laptop I’ve ever owned, and it’s unlikely I ever will because I like to keep the cables organized and out of the way (so it would require conscious effort to tug on them), and when I want to pick my laptop up, I always quickly run my hand around its perimeter to make sure everything is disconnected.
I do not claim that this is the correct way to use a laptop or that others should do the same, it is a tool that should be used the way its user needs, I just want to point out that for some usecases, this is simply a non-issue in the same way a non-replaceable CPU is - nothing’s going to happen to it.
Also, my current laptop does have both a barrel jack (probably works, I’ve never used it) and a USB-C charging connector, so it’s not necessarily an either-or proposition.
deleted by creator
Just to be clear, the applets were stuck while the laptop was plugged in? If so, then it might just be the threshold - connected, not charging, not discharging (because the laptop is running off the AC adapter).
For example on my IdeaPad laptop, when I enable the charge limiting feature it will get “stuck” at 59 or 60% while plugged in. It doesn’t have a configurable threshold. Although your laptop might provide a more fine-grained control given that you were able to fully discharge it while plugged in.
Hey, just a tiny note: static and dynamic addresses aren’t mutually exclusive. You can let SLAAC do its thing AND also set a static address on your server. Remember, IPv6 works best when you aren’t afraid of adding more addresses.
I agree, the fact that Meta considers 13 year olds being able to have romantic chats with chatbots to be perfectly fine is disturbing and IMHO the main newsworthy thing here.
However there is no mention of “200 pages of romantic interactions with minors” in the article - that is the whole chatbot guidelines document. Still, it including such things shows how shitty Meta is as a company.
OK, so the whole LLM chatbot arranging dates with people thing is obviously problematic, but this person simply tripped and fell, and the headline vaguely implies that the chatbot is responsible for his death. That seems a bit clickbaity - if it was a real person and they were actually waiting to meet at the agreed upon address, the outcome would be the same.
You can disable the USB printing module if you don’t use it - that’s the one causing this bug. It should be fixed in the next release.
Idk, it surprises me it took so long for TP-Link to get into trouble with how they tend to support every HW revision of their routers for about a year and then stop releasing any security updates for them. That’s awful for a device intended to sit at the edge of your network, possibly having a public IP address.
Like sure, you can look for any reasons you want, but not giving a fuck about security in a device that’s always connected to the internet and also routes all user traffic is bound to get companies in trouble when someone with the power to do something about it notices.
deleted by creator
Maybe htop? It’s pretty configurable and has decent bars for various resources.
Also if your reason for choosing pure TUI is just resource usage (and not the aesthetics of it / cool feeling / whatever else), then you could maybe look into running something like Sway or Xorg+i3 - those are very lightweight, well suited for single window usage, and open up a lot of possibilities for lightweight GUI apps.
The “correct” way to handle “static” addresses with dynamic prefix is using tokenized network interfaces (which is pretty much just the lower 64 bits of the IPv6 address). That will then be used for SLAAC in addition to the randomly generated address. The support for dynamic prefixes in firewalls on Linux and Mikrotik is however still pretty dire (obviously, as it’s not an enterprise feature). No clue about BSDs/pfSense
Virtual memory isn’t swap, it is a mechanism that allows the operating system to give processes a view of memory that is almost completely decoupled from real physical memory and other processes. For example some programs require their code and data to be placed at exact memory locations in order to work - virtual memory allows you to run as many of these programs as you wish, because one process’s address 0x1000 has nothing to do with another one’s 0x1000, unless they set it up as shared memory (but even the same chunk of shared memory might be mapped to different addresses in the processes that share it).
Swapping is a cool trick that you can do with virtual memory, though. Basically you store a piece of memory somewhere outside the physical memory, and then make the address invalid in virtual memory. When the process tries to access it, it will crash. The OS will be notified of the crash, see that it was due to the process trying to access swapped out memory, load the chunk back from disk (maybe to a different physical location), update the virtual memory to correctly point to this chunk, and restart the crashed process from the instruction that caused the crash. So from the point of view of the process, nothing went wrong at all, except that one instruction took a very long time to execute.
Also, isn’t it harmful to SSDs?
Swapping doesn’t do enough writes to matter, unless your system is running really low on RAM.
All right, I had some spare time today, so I went and installed this thing.
My setup is a bit more complex than the minimum necessary, but that’s because I’m using an already existing Postgres database instead of installing a new one on my computer. It is as follows: Postgres running on a mini PC on my local network (192.168.2.199:5432), a browser running on my main computer, and a Debian VM for DBgate with two NICs - one is the default NAT interface (I’m too lazy to configure proper bridging / routing) and the second is a virtual bridge, testbr
. On testbr
, the host OS is 192.168.123.1/24, and the guest is 192.168.123.2/24.
I installed DBgate on the VM using NPM - npm install -g dbgate-serve
, as specified in the documentation. Then I ran it using simply dbgate-serve
, then connected to it from a browser running on my host OS as http://192.168.123.2:3000/. That works fine.
Then I added my Postgres DB through the web interface (to be verbose, I entered 192.168.2.199 as the IP address), created a table and inserted some dummy data. Then I wanted to do the next step, which is to block outgoing connections to port 5432 from the VM, but I noticed something very strange, given that DBgate obviously doesn’t use the server as a backend to do the actual DB connection: this was in the server log
{"pid":7012,"caller":"databaseConnections","conid":"24d95082-ca6a-4dac-aa28-f3121bfc508d","database":"dbgate","sql":"INSERT INTO \"public\".\"dbgate_test\" (\"text\") VALUES ('haha');\nINSERT INTO \"public\".\"dbgate_test\" (\"text\") VALUES ('hehe');\n","level":30,"msg":"Processing script","time":1744395411096}
But it would be ridiculous to even suggest that the connection is relayed through the server, so it is probably some kind of telemetry. Makes sense.
Anyway, I went ahead and added the rules on the VM nft add table ip filter
, nft 'add chain ip filter output { type filter hook output priority 0; tcp dport 5432 drop; }'
, and you wouldn’t believe what happened next… The DBgate tab can no longer load data from the database. I can reload DBgate itself without any issues, and I can connect to the database from the same computer using psql and DataGrip just fine, but for some reason it seems to be affected by the fact that its server (which is only serving the HTML/JS files and doing nothing else, as you said) cannot connect to Postgres.
Weird how that works, huh?
Node.js is a web server. It doesn’t run in a browser, therefore doesn’t deal with the browser sandbox. That should answer your first dig.
For the second part, WebRTC is a standard that allows two WebRTC peers to communicate. You can’t use WebRTC to open an arbitrary TCP or UDP stream to for example a database, unless said database decides to implement a WebRTC peer support.
If you’re unfamiliar with all of this, that’s your job to get educated. This is how browser-based JS software works.
The browser version cannot connect to Postgres without a server-side part, for rather obvious reasons - you can’t just make arbitrary network connections from the browser. Electron build is of course different, as that doesn’t have to deal with the browser sandbox.
By the way, here’s a similar issue documented in Outerbase’s repo:
Outerbase Studio Desktop is a lightweight Electron wrapper for the Outerbase Studio web version. It enables support for drivers that aren’t feasible in a browser environment, such as MySQL and PostgreSQL.
Not gonna lie, telling people how they need to get educated on stuff you don’t understand ticks me off.
xfwm is XFCE’s window manager, and it’s eating almost 30% of the total system memory, so that’s the prime suspect (I’m not exactly sure how much it interacts with other apps, so it’s possible something else is forcing xfwm to use all that memory, but that is IMHO unlikely).
An ugly “fix” is to log out and log back in (yes, not much better than just rebooting), or you could try to somehow restart xfwm - running xfvm --replace
in terminal might work.
Edit: there’s an issue on the Manjaro forums that might be related: https://forum.manjaro.org/t/xfwm4-memory-leak-since-4-20/173910/7
That was my deleted comment, but then I realized the article specifies they are Rome CPUs (Zen 2), while the 4000 series of EPYCs is based on Zen 4
deleted by creator
Wayland does force clients to be able to cope with a compositor that doesn’t do SSD - CSD support is mandatory, SSD optional.