VPN server on router or within home network?
rtxn @ rtxn @lemmy.world Posts 19Comments 1,788Joined 2 yr. ago
You could try using pre-9.0 wine-ge-custom or proton-ge-custom. And I'm sure someone will put the legacy Wine on the AUR.
Is | (...) | { ... }
a lambda expression then?
I've been learning Rust by going through The Book... there's some wack-ass syntax in that language. I've mostly used C# and Python so most of it just looks weird... I can more or less understand what while let Some((_, top)) = iter.next() { ... }
is doing, but .for_each(|((_, _, t), (_, _, b))| { ... }
just looks like an abomination. And I mean the syntax in general, not this code in particular.
You could double the vertical resolution by using half-height blocks (U+2584
) and using the background color for the upper half.
I'll just copy my comment from the other day.
Some people think it handles too many low-level systems. It's a valid concern because if systemd itself were to become compromised (like Xz Utils was) or a serious bug was introduced, all of the userland processes would be affected. People who are stuck in the 90s and think that the Unix philosophy is still relevant will also point out that it's a needlessly complex software suite and we should all go back to writing initscripts in bash. The truth is, it's complex because it needs to solve a complex problem.
Red Hat, the owner of systemd, has also had its fair share of controversies. It's a company that many distrust.
Ultimately, those whose opinion mattered the most decided that systemd's benefits outweigh the risks and drawbacks. Debian held a vote to determine the project's future regarding init systems. Arch Linux replaced initscripts because systemd was simply better, and replicating and maintaining its features (like starting services once their dependencies are running) with initscripts would've been unjustifiably complicated.
Some people think it handles too many low-level systems. It's a valid concern because if systemd itself were to become compromised (like Xz Utils was) or a serious bug was introduced, all of the userland processes would be affected. People who are stuck in the 90s and think that the Unix philosophy is still relevant will also point out that it's a needlessly complex software suite and we should all go back to writing initscripts in bash.
Red Hat, the owner of systemd, has also had its fair share of controversies. It's a company that many distrust.
Ultimately, those whose opinion mattered the most decided that systemd's benefits outweigh the risks and drawbacks. Debian held a vote to determine the project's future regarding init systems. Arch Linux replaced initscripts because systemd was simply better, and replicating and maintaining its features (like starting services once their dependencies are running) with initscripts would've been unjustifiably complicated.
They were not space tourists.
They were cargo. Marketing material for Jeff's rocket-powered overcompensation that just happened to need oxygen to stay fresh.
"Meet me in the middle" says the unjust man.
You take a step towards him, he takes a step back.
"Meet me in the middle" says the unjust man.
You can't engage such people in good faith, and it's impossible to convince them to adopt a different viewpoint. People much smarter than you have tried and failed.
I've been watching a lot of Miniminuteman lately. Weigelt sounds exactly like the crackpot conspiracy theorists whose "facts" are being "silenced" by "the Establishment" of "mainstream science" because "they don't want you to know this".
I use Ubuntu btw
Please tag as NSFW.
If the game comes in an archive (like portable Windows applications), you can simply copy the files to a directory and point Lutris at the executable.
Compatibility has been pretty solid for me. There are only a few games that didn't work out of the box (excepting those that are intentionally broken through anti-cheat). You can often get away with running games on Wine, but for most games you'll want Proton. Lutris will detect and use Proton versions that are installed by Steam, copied manually into compatibilitytools.d
, or it can download Wine and Proton releases on its own. There's also GloriousEggroll's fork with many game-specific fixes.
ProtonDB and Lutris.net are the most useful resources, you can check if the anti-cheat solution might be an issue on Are We Anti-Cheat Yet?, Steam forum is a thing that exists, and you can ask in this community.
I'm going to assume you're using official, paid-for GOG offline installers. Other installers will work the same way.
I have a directory for non-Steam games mounted at /games
. Every game has its own directory, and a game
and prefix
directory for the game content and the wineprefix respectively. For example, for Cyberpunk 2077 you would run mkdir -p /games/cyberpunk-2077/{game,prefix}
to create the directory tree all at once.
To install the game, I simply use wine
to execute the installer with the prefix
directory set as the wineprefix: WINEPREFIX=/games/cyberpunk-2077/prefix wine SETUP_FILE_NAME.exe
. The root filesystem will be mounted as the Z: drive -- use Z:\games\cyberpunk-2077\game
as the install path.
I use Lutris to launch the game. Add a new game, choose "Locally installed game", then set the executable path to the game's main executable, the working directory to the game
directory (usually works, some games expect a different working directory), and the prefix to the prefix
directory.
That's unfortunate, I have no idea how Tailscale does routing on Windows. Try running the client without accepting any subnet advertisements.
I've also found this: https://tailscale.com/kb/1023/troubleshooting#lan-traffic-prioritization-with-overlapping-subnet-routes The solution might be to advertise a larger subnet (e.g. 192.168.1.0/23) to make the route advertisements on the tailnet less specific than on the LAN. Advertising a larger subnet won't cause any additional issues because it's in a private IP range.
Systemd, through the systemctl
command, only manages the services. The service itself is defined in a unit file, and it can come from any source, even written manually. The unit file is a text file that describes what the service is, what commands or programs should be executed when it starts or stops (for sshd
it's /usr/bin/sshd -D
), what other services or conditions are required (e.g. multi-user.target
after the OS has entered multi-user mode), and much more.
When a package installs a unit file, it will be installed to a subdirectory in /usr/lib/systemd
, typically user
or system
, and when it is enabled, it will be symlinked to a subdirectory in /etc/systemd
.
OpenSSH itself, which provides sshd
on most systems, is developed by the OpenBSD team and ported to other OSes by the OpenSSH Portability Team.
How did you set up subnet advertisements on the router, and which subnets? Did you touch the ACL in the tailnet's admin console?
On the home PC, did you accept advertised routes with the Tailscale client?
What happens when you ping a host on the LAN using tailscale ping ADDR
? What happens when you try to tracert
or tracepath
to it?
Systemd is a collection of low-level system utilities. Its primary responsibility is managing services and serving as the init process (PID 1, the first userspace process started by the kernel), but it also has other components, like systemd-boot
(a boot loader and GRUB alternative), journald
(system logging), networkd
(network interface management), resolved
(DNS resolver), or udevd
(manages device files in /dev
).
People tend to vilify systemd because it is maintained by Red Hat, a company with many controversies, and a pariah among the more extreme FOSS enthusiasts; and because it's seen as bad practice to have a single entity be responsible for so many low-level system components.
Note: the -d
suffix is not exclusive to systemd things. It simply marks the program as a daemon, a long-running background process that provides some kind of service. For example, sshd
(SSH server) or httpd
(Apache server on some distros) are not parts of systemd.
To answer your question: not really. As far as I know, the network interface won't have an IP address unless the computer is turned on. If you use a timer (or any other method for that matter) to power on the computer, it will request an address from DHCP as soon as the interface is brought up (unless it has a static address).
A more practical application would be scheduling long, unattended tasks, like updates or making backups.
That's assuming the attacker is stupid enough to put the exploit in the source code where it can be easily discovered.
The Xz exploit was not present in the source code.
It was hidden in the makefile as an obfuscated string and injected into the object file during the build process.
If something doesn't immediately work, fuck
with it until it does.
Tailscale. It does some UDP fuckery to bypass NAT and firewalls (most of the time) so you don't even need to open any ports. You can run it on individual hosts to access them directly, and/or you can set it up on one device to advertise an entire subnet and have the client work like a split tunnel VPN. I don't know about OpenWRT, but both pfSense and OpnSense have built-in Tailscale plugins.
People are freaking out about their plan to go public, but for the moment, it's a reliable, high quality service even on the free tier.
I've also used Ngrok and Twingate to access my LAN from outside, but they simply use relay servers instead of Tailscale's black magic fuckery.