West Asia - Communist - international politics - anti-imperialism - software development - Math, science, chemistry, history, sociology, and a lot more.

  • 27 Posts
  • 172 Comments
Joined 3Y ago
cake
Cake day: Dec 27, 2021

help-circle
rss

I have read that it is faster, though I have not tested it myself. Personally, my initial reason to use it was just to try something new and explore the unix world. My reason for staying is that it is a very simple init system that is pleasant to work with. It made me understand what an init system is and use it a lot more.

Systemd is good if you just want something invisible and you do not want to mess too much with an init system unless you have to. Everything integrates with it

OpenRC is nicer if you want to write your own init scripts. It is very well documented also.


For #2,

For gaming, if you use steam, you may not face more than the following:

  • game does not work with no well known way to resolve. You can find this out by checking protonDB
  • game does not work because it needs to enable some options. Very easy to fix, and you can find the options on proton db for each game.
  • does not work because you didn’t setup steam right. You often need to enable proton, which in short is steam’s emulator or windows
  • does not work because your gpu drivers did not install. This depends on distro and they should all have a guide on how to do it, but usually it is just a matter of installing something.

For programming, you will love your life because everything programming is way easier on Linux.


For #1, I’ve made the realization that most distros are lightweight skins or addons on top of another distro. Most of the time, if you start with the base distro, all you have to do is install some apps, change some configurations, and suddenly you have that other distro. It is much easier than doing a reinstallation.

If you filter out all of these distros that only do a little on top of an existing, you’re left with a quite small number actually. I’d bet it’s less than 10 that are not super niche. Fedora, Arch, debian, gentoo, nixos are the big ones. There’s some niche ones, like void Linux and Alpine.

So I’d say if you try all of those, you don’t need to try any more 😁


First time Linux user you mean?

I wouldn’t recommend it, unless you can navigate the terminal well. When you install arch, it installs no desktop environment, only the ability to talk to a terminal.

It’s technically possible and very doable with some googling, but I wouldn’t recommend it.


* spontaneously combusting * NOOOO


Depends on the distribution, many package managers can filter by license. So you can find anything that doesn’t have an open source license.


Just come ask here when you have trouble, and we’ll try to help.

When troubleshooting, the biggest thing is searching the web honestly. But some more things to help you out: look for logs. Linux has loads of logs and sometimes can tell you how to fix the problem.

Logs may not be immediately apparent. Some programs have their own log files that you can look into. Sometimes, if you run the program from the terminal, it’ll print out logs there. Otherwise, you read look through journalctl, although this has logs for everything so might be harder to search.

Another useful tip, particularly for system tools and terminal tools, is manual pages. Just run man ls and replace ls with any command, you’ll get the documentation on how to use that tool.



There are many ways to do this, but the next up from users is using groups!

For each file or data directory, create a group that owns it. This group should have the service’s user as member. Then create a user for running the backups, and add it to all these groups.

The benefit of this is you don’t have to use root, and you have an association of directory to group that you can always change. You can for example grant a user access to a data directory by just adding it to its group.



Please do not care about people shitting on popular distros. As a gentoo user myself, it’s as niche as it gets, but I will wholeheartedly recommend Ubuntu and mint.


Noob Question Thread: Ask Any Questions About Linux!
Ever had a question about Linux but felt too afraid to ask? Well now's your chance, ask any question about Linux, no matter how noob or repeated it is, and I and others will help answer them. Previous noob question thread: https://lemmy.ml/post/14261893
fedilink



I know someone who’s literally making that right now. Remind me in a week, I’ll send you the link. He’ll probably be done by then.

Edit: donetick.com


For XMPP, have you looked into using snikket? It does most things you’d want out of the box without having to setup extensions yourself.


Which sites or apps does it not pop up? It is rare for it not to pop up for me.


Here is a docker compose: https://snikket.org/service/resources/docker-compose.yml

You only two configuration options in the config file: domain and email.


Arch works well for gaming. However, depending on what you’re doing, you should keep this in mind:

  • on any distro, updates may break things or change the behavior of apps. The difference in arch is that youll update no less than weekly on average, maybe biweekly at worst. This would matter more if you have a complex setup. If you’re just using steam, I wouldn’t worry
  • arch only uses the latest versions of software. If you ever install something from outside the arch repos, you have to make sure it is compatible with recent versions. Sometimes it may not be.

I’ve been wanting to do this exact thing. I already have wireguard setup. Please update us if you do this.


