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.
Don’t forget about the hidden ProgramData directory at the root of the file system. Ableton Live likes to install there for some ungodly reason.
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.
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.
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.
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.
It could also be stored in the registry.
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
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…
HKEY means “handle to registry key”… Not that that helps anything.
When code opens a file, device, etc, it’s given a “handle” to it, which is an internal reference so that Windows knows which file you’re reading or writing, and it keeps track of where you are in the document. Similarly, HKEY_CURRENT_USER is the handle that gives you the current user part of the registry.
To this day, I still don’t know how to set a path variable permanently in any Linux distro
I do feel like setting environment variable on linux is not as intuitive as on windows, but after I setup my workflow, I realized I never have the need to manually set any environmental variable besides in flatseal.
Maybe you have a specific use case for it?