• 11 Posts
  • 186 Comments
Joined 3 years ago
cake
Cake day: February 1st, 2023

help-circle


  • Yes, that was one of the tools I considered before making this. I do not remember the precise detail on why, but much like gnu stow is only good for versioning user dotfiles and not system config. Etckeeper is good for storing either your system config files or user’s dotfiles, but not both at the same time. copicat doesn’t care what you use it for because you explicitly tell it all the locations and permissions that you want.


  • Yeah, it’s cool, people are mostly looking for something like your usecase. I got suggested stow or stow-like tools a lot when exploring this. And when they understood what I wanted, they just suggested ansible… Which would work when starting from scratch, but wasn’t right for me. I made copicat mostly because I am actually using it, and then decided to make it public because really I didn’t find anything like it.



  • That is a good question. I have considered using gnu stow before building this. But there’s a couple of problems with that.

    Git doesn’t follow symlinks, it stores them as links in the repo, so your only option is to keep the files in the repo, and symlink from the config file location to the repo. This is fine for user config files (like from your .config folder), but if you want to keep system config files (like those from /etc) then the git process needs to run as root to modify those files, because symlinked files share permissions and ownership. And even then, git will always create everything as root because it only tracks permission bits, not ownership, so you will need to constantly fix up ownership of your files.

    With this tool instead you explicitly tell it the ownership and permission of files, and it takes care of that for you (it still needs root permissions of course).




  • ISO/OSI is a neatly separated model mostly used on theory.

    In practice, actual network stacks are often modeled after a simpler model that is called TCP/IP. Which despite the name is not actually TCP specific.

    Here’s the general description and correspondence to ISO/OSI:

    1. Host to network / network access layer: it’s mostly the nic and nic driver. It’s sometimes numbered as 0 because some don’t consider it part of the TCP/IP stack, but simply the nic driver. Corresponds to:
      1. Physical
      2. Datalink
    2. Network layer: Corresponds to: 3. Network
    3. Transport layer: Corresponds to: 4. Transport
    4. Application layer: everything that’s part of the application and not the network stack. Corresponds to: 5. Session 6. Presentation 7. Application

    Or, you can just not care about how the actual software stack is separated, and continue to use the most complete model, knowing that everyone will understand what you when you say “layer 2/3/4” anyway.

    Plus, some could say that the TCP/IP model is equally unfit because the Linux network subsystem doesn’t care about layers.

    Edit: I hope the formatting of that table isn’t broken on your client, because it is on mine











  • You are correct, it also lacks a decorative groove that the “one” one has near the top.

    I think the “series” d-pad is the best modern d-pad, especially since Nintendo forgot how to make them just before releasing the Wii u. I’d say on par with classic Nintendo d-pads, maybe a bit less comfortable for platformers though.

    On the other hand, the 360 d-pad is the worst most horrible piece of crap ever devised.