726 karma · joined October 20, 2020
https://ark.intel.com/content/www/us/en/ark/products/75203/i...
But I can copy statically linked binaries from my main Linux machine, and they work. (Dynamically linked typically don't because Android userspace is so different from "proper" Linux.)
$ time ./pwsh -NoProfile -NoLogo <<<'' >/dev/null
real 0m0.456s
user 0m0.388s
sys 0m0.040s
Much better, but I still wouldn't use this even as an interactive shell, as I open a few hundred terminal windows each day.There's no defender (or anything similar) on that other machine. It also has an SSD. With an older HDD powershell started in about 10-15 seconds there (while cold startup time for bash was something like a second, and instantly afterwards).
The shell was running from tmpfs (so basically a RAM disk). I have a decent processor and an NVMe SSD, and this is what I see (it was tested 10 times in a row to pull everything into the page cache properly, and the numbers are pretty stable):
$ time ./pwsh <<<"" >/dev/null
real 0m1.050s
user 0m1.464s
sys 0m0.067s
More than a second to execute an empty 'script', and even longer to get to the interactive prompt (which is harder to time properly so I'm not publishing any numbers).It's even slower on an older Windows laptop which I have lying around (starts in about 3-4 seconds). Absolutely terrible for an interactive shell/script execution engine.
Just for comparison's sake, the same laptop can run an empty bash script in 2-3 milliseconds. This is very important when running build jobs, for example.
Compression yes
to ~/.ssh/configIt can pipe many megabytes of text output per second on relatively slow channels (`ssh -vv` prints the total data transfer when you close the connection), as long as it's not encrypted or unable to be compressed for some other reason (which is pretty rare for text output).
Scrolling very large files in vim becomes much faster, for example.
If you like throwing out your phones every two to three years, then sure.
> the Ever Given and its some $3.5 billion worth of cargo would not be allowed to leave Egypt
As someone who had to suffer through −40-45°C winters all my life, I can live with that. I don't know if it's due to climate change, but this winter was pretty tame. Only a few −40°C days in total, not three to four weeks as it always had been previously.
Are you sure? I started building a desktop application recently. As much as I abhor Electron and refuse to touch anything built on top of it, there basically wasn't any other choice due to the absolutely massive amounts of libraries written for the web. I threw a couple of them in and it saved me at least 90% of work compared to what I would have to do if I'd chosen Qt (or anything else native). Would I rather spend a week and have something to show to my client, or roll up my sleeves and re-implement everything myself (which would take about half a year before I'd have anything working at all)?
(For the record, I didn't downvote you. I consider it a shitty practice to downvote somebody for their opinion, without even replying.)
The OS of my choice has this:
https://pkgstats.archlinux.de/
although it would probably be easy to inflate these numbers if your income depended on it.
As someone who knows nothing of the Japanese language beyond the very basics, I found these videos quite entertaining:
https://www.youtube.com/watch?v=-E6vHCT0wpw
https://www.youtube.com/watch?v=rzJqXd-1dEU
It looks like many characters are familiar to his respondents, but their combinations make absolutely no sense.
Why were you buying new phones every year? This is such a non-argument. I've been using the same Android phone for almost 7 years. It does everything I want it to do. Sure, I spent a couple of days trimming down the system, and carefully selecting applications (for example, the Google Clock from 2015 weighs about 3 MB and is very fast, while the same application from 2020 is about 30 MB and is extremely slow to start, despite having the same feature set).
— it's a native application (starts instantly on less powerful machines)
— can check your accounts against haveibeenpwnd.com database
— has full browser integration which works flawlessly IME
— can store SSH keys and work as an SSH agent
edit: it does not support synchronization, I misremembered. Sorry.
If it wasn't written with tons of pinvoke to win32 or using Windows-only services (like WCF), then sure.
I've been building NET Core applications for Linux and exclusively on Linux for a few years now, mostly using Rider as the IDE. No complaints. I haven't seen any Windows-exclusive libraries worthy of any attention in all that time. Even libraries with tons of native code (like imagemagick) have Linux support.
The official MS tooling is behind what they offer on windows, but it's getting there. You can collect GC and memory dumps
https://docs.microsoft.com/en-us/dotnet/core/diagnostics/dot...
https://docs.microsoft.com/en-us/dotnet/core/diagnostics/dot...
traces:
https://docs.microsoft.com/en-us/dotnet/core/diagnostics/dot...
and here's the port of the veritable sos tool:
https://docs.microsoft.com/en-us/dotnet/core/diagnostics/dot...
1. open your terminal emulator;
2. press Ctrl-X + Ctrl-E in a shell prompt;
3. it opens your $EDITOR, paste the command there, check it for anything unusual, then save and exit;
4. the shell runs whatever was in that script you saved.
If GPL didn't force companies to contribute back, would Linux ever be where it is today?
Personally I'd rather use gitea though. It has a more healthy development community (as in more than one developer) and is gaining new functionality at decent pace.
https://en.wikipedia.org/wiki/Steroid_dementia_syndrome#Case...
I was on prednisolone for a couple of months a few years ago. I can't say I was very intelligent before that, but it's certainly took a toll on my memory and cognitive abilities. (No, it's probably not hypochondria, I didn't even know corticosteroids could have such consequences when I noticed the problem.)
It may not be ancient, but it's certainly not the greatest compression format out there. I found this article to be very informative:
https://www.nongnu.org/lzip/xz_inadequate.html
(The author worked on lzip so it's probably somewhat biased, but facts are facts.)
#!/bin/sh
systemd-run \
--user \
--scope \
--property=MemoryHigh=4G \
--slice=background \
/usr/bin/firefox "$@"
Theoretically this does not prevent Firefox from using more than 4 GBs of memory (you need MemoryMax for that), but practically it does. MemoryHigh=bytes
Specify the throttling limit on memory usage of the executed processes in this unit. Memory usage may go above the limit if unavoidable, but the processes are heavily slowed down and memory is taken away aggressively in such cases. This is the main mechanism to control memory usage of a unit.
MemoryMax=bytes
Specify the absolute limit on memory usage of the executed processes in this unit. If memory usage cannot be contained under the limit, out-of-memory killer is invoked inside the unit. It is recommended to use MemoryHigh= as the main control mechanism and use MemoryMax= as the last line of defense.
I use a similar script to prevent my torrent client from pushing more useful data out of the page cache.You can put resource limits on basically anything (see systemd.resource-control(5)).
>I wonder if it will ever reach the adoption level of x11
It will, considering that Xorg is effectively no longer maintained and its developers have switched to working on Wayland protocols long ago, which they have stated on multiple occasions.
Somehow I doubt that the loudmouths you often hear will step up to maintain X.
$ systemd-analyze security service-name
It prints out a long list of hardening flags that can be applied inside of your service, like so: NAME DESCRIPTION EXPOSURE
PrivateNetwork= Service has access to the host's network 0.5
User=/DynamicUser= Service runs as root user 0.4
CapabilityBoundingSet=~CAP_SET(UID|GID|PCAP) Service may change UID/GID identities/capabilities 0.3
CapabilityBoundingSet=~CAP_SYS_ADMIN Service has administrator privileges 0.3
...
Here's what I typically use for a .NET 5 application: WorkingDirectory = /opt/appname/app
ReadWritePaths = /opt/appname/data
UMask = 0077
LockPersonality = yes
NoNewPrivileges = yes
PrivateDevices = yes
PrivateMounts = yes
PrivateTmp = yes
PrivateUsers = yes
ProtectClock = yes
ProtectControlGroups = yes
ProtectHome = yes
ProtectHostname = yes
ProtectKernelLogs = yes
ProtectKernelModules = yes
ProtectKernelTunables = yes
ProtectSystem = strict
RemoveIPC = yes
RestrictAddressFamilies = AF_UNIX AF_INET AF_INET6
RestrictNamespaces = yes
RestrictRealtime = yes
RestrictSUIDSGID = yes
SystemCallArchitectures = native
ProtectProc = invisible
CapabilityBoundingSet =
SystemCallFilter = ~@clock @module @mount @raw-io @reboot @swap @privileged @cpu-emulation @obsolete
ReadWritePaths should be replaced with a combination of DynamicUser + writing local persistent data to $STATE_DIRECTORY, but I'm too lazy to do that yet.See systemd.exec(5) for more.
For wlroots-based compositors like sway here's the most lightweight solution: https://hg.sr.ht/~scoopta/wlrobs
For mutter (GNOME): https://github.com/flatpak/xdg-desktop-portal + pipewire