This makes matrix even less attractive to me lol. But you’re right, that’s a very good point.


cumbersome to parse

Parsers have already existed for so long in every major language. Why need to worry about parsing?

And why need to worry about transports working differently if they achieve the same thing? They seem similarly convenient if I understood what you said correctly


Why is JSON better than XML? It’s more modern, sure, but from technical perspective it is not objectively better right? Not something worth switching protocols for.

You mention XMPP has transports as opposed to Matrix bridges. I thought they give you roughly the same outcome. What’s the difference?


Why is Matrix mentioned more often than XMPP in self hosted forums?
I'm looking into hosting one of these for the first time. From my limited research, XMPP seems to win in every way, which makes me think I must be missing something. Matrix is almost always mentioned as the de-facto standard, but I rarely saw arguments why it is better than XMPP? Xmpp seems way easier to host, requiring less resources, has many more options for clients, and is simpler and thus easier to manage and reason about when something goes wrong. So what's the deal?
fedilink

I just unpinned the post. I figured there may be others bothered by this, and plus its been enough weeks at this point. Thanks for voicing this to me :)


Outside of academia, would you say it still provides significant upside over markdown?


I’m sorry I don’t know of any way to do that :( does it appear even when you’re browsing your main feed??


Is it practical outside of academia? I heard the learning curve is kinda big


Markdown is awesome, I agree! I did not realize you could extend markdown with anything other than html. The html extension is quite nice to do anything that markdown doesn’t support natively, but I wish there was an easier way to extend markdown. Maybe the ones you listed are what I need.




Which communication protocol or open standard in software do you wish was more common or used more?
Whether you're really passionate about RPC, MQTT, Matrix or wayland, tell us more about the protocols or open standards you have strong opinions on!
fedilink

Yes you’re right. Did not realize that’s what you meant 😅


Wouldn’t you be able to do the same with NFS?


I do not have a lot of knowledge on this, but I suspect that nvidia does not support the GTX1070 that well on Linux.

AND supports Linux better. As for nvidia, newer cards have a bit better support but I bet there’s still some disparity.


What do you mean by other roots? Isn’t root only one?


To summarize: the major difference is that Arch Linux gives you the latest versions of all programs and packages. You can update anytime, and you’ll get the latest versions every time for all programs

Debian follows a stable release model. Suppose you install debian 12 (bookworm). The software versions there are locked, and they’re usually not the latest versions. For example, the Linux kernel there is version 6.1, whereas the latest is like 6,9 or something. Neovim is version 0.7, whereas the latest is 0.9. Those versions will remain this way, unless you update to, say, debian 13 whenever it comes out. But if you do your regular system updates, it will only do security updates (which do not change the behavior of a program).

You might wonder, why is the debian approach good? Stability. Software updates = changes. Changes could mean your setup that was previously working, suddenly isn’t, because now the program changed behavior. Debian tries to avoid that by locking all versions, and making sure they are fully compatible. It also ensures that by doing this, you don’t miss out on security updates.


wine is not a distribution. It is a program that allows running windows applications on Linux, and is available on most distributions.


Are you able to demonstrate with supporting evidence?


Why is that? It shows proof of the exact thing I said. If you don’t like that it’s on Reddit, I can copy paste it here.

If you want more examples, I’m happy to provide them. Here is another example:

https://security-tracker.debian.org/tracker/source-package/linux


Debian is not bad. It is just not suitable for newcomers using it for desktop. I think my arguments hold this stance.


I unfortunately don’t recall them by name, but there are distributions that are specific to Macbook and run better.


Running something at start-up can be done multiple ways:

  • look into /etc/rc.d/rc.local
  • systemd (or whatever init system you use)
  • cron job

Noob Question Thread: Ask Any Questions About Linux!
I thought I'll make this thread for all of you out there who have questions but are afraid to ask them. This is your chance! I'll try my best to answer any questions here, but I hope others in the community will contribute too!
fedilink

Those who custom configure their kernel: what did you gain?
Curious to know the coolest things you achieved by configuring your kernel. I know kernel config can be boring, but I'm hoping someone will have an impressive answer. For me I have a very lightweight kernel that runs wayland on nvidia without any issues to date.
fedilink

Linux users with uncommon or unusual setups: tell us about it
I'll start with mine. yes part of this was to brag about my somewhat but not too unusual setup. But I also wanna learn from your setups! Anyways: I primarily use Gentoo Linux. I have two headless servers: a Raspberry Pi 4B and a Oracle cloud VM (free tier). Both running OpenRC, and both were running mainline kernel with custom config (I recently switched the Pi to PiFoundation kernel due to some issues). The raspberry pi boots from SSD and has no sd card inserted. Both servers were running musl libc instead of glibc for a while. This gave me a couple of random issues, but eventually I got tired and switched back to glibc. I have a desktop running gentoo and a laptop running arch, but hoping to switch the laptop to gentoo soon. Both are daily driving wayland (the desktop had nvidia card and used for gaming). The desktop is running a kernel with a minimal config that compiles in 2-3 minutes. What's your unusual setup like?
fedilink

How do you use your tiling window manager?
Tiling window manager users: how exactly do you use yours? Do you have advanced keybindings for bringing up frequently used programs? Are there less common layouts you use frequently? Do you use any advanced or fancy features?
fedilink

How to secure (podman or docker) containers for public-facing hosting?
## Context I want to host public-facing applications on a server in my home, without compromising security. I realize containers might be one way to do this, and want to explore that route further. ## Requirements I want to run applications within containers such that they - Must not be able to interfere with applications running on host - Must not be able to interfere with other containers or applications inside them - Must have no access or influence on other devices in the local network, or otherwise compromise the security of the network, but still accessible by devices via ssh. > Note: all of this within reason. I understand that sometimes there may be occasional vulnerabilities, like in kernel for example, that would eventually get fixed. Risks like this within reason I am willing to accept. ## What I found so far - **Running containers in rootless mode:** in other words, running the container daemon with an unprivileged host user - **Running applications in container under unprivileged users:** the container user under which the container is ran should be unprivileged - **Networking:** The container's networking must be restricted. I am still not sure how to do this and shall explore it more, but would appreciate any resources. ## Alternative solution I have seen bubblewrap presented as an alternative, but it seems like it is not intended to be used directly in this manner, and information about using it for this is scarce.
fedilink

Which kernel configurations for USB SD card reader (Genesys Logic) ?
EDIT: I enabled CONFIG_MSDOS_PARTITION and that caused it to work. It had nothing to do with the device itself but the partition type on the sd card. Thank you do much rattking for the help! Original post: Hi all, I am using a custom configured linux kernel (Gentoo), with very few things enabled. It has done me very well so far and taught me a bunch, but there's one small issue I have been having lately that is annoying. My SD-card reader (a USB device) is not working, but it works perfectly fine on my arch linux laptop without any kernel configurations. Is it possible to tell which drivers or kernel configurations I need by looking at the laptop that is working? ## More context about the issue On the machine where it is not working, after plugging the device in, I see this in `lsblk` output: ``` NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 1 59.5G 0 disk nvme0n1 259:0 0 400G 0 disk ├─nvme0n1p1 259:1 0 1G 0 part /boot └─nvme0n1p2 259:2 0 400G 0 part / ``` The device does show `sda` but no `sda/sda1`. This is opposite to the laptop, where I do see a `sda1` below the sda device, which I can mount using `mount /dev/sda1 /mnt/point` ## What I tried I tried enabling the following kernel configurations: MMC MMC_BLOCK MMC_SDHCI MMC_SDHCI_PCI MMC_RICOH_MMC MMC_SDHCI_ACPI Still, this did not change the result. I tried looking into the logs, but could not find anything interesting. I am using the `sysklogd` system logger instead of systemd's journalctl ## The reader I bought I bought this a long time ago from amazon: https://algopix.com/products/B08N4N7Q7J-zhoubin-usb-30-sd-card-reader-for-sdxc-sdhc-sd-mmc-rsmmc-micro-sdxc-micro-sd Yes I know I cheaped out. But it worked for me until I tried it on this one computer, so I wish to make it work. ## Final Question How can I make this work?
fedilink

Downsides of self hosting fediverse from homelab / locally?
I am wanting to self host a fediverse instance. I don't hope to make it big. Hoping for 200 users at most, and I won't advertise it heavily so it'll probably be a while before it gets there. Is it a bad idea to host something like this on local hardware at home? I have a lot of local-only self hosted services, and I wouldn't want those to be compromised. But my biggest fear is overloading my network. I already don't get the fastest signal in some parts of my house, and I am worried the extra traffic might put more pressure on the network. What are your thoughts on hosting local? Should I just avoid the headache and host on public instance?
fedilink

Affordable MiniPC / SBC for self hosting? Will connect to 1x SSD and 2x HDD.
Something small and 2 or 4 GB RAM. Raspberry pi's compute power is good enough for me, I'm not doing anything too intensive. Is raspberry pi 4 still the best answer? I am a tinkerer and don't mind tinkering. I typically use Gentoo Linux as main OS. I also don't mind ARM or other architectures. I've been eyeing the RockPro64 as well.
fedilink

SBC’s with better mainline Linux support than Raspberry Pi?
Rasbperry Pi is a popular choice as a SoC / SBC Linux board. But you have to use their custom linux kernel. Are there Linux boards with decent mainline Linux kernel support?
fedilink

Projects that are experimental or daringly innovating the terminal and command line world?
What projects are out there seeking to innovate in the terminal and command line space, and improve or revolutionize the terminal environment? - NuShell is one such example, a shell that uses structured data in its pipelines. Many other experimental shells out there innovating in different spaces. - An even more daring example is DomTerm. It's a terminal emulator with more rich rendering. Supports rich text, images, etc while maintaining xterm compatibility. Please do not shy from answering projects that are very experimental, early stage, break a lot of backwards compatibility or radically change the current way of doing things.
fedilink

Scriptable configuration (with programming language) vs data / text configuration: what are the benefits?
Most applications provide you configuration files that are data / text based. Whether it is toml, JSON, yaml or some other format, you are usually defining values for pre-determined keys and that's all. This makes sense for many applications, but involved applications have explored configurations that make use of scripting. For example, vim uses VimScript, neovim uses Lua, but vscode uses json (as far as I remember), and Helix (vim inspired editor) argues editor configurations must be data, not scripting, and uses toml. many tiling window managers use various programming languages (Qtile uses python, xmonad uses Haskell, Awesome uses Lua) while others stick to data configuration (i3). Do you think that scriptable configuration is over-engineered and brings weaknesses, or is it warranted and grants the user power in these big applications? What are the benefits of scriptable configurations?
fedilink

(Neo)Vim alternatives: Kakoune is great! I am surprised that Helix is more popular
So apparently there are two editors inspired by vim, but built from the ground up (as opposed to neovim, a vim fork that seeks to improve on top of vim). I've heard of Helix several times prior, but it never quite attracted me. Seemed like vim, but different key bindings and much worse plugin system. It also has different visual and normal modes than vim, but it didn't quite click with me. I do like it's multi-cursor ability though. Then it turns out that Helix was also inspired by not just vim, but also kakoune. Kakoune also has different keybindings, and different modes, but its different modes make sense to me. It fuses visual and normal mode into one. Your normal mode is for both navigation and selection. Kakoune promotes the idea that you should visually see the text you're operating on before running the command. You know how in vim, "dd" deletes a line, "dw" deletes a word, and "d$" deletes to the end of the line? In vim, you don't see what you're deleting before its gone (which is fine and works for many). In kakoune, the selection happens first before the action. So you select the word or the line, and then you delete. But what I found to be Kakoune's killer feature was its shell integration. Kakoune seemlessly integrates into the unix shell, allowing you to offload many tasks to it. For example, instead of it having a built-in sort command, you use the unix sort command to sort your lines. I'm surprised kakoune isn't more popular. Yes, it is still in a much earlier phase than vim, and the ecosystem is far less mature, but I am surprised to see Helix gaining more traction. I'm still very new to kakoune and exploring it. But I like it a lot so far.
fedilink

Resources for learning Linux Networking (iptables, namespaces, firewall, NAT, interfaces…)? preferably text resources (books, articles, etc)
Hi all, I am looking for recommendations on resources to learn Linux networking. I am primarily hoping for text resources such as books, guides, blog series, articles, etc. I have trouble focusing on videos. I am mainly targeting linux networking topics, such as how the linux networking stack works, and things like iptables, network namespaces, network interfaces, sockets, NAT, firewalls, internal IP-addressing, subnetting, routing, proxying, internal DNS, and anything that I may not know exists but is related to these concepts and linux networking in general. Any recommendations?
fedilink

Alpine Linux (in lightweightness), but glibc?
Yes, I know so much of Alpine's lightweightness comes from not using glibc. But still, the other options I see are far from being slimmed down. Debian, Ubuntu server, CentOS... They all could use some cuts. What's the most slimmed down non-desktop distro that still has a glibc base? I honestly don't care if it has its own package manager (build tool handles this for me). Just wanna use it in containers for running server apps.
fedilink

EFISTUB: If I have both CMDLINE configured in kernel, AND via efibootmgr, which one gets executed / takes precedence?
suppose I enable `CONFIG_CMDLINE_BOOL=y` and `CONFIG_CMDLINE="..."`, but I also add a cmdline using efibootmgr via `-u` option, which one takes precedence and gets executed? Does an initramfs make this more complicated? does it also have its own cmdline?
fedilink

Opinion: Distributions that only change non-system pre-installed software or desktop environment should instead be packages or scripts
The majority of Linux distributions out there seem to be over-engineering their method of distribution. They are not giving us a new distribution of Linux. They are giving us an existing distribution of Linux, but with a different distribution of non-system software (like a different desktop environment or configuration of it) In many cases, turning an installation of the base distribution used to the one they're shipping is a matter of installing certain packages and setting some configurations. Why should the user be required to reinstall their whole OS for this? It would be way more practical if those distributions are available as packages, preferably managed by the package manager itself. This is much easier for both the user and the developer. Some developers may find it less satisfying to do this, and I don't mean to force my opinion on anyone, but only suggesting that there's an easier way to do this. Distributions should be changing things that aren't easily doable without a system reinstall.
fedilink

How to make it such that, when running command, it automatically does SOME_ENV_VAR=value command? (something cleaner than aliases?)
hello friends, I am looking for a way to do what I described in the title. When running command `command`, I dont want to have to type `SOME_ENV_VAR=value command` every time, especially if there are multiple. I am sure youre immediately thinking aliases. My issue with aliases is that if I do this for several programs, my .bashrc will get large and messy quickly. I would prefer a way to separate those by program or application, rather than put them all in one file. Is there a clean way to do this?
fedilink

Has anyone had success cross compiling from x86_64 glibc to aarch64 musl?
I have been having some trouble doing this and was wondering if it is a common theme or there is room to make it better. Sometimes packages wont compile at all and thats fine. But recently I cross compiled some system packages and it bricked my system and was no longer able to ssh into it. I am not asking for help in this specific issue, but want to ask if this is a common occurrence for this kind of setup? It does not seem to be a popular setup
fedilink

Which bittorrent client has the best command-line interface?
want to run a bittorrent client on a headless server. The server is a raspberry pi so it is limited a bit limited on resources. Whats your favorite bittorrent client with a good command-line interface?
fedilink

Looking for self-hosted task / to-do list with custom sort and custom attributes? With command-line and Android or web client
Hello friends, I am looking for a self-hosted task / to-do list app that supports: - syncing across devices, preferably self-hosted - sort items myself rather than by deadline or built-in priority features, and preserve that order when syncing - allow defining arbitrary custom attributes Some really nice to haves but not absolutely necessary features: - treat custom attributes as first-class. i.e. allow showing those attributes on the task-list view, without having to view all details to see it. Or be able to filter or by the attribute or sort by it. - allow custom logic for sorting - just scriptable features in general would be nice I have been thinking of making my own, but wanted to see if this exists first.
fedilink

Which to host for a single user instance: lemmy or kbin (or others)?
what is better for single user instance, or maybe something small like under 10 users (no communities)? which is lighter on resources? how much storage should I allocate? any alternatives to lemmy and kbin that are still somewhat similar?
fedilink

Which Tiling Window Managers do you like, and why?
feel free to list other window managers you've used. I have been happy with bspwm, but considering trying something else. I love its simplicity and immense customizability. I like that it is shell scriptable, but it is not a deal breaker feature for me. I like how the binary split model makes any custom partition possible.
fedilink

Is it a good idea to run windows in VM with gpu passthrough (nvidia RTX) for certain games, instead of dual booting?
I've been dual booting Linux and windows for about two years now, but in those two years, I have *never* booted into windows, except by mistake. This made me think about removing windows and just saving that wasted space for Linux. I only ever dual booted for the off chance the peer pressure to play anti cheat games was too great, but so far it hasn't. For the off chance where I want to play a game that doesn't run well on Linux, is it a good idea to do that via VM instead of dual boot, or is it too much hassle? Will there be performance hit or any issues with those games?
fedilink

I often read that (docker) containers are not good for security. What are secure methods of creating secure isolated environments to run questionable programs in?
I've read that standard containers are optimized for developer productivity and not security, which makes sense. But then what would be ideal to use for security? Suppose I want to isolate environments from each other for security purposes, to run questionable programs or reduce attack surface. What are some secure solutions? Something without the performance hit of VMs
fedilink