I take my shitposts very seriously.

  • 47 Posts
  • 3.23K Comments
Joined 3 years ago
cake
Cake day: June 24th, 2023

help-circle


  • “Everything is a file” means that many of the system’s components are represented as abstractions in the filesystem. It’s simply an API that allows reading from and writing to it by integrating into the hierarchical file structure.

    If you take a look inside /sys, you will find a fuckton of files, but they don’t represent data stored on a mass storage medium. Instead, the directory contains a mounted sysfs filesystem that contains file-like representations of various parts and properties of the system. For example, you can read them like a file by running cat /sys/block/sda/queue/rotational to check if the sda block device is a spinning disk (1) or solid-state storage (0). Or you can write to them like a file by running echo 1 > /sys/block/sda/devices/delete to command sda’s driver to detach the device. Similarly, /proc contains a mounted procfs filesystem that presents information about running processes as file-like entries; /dev contains a mounted devfs that points to various devices; and /tmp and /run contain tmpfs mounts for temporary storage in volatile memory (RAM or swap).

    Windows uses various other APIs (like the Component Object Model and others) to accomplish the same that are not necessarily tied into the filesystem.


  • It follows the same convention as most programming languages that expose the argument list. Python’s sys.argv has the program name at index 0 and the first argument at index 1. C’s char **argv does the same: index 0 is the program name, index 1 is the first argument. So it stands to reason that Zsh’s $0 should be the program name and $1 should be the first argument…

    …which, by the way, is exactly what Bash does as well.





  • rtxn@lemmy.worldMtolinuxmemes@lemmy.worldit's just the worst
    link
    fedilink
    arrow-up
    22
    ·
    edit-2
    5 days ago

    That isn’t incorrect, but it’s not as important as people make it out to be. Linux isn’t certified as POSIX-conformant either.

    People are way too stuck on POSIX regarding Fish specifically, but in shell scripting, POSIX compliance boils down to “can it run a pure sh script”. Bash is compliant. Zsh is partially compliant and needs to set an option to emulate sh. Fish uses a different syntax and is not compliant; if that is a problem, don’t execute sh scripts in Fish.

    POSIX compliance for shell scripts was important in the 80s and 90s when the #! directive wasn’t as commonly implemented and every script might be executed by the user’s $SHELL instead. That is no longer the case as virtually every Unix-like system’s program loader supports #!.






  • rtxn@lemmy.world
    shield
    Mtolinuxmemes@lemmy.worldOG pic of bobby drop tables
    link
    fedilink
    arrow-up
    28
    arrow-down
    10
    ·
    8 days ago

    I locked the other thread because this is not a community for politics, nor for airing out your issues with certain people. Those topics are specifically not allowed, and you would know that if you had read the rules. I’ve previously allowed such discussions to go on, in the vain hope that everybody would behave like cultured humans, but eventually they all devolved into exchanges of insults and accusations.

    This does not mean that I’m supporting or protecting those individuals. I’m just trying my pathetic best to keep the community clean. If you have an opinion that you must absolutely share with the world, find a community that allows it.






  • rtxn@lemmy.worldto196@lemmy.blahaj.zoneOh yes
    link
    fedilink
    English
    arrow-up
    3
    ·
    19 days ago

    My examples won’t work because they’re in code blocks. Code blocks are meant to render their content verbatim, without parsing Markdown tags. This span uses multiple formatting tags. ~~**_This is the same in an inline code span._**~~

    ~~**_This is the same in a code block._**~~
    

    Like I said, spoiler tags are not a standard feature. Whether they work depends entirely on the renderer used by the client.


  • rtxn@lemmy.worldto196@lemmy.blahaj.zoneOh yes
    link
    fedilink
    English
    arrow-up
    6
    ·
    19 days ago

    You’ll have to put that spoiler in a new paragraph. Unfortunately spoiler tags are not a standard Markdown feature. There are no inline spoilers in the Lemmy UI (which is a stupid ass decision, what the fuck devs), and no spoilers whatsoever on Mastodon.

    This works:

    :::spoiler Spoiler Title
    spoiler content
    :::
    

    This does not:

    :::spoiler spoiler content :::