• Endorkend@kbin.social
    link
    fedilink
    arrow-up
    135
    arrow-down
    4
    ·
    edit-2
    7 months ago

    This is major league bullshit tho.

    On linux, where the config file for a specific program is, can vary annoyingly greatly depending on what distro you’re using and sometimes the same config file exists in several places and somehow certain parts of the configuration parameters get taken from several of those files, so if you think you’ve found what the actual config file should be and remove the duplicates, suddenly the program uses defaults or doesn’t even work at all.

    • pearsaltchocolatebar@discuss.online
      link
      fedilink
      arrow-up
      43
      arrow-down
      2
      ·
      7 months ago

      Yup. Is it in /usr /var /etc or /opt? Maybe in some hidden home folder? Sure, you can Google it, but there’s no guarantee you’ll find the right answer.

      There are only a handful of places Windows sticks stuff, and it’s pretty predictable.

      • lemmyvore@feddit.nl
        link
        fedilink
        English
        arrow-up
        13
        arrow-down
        2
        ·
        7 months ago

        You should never be expected to edit anything in /usr, /opt or /var. That’s highly unusual. For which software did you have to do this?

        • Opisek@lemmy.world
          link
          fedilink
          arrow-up
          5
          arrow-down
          1
          ·
          7 months ago

          Brother scanner utilities: /opt Pretty sure I had to change something in /usr once, but I forgot what. Now, /var would be very unusual. But most of the time, all the configuration files happen to be somewhere in /etc.

        • pearsaltchocolatebar@discuss.online
          link
          fedilink
          arrow-up
          3
          ·
          7 months ago

          Docker on RHEL saves everything in /var/lib, for example. Tenable and Nessus stick it in /opt. I’m currently doing a rhel7->8 upgrade, and that shit gets stuck everywhere.

          But, I also have issues on my Pis. For a lot of the packages I use, I’m lucky if they actually put their .service file in /etc/systemd. Having to run a find / command on a pi can take forever.

      • ManniSturgis@lemmy.zip
        link
        fedilink
        arrow-up
        4
        ·
        7 months ago

        Disagree. Take game saves on windows. They can be in appdata\local, appdata\roaming, documents\company-name, documents\savedgames\company-name I’m sure there are more.

        • Demdaru@lemmy.world
          link
          fedilink
          arrow-up
          6
          arrow-down
          5
          ·
          edit-2
          7 months ago

          Nah. 3 places.

          • Appdata subfolder
          • Documents
          • Game installation folder

          Savegame folder is then placed either ina folder with game name or studio name, so easy to check all these locations within minutes.

          Let’s not talk about rpgmaker games tho. I’ve seen them do some wacky shit with gamesaves.

          Edit: To make my point clearer, I disagree with person above me about their disagreement. Savegames on windows are predictable as hell. Thanks to person below for pointing out I didn’t convey. :<

          • Mardukas@lemmy.world
            link
            fedilink
            arrow-up
            5
            arrow-down
            1
            ·
            edit-2
            7 months ago

            Yes but appdata subfolder is local, locallow or roaming so the poster above you is still correct.

      • hperrin@lemmy.world
        link
        fedilink
        arrow-up
        2
        ·
        7 months ago

        What system wide software stores their configs in anything but /etc? Data, sure, but not configs.

          • hperrin@lemmy.world
            link
            fedilink
            arrow-up
            2
            ·
            edit-2
            7 months ago

            I don’t know what Tenable and Nessus are. I’m guess you have to install them from outside the package manager or build them from source, in which case, yeah, using /opt for config would be acceptable.

            Docker’s config file is located at:

            /etc/docker/daemon.json
            
      • shrugs@lemmy.world
        link
        fedilink
        arrow-up
        3
        arrow-down
        3
        ·
        7 months ago

        TLDR; Windows crap, I love Linux

        Long read ahead, this resulted in a pretty big rant, but I feel better now:

        Windows has way more silly places. From registry to ini files, assemblies, common files, services, drivers…it’s everywhere.

        Do you know how an MSI packages for software installation work? Let me tell you, it’s a mess. An utter and complete garbage format. A database with hundreds of buggy functions, empty lines and internal inconsistencies. There wasn’t even a way to create them comfortably without paying for expensive software back then. Yea, im looking at you, flexera admin studio.

        I automated hundreds of custom software installations on 2000 clients from windows 2000 to XP to Windows 7 to Windows 10… for >10 years, so I know what I’m talking about.

        On Linux 99% of apps save global settings in /etc and usersettings in /home/user/.* or the newer way XDG_CONFIG_HOME.

        But since all is a file on Linux every config can simply be copied to restore or backup settings. Almost every tool has man pages. How hard is it to run man tool and read the specifics if you need help? Windows? Sometimes you got some help files in a strange format (.hlp?). Other then that, start the browser and ask Google.

        Linux package managing since 2003 has been better then it ever has been on Windows to this day.

        One command to update all components? Packages will be installed and removed automatically to fulfill the dependencies of the software you want to install? Every package is build by a trusty maintainer of the OS instead of some overworked windows engineer that needs to create profit.

        Do you know how Deb files work? They are simpel zips of the folder structure and files the software consists of. A textfile with metadata like maintainer, name, version and, very important: dependencies. Last but not least there are a two or three files that can contain scripts that need to be executed prior or past installation. That’s it. And you can do everything with it.

        On Windows you often are forced to find the right combination of weird parameters to ensure a program starts. commandlines like “c:\windows\powershell.exe -e cmd /c program name”, happen way more often then you would expect.

        On Linux I get: Global package manager and updates with trusted packages, no telemetry, more safety, no ads, better privacy…and many more.

        My personal opinion: I don’t understand how people can even question the superiority of Linux for personal devices.

    • 0x4E4F@sh.itjust.worksOP
      link
      fedilink
      English
      arrow-up
      2
      arrow-down
      2
      ·
      7 months ago

      Trust me, that is not Linux specific, Windows has that bullshit as well. Everything depends on how the devs wanted to solve the local settings problem, and if you have devs that work 1 or 2 years on the project and then quit, which in turn are replaced by other devs, you get this bullshit. The new ones usually don’t wanna touch the old one’s code, or if they do, they only make minor changes, just enough to make something that’s not working, work.

  • LouNeko@lemmy.world
    link
    fedilink
    arrow-up
    82
    arrow-down
    4
    ·
    edit-2
    7 months ago

    This is the “appdata” folder, this is where all the application’s data goes.

    So whats the “Programs” folder then?

    This is also where the application’s data and files go.

    But I thought thats the “Programs x86” folder.

    This is also where the application’s data and files go.

    Ok whats “Program Files” then?

    This is also where the application’s data and files go.

    So my config file is in either one if those 4?

    No thats in the “Documents” folder, obviously.

    Windows program data file structure has always been the wild west.

    • pivot_root@lemmy.world
      link
      fedilink
      arrow-up
      15
      arrow-down
      1
      ·
      7 months ago

      Don’t forget %USERPROFILE%/AppData/Local/Programs, where some programs get installed to because the developer doesn’t want to make it a system wide installation.

      • pivot_root@lemmy.world
        link
        fedilink
        arrow-up
        8
        ·
        7 months ago

        Game save data? No, my documents.
        Application config files? Again, my documents.
        Temporary documents I don’t care about keeping? Downloads, duh.
        My actual documents? Desktop.
        My desktop? Turned icons off because it was too messy.

        Just another day using Windows…

        • Sanctus@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          7 months ago

          I have to say I love having no desktop. Something about watching my coworkers become dependent on it is neurotic.

          • pivot_root@lemmy.world
            link
            fedilink
            arrow-up
            1
            ·
            edit-2
            7 months ago

            Agreed. It’s much nicer to see your wallpaper than a mess of mismatched icons that may need to be occasionally clicked.

      • 0x4E4F@sh.itjust.worksOP
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 months ago

        Agreed, but the number of places where to search for the config is not as big as in Windows. And there is the fact that most software is open source, so you could always check where the application saves it’s data.

  • SGG@lemmy.world
    link
    fedilink
    English
    arrow-up
    52
    arrow-down
    2
    ·
    7 months ago

    Don’t forget that appdata nowadays has 3 sub folders, local, locallow, and roaming.

    Also there’s C:\programdata

    Also some programs just store it in the user folder, the documents folder, or games/ my games folder if they are a game.

      • SGG@lemmy.world
        link
        fedilink
        English
        arrow-up
        24
        ·
        7 months ago

        Oooh the registry is even more fun.

        • HKLM, HKCU? These are statements dreamt up by the utterly deranged
        • Store it in software, make your own root folder
        • Also for 32 bit programs there wow6432node
        • There’s also the policies section, but this kind of makes sense to have it split off
        • Also make sure to follow the apple methodology of having multiple different key names like Apple, Apple inc., etc
        • 0x4E4F@sh.itjust.worksOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          7 months ago

          I still have no idea why HK is in front… why is the key hot 🤔… and what key are we talking about…

          Oh, yeah, and the different key names… Windows, Windows NT (WITH a white space…), Win…

    • pHr34kY@lemmy.world
      link
      fedilink
      arrow-up
      13
      ·
      edit-2
      7 months ago

      And half the time you’ll find it in the registry too. Linux has proven quite well that an OS doesn’t need a registry.

      Oh, and what’s with ProgramData and AppData being two completely different things. I understand the difference between the two directories, but there is no difference between a program and an app. Everywhere else it’s Machine/User.

      • 0x4E4F@sh.itjust.worksOP
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 months ago

        ProgramData is for admin stuff and things that need to be shared between users. AppData is for personalized settings per user. For example, AnyDesk stores the unattended access password in ProgramData, as well as the ID. Sure they do get copied to AppData when AnyDesk runs on boot/login on any user, but you could also have some user specific options (like language) and they get stored in a separate file in AppData.

    • IsoSpandy@lemm.ee
      link
      fedilink
      arrow-up
      4
      arrow-down
      1
      ·
      7 months ago

      What the fuck is local low? I don’t understand. Local is Billy G’s jizz… I get that… And Roaming is for poor plebs. But why LocalLow? Is it like cache? But I have seens games saving their save files there. I don’t understand

  • csm10495@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    37
    arrow-down
    1
    ·
    7 months ago

    This isn’t really accurate for either side. For Linux, I’ve had crap shove configs in ~, /etc, /var, at least.

    On Windows, it could be literally anywhere or in the registry.

  • rtxn@lemmy.worldM
    link
    fedilink
    English
    arrow-up
    24
    ·
    edit-2
    7 months ago

    The setting you’re looking for could be in %appdata% It could be in %localappdata% It could be in C:\ProgramData. It could be in the registry. It could be in HKLM. It could be in HKCU. It could be in any of the userdirs. It could be in the application’s directory.

    HA! Joke’s on you, it was an envvar all along!

    True story.

  • andrew_bidlaw@sh.itjust.works
    link
    fedilink
    arrow-up
    24
    arrow-down
    1
    ·
    7 months ago

    I feel mildly aroused when I see a program or a game that collects everything in it’s folder and can be used from a USB drive. Some paid, industrial grade software leaves so much traces and depends on so much different hidden files and keys it’s making me sick.

      • TurboWafflz@lemmy.world
        link
        fedilink
        arrow-up
        6
        ·
        edit-2
        7 months ago

        Or if you just symlink /usr, /opt, and /home to that usb drive. You may be asking why you wouldn’t just mount partitions on the usb drive to those locations. This is not a question I will be answering

    • 0x4E4F@sh.itjust.worksOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      7 months ago

      That is good… unless you plan on sharing the app between users, then it sucks, because every user has to be an admin in order to change the config… and then, you have one user that sets it like so and so, and another that sets it completely different. And this is why separate settings for users is a good thing. Sure, have an option for a global config, and let that copy be copied to the local config as sane defaults, but not having the option to actually have separate configs in user directories is, from an IT perspective, insane.

  • XEAL@lemm.ee
    link
    fedilink
    arrow-up
    18
    ·
    7 months ago

    Mozilla products:

    “What is this .config folder you talk about?”

  • Delta_V@lemmy.world
    link
    fedilink
    arrow-up
    19
    arrow-down
    3
    ·
    7 months ago

    not seen in this comic: the linux file isn’t where the comic/manual/internet nerds says it should be, and there’s no realistic way to find it

    • dream_weasel@sh.itjust.works
      link
      fedilink
      arrow-up
      4
      arrow-down
      1
      ·
      7 months ago

      Sure there is: find / -name myprogram*.md -o -name myprogram*.txt or start with just looking for the program name and pipe to less

        • dream_weasel@sh.itjust.works
          link
          fedilink
          arrow-up
          5
          arrow-down
          1
          ·
          7 months ago

          The prompt was realistic not simple lol. Usually some man or programname -h and then reading will tell you where to look and that’s simple. Not many people want to hear “RTFM” though.

    • baseless_discourse@mander.xyz
      link
      fedilink
      arrow-up
      2
      arrow-down
      1
      ·
      edit-2
      7 months ago

      Until flatpak came along and just keeps everything in their respective app sandbox.

      If your app don’t need full user home access (most app don’t), you can use a persistent folder to place the folder in app sandbox instead of home.

      It is not only more clean, but also more secure and private.

    • ricdeh@lemm.ee
      link
      fedilink
      arrow-up
      1
      arrow-down
      3
      ·
      7 months ago

      Nonsense. And even if the config file cannot be found in the usual directories then there are always tools like KFind that can search your entire OS within seconds.

      • Delta_V@lemmy.world
        link
        fedilink
        arrow-up
        8
        ·
        7 months ago

        congratulations. you’ve just sent a linux newb down a 12 hour rabbit hole that doesn’t actually solve their problem.

        • ricdeh@lemm.ee
          link
          fedilink
          arrow-up
          1
          ·
          7 months ago

          How does it not solve their problem if they’re searching for configuration files? That would only be the case if the files do not exist in the first place, and then there’s really no difference between GNU/Linux and Windows at all if you assume that initial configuration has not occurred. What would you do?

  • BradleyUffner@lemmy.world
    link
    fedilink
    English
    arrow-up
    11
    ·
    7 months ago

    Tell that to the file I just dropped in to ~/.steam/debian-installation/steamapps/compatdata/1086940/pfx

  • Possibly linux@lemmy.zip
    link
    fedilink
    English
    arrow-up
    13
    arrow-down
    3
    ·
    7 months ago

    They don’t have config files in Windows. Apps just throw things everywhere without rhyme of reason

      • oo1@kbin.social
        link
        fedilink
        arrow-up
        2
        ·
        edit-2
        7 months ago

        Sorry, that was my lame joke about the simlar sound of the windows essential tool “regedit”.

        My only surviving knowledge from when I used to be able to do things on windows was that it was always a bucket of shite until you “regedit” a bunch of things. These edits were arcane secrets known only to mystical internet guru’s like some bloke called “Fred Vorck” and impossible to figure out by logic, reason or even through mundane hard work. I assumed that’s what the lower panel in the OP is getting at.

        But on reflection, I’d be sad if there’s not a forum on reddit called “regedit” will all the advice on what registry keys to fix - so unintentionally it might not be the worst advice - apart from the word “simple”.

        edit: reddit isshit
        https://www.reddit.com/r/regedit/

    • baseless_discourse@mander.xyz
      link
      fedilink
      arrow-up
      9
      arrow-down
      3
      ·
      edit-2
      7 months ago

      Let’s not pretend regedit is a good thing, it is littered with unreadable keys and has terrible UI and UX. And it requires root privileges to edit anything.

      I believe one of the worst disservice Windows has done to secure computing is to make users desensitized about root privileges. Every single action you do need root privileges, install app, changing config, people would just click allow whenever UAC pops up…

      This means any program can easily inject rootkit into Windows during install, without the users noticing a thing, like LoL.

        • baseless_discourse@mander.xyz
          link
          fedilink
          arrow-up
          2
          arrow-down
          3
          ·
          edit-2
          7 months ago

          You don’t need to use sudo command that much on linux. I personally only need to use it to edit two config files when setting up my system, that is it.

          One for pre-connection mac randomization, one to enable a kernel module I need, because my distro disable many of them by default. I am very conscious of the changes I am making. However on Windows, I have no idea what the app installers are doing.

          Not to mention, most users don’t even need to make these changes. Per-network randomization is likely good enough for most user, and they probably not on a security-hardened distro which disables tons of kernel modules.

          For a office work and entertainments, flatpak apps are more than enough. And developers can choose to get their sdk via flatpak or podman dev containers. None of them requires sudo.

          Is there a good reason for a everyday user (not a tinker nor a system admin) to use sudo in linux?

          • Aux@lemmy.world
            link
            fedilink
            arrow-up
            6
            arrow-down
            2
            ·
            7 months ago

            Not sure what you’re doing there, but it’s pretty much every other command needs sudo here… Can’t even install updates without it.

            • uis@lemm.ee
              link
              fedilink
              arrow-up
              3
              ·
              7 months ago

              Except when you install something on linux package manager of your distro is executed as opposed to installer that was made by developer of package you are installing. And you probably install install packages from your distro’s repos, unless you are on Debian of course.

              Or you can run package manager as user that usually installs in ~/.local. Or unpack yourself.

              • areyouevenreal@lemm.ee
                link
                fedilink
                arrow-up
                1
                ·
                7 months ago

                Package managers have post install scripts and hooks that would allow you to install a rootkit. Then again they can also just add services on many Linux systems, which can run as root. Just put a systemd unit file in the right place and enable it.

                The security advantage of Linux is having trusted repos and using things like FlatPak. System packages being malicious would very much be able to infect a system. Just look at the XZ backdoor for an example.

            • baseless_discourse@mander.xyz
              link
              fedilink
              arrow-up
              1
              ·
              edit-2
              7 months ago

              The safest way to install update is via offline updates, which don’t need sudo on the user side, but requires a restart. See https://fedoramagazine.org/offline-updates-and-fedora-35/ for a good explanation.

              I believe offline upgrade is also the default on every OS out there, for example gnome software only installs updates offline.

              Even if you have to use sudo to upgrade (or journalctl, dmesg, both are sysadmin tasks and not typically done by a normal user), you are still only giving root privileges to these trusted programs distributed by your distro, not some random installers on the internet, unless you are using AUR.

              I am genuinely curious what other commands with sudo that you need to run on a daily bases, for tasks that is unrelated to system administration?