This commit addresses the issue of unstable key ordering in default.nix.
Previously, the keys could appear in different orders such as "stable,
beta, dev" or "beta, stable, dev".
To simplify the reviewing process and minimize merge conflicts, this
commit introduces the use of OrderedDict, ensuring consistent key
ordering for upstream sources.
Also, the gzip import was unused, so just drop it.
Fixed the $out/bin/microsoft-edge-stable symlink which is
part of the source archive to point to the correct binary.
Resolves execution problems via `nix run nixpkgs#microsoft-edge`.
Also added trailing newline to update.py.
This fixes Microsoft Edge crashing if someone tries to open or save a file via the file picker. For example, to debug the functionality, I went to:
```
https://drive.google.com -> New -> File upload
```
This used to crash with the following error:
```
[...]
(microsoft-edge:22536): GLib-GIO-ERROR **: 11:11:46.555: No GSettings schemas are installed on the system
[0302/111146.559740:ERROR:elf_dynamic_array_reader.h(64)] tag not found
[0302/111146.559913:ERROR:process_memory_range.cc(75)] read out of range
[0302/111146.568118:ERROR:watson_metadata.cc(170)] unexpected header
Trace/breakpoint trap (core dumped)
```
This PR fixes this error by explicitly making `gsettings-schemas` from
`gtk` available to `microsoft-edge` via `XDG_DATA_DIRS`.
Furthermore, this PR fixes some broken `subsituteInPlace` commands.
Thanks to Jona Enzinger (`@JonaEnz`) who noticed that `--replace
"''${XDG...` should be written as `--replace "\''${XDG...`.