Krzysztof Wolicki
f4a2273ad9
os/xdg: Avoid allocations on non-Windows systems.
...
os/desktop: Add TODO
2023-10-19 17:22:11 +02:00
Krzysztof Wolicki
3936b471a8
Disable iconv on Windows by default (enabled via cli flag).
...
Skip various tests not implemented on windows.
2023-10-19 09:39:20 +02:00
Mitchell Hashimoto
2b28106837
update zig
2023-10-02 08:18:35 -07:00
Mitchell Hashimoto
3c0700c6b0
os: launchFromDesktop works even if the artifact is a lib
...
Fixes #598
2023-09-30 19:09:52 -07:00
Mitchell Hashimoto
d03083c7f5
apprt/gtk: default working-directory to home if launched from desktop
...
Fixes #573
2023-09-29 15:52:45 -07:00
Mitchell Hashimoto
d878d16779
os: unset lang completely setlocale fails
2023-09-29 13:11:07 -07:00
Mitchell Hashimoto
38a7c2270b
os: we need to copy the old lang pointer before we unsetenv
2023-09-29 12:56:43 -07:00
Mitchell Hashimoto
0026c40062
Simplify setlocale logic to rely on libc to fail if invalid
...
Instead of checking if a locale is valid, let's change this logic:
1. We first try setlocale to inherit from env vars, system default.
2. Next, we fall back to unsetting LANG if it was set manually,
allowing us to fall back to system defaults.
3. We fall back to en_US.UTF-8.
2023-09-26 17:35:19 -07:00
Mitchell Hashimoto
ea4bc95f43
os: appendEnv
2023-09-20 13:02:06 -07:00
Will Pragnell
8f2ab46e1e
windows: use cross platform consts where available
2023-09-15 16:01:33 -07:00
Will Pragnell
57894786d4
windows: implement tmpDir
2023-09-14 20:48:09 -07:00
Jonathan Marler
a2e881ff4e
windows: initial support for zig build test
...
Makes progress getting "zig build test" to work on windows. Mostly
fixed issues around build configuration and added some branches throughout
the Zig code to return/throw errors for unimplemented parts.
I also added an initial implementation for getting the home dir.
2023-09-14 03:15:40 -06:00
Mitchell Hashimoto
bd7cc4b71d
core: App looks up resources dir on startup
2023-08-08 09:21:52 -07:00
Mitchell Hashimoto
4e9dcf6b62
os: add resourcesDir function to find app resource dir
2023-08-08 09:17:14 -07:00
Thorsten Ball
5472d03832
locale: remove default value for local dev env
...
I commented this out to test something locally and it compiles & runs
fine on macOS with Xcode. Looks like it's not needed anymore.
2023-07-19 06:46:01 +02:00
Thorsten Ball
4b48d42a07
locale: set LANG to the fallback value if we have invalid locale
...
See #201 for more information.
Problem is that while we fall back to a default value to pass to
`setlocale`, we don't set a `LANG` and instead reset it to `""`.
What this does here is it changes the resetting to `""` and instead sets
it to the default value.
2023-07-19 06:44:35 +02:00
Mitchell Hashimoto
4176c6bdbf
reset LANG env var if we set it and it is invalid
...
This was breaking downstream programs, see #201
2023-07-18 10:49:43 -07:00
Mitchell Hashimoto
0849aa8f20
validate locale prior to setting, fallback to en_US.UTF-8
...
Fixes #201
I don't fully understand locales, but it appears that the locale
returned from NSLocale can be "valid" in general but invalid according
to libc's locale API. If you attempt to `setlocale` with this bad
locale, it defaults everything to "C", which ends up breaking a lot of
things.
This commit validates the locale, and if it is invalid, we default to
"en_US.UTF-8" so things tend to work. This behavior can be overridden
using standard environment variables (LANG, LC_ALL, etc.).
This also doesn't touch env vars so further subprocesses from the shell
see original locale env vars.
2023-07-11 11:50:12 -07:00
Mitchell Hashimoto
bf25bf0a6a
move a bunch of files to src/os
2023-07-10 16:48:22 -07:00
Mitchell Hashimoto
9a0d131b5b
move TempDir to src/os and use the real tmpDir
2023-07-09 12:14:05 -07:00
Mitchell Hashimoto
26e17de777
add os.tmpDir to get the recommended temp dir base path
2023-07-09 11:58:04 -07:00
Mitchell Hashimoto
314f9287b1
Update Zig ( #164 )
...
* update zig
* pkg/fontconfig: clean up @as
* pkg/freetype,harfbuzz: clean up @as
* pkg/imgui: clean up @as
* pkg/macos: clean up @as
* pkg/pixman,utf8proc: clean up @as
* clean up @as
* lots more @as cleanup
* undo flatpak changes
* clean up @as
2023-06-30 12:15:31 -07:00
Mitchell Hashimoto
8a83a1e4a9
fix min usage in src/os
2023-06-25 11:17:51 -07:00
Mitchell Hashimoto
56f8e39e5b
Update zig, mach, fmt
2023-06-25 11:08:20 -07:00
Mitchell Hashimoto
77dcc10f80
linux: fit gtk/flatpak builds
2023-05-27 10:01:20 -07:00
Mitchell Hashimoto
83a1d783b1
termio: implement kill command for flatpak
2023-02-27 11:44:18 -08:00
Mitchell Hashimoto
630374060d
passwd uses new FlatpakHostCommand
2023-02-27 11:02:59 -08:00
Mitchell Hashimoto
f64d871847
os: FlatpakHostCommand uses thread with its own event loop
2023-02-27 10:18:56 -08:00
Mitchell Hashimoto
f89d202b0d
flatpak.HostCommand wip
2023-02-26 10:28:54 -08:00
Mitchell Hashimoto
0a041957f1
os: add flatpak detection
2023-02-25 21:20:48 -08:00
Mitchell Hashimoto
ec956debb7
Command/Pty work better with Flatpak but not 100% yet
2023-02-25 21:19:57 -08:00
Mitchell Hashimoto
230157d60b
remove unused import
2022-12-31 09:07:14 -08:00
Mitchell Hashimoto
e8a1fe4d87
move wasm target struct around to avoid analyzing wasm file on non-wasm
2022-12-31 09:04:11 -08:00
Mitchell Hashimoto
8b6128ddfc
start making the src more wasm target aware
2022-12-31 08:57:12 -08:00
Mitchell Hashimoto
ce490e21ea
can specify a wasm target in build
2022-12-31 08:53:11 -08:00
Mitchell Hashimoto
d761bae27b
wasm: log should use stack allocated memory first
...
This allows log messages to come through even when OOM.
2022-12-26 22:07:33 -08:00
Mitchell Hashimoto
af6fb294d0
wasm: use wasm allocator, rather than page allocator
...
Uses 4x less pages because we're not allocating 1 page (more or less)
per allocation and instead actually bin-packing it a bit.
2022-12-24 16:41:37 -08:00
Mitchell Hashimoto
241bfee7d4
wasm: use shared, imported memory
...
This switches our wasm build to use "shared" memory. Shared memory can
be shared across multiple web workers, which is something we'll want to
support for our multi-threaded behaviors later.
Shared memory has a number of different restrictions so this updates
zig-js to support it as well as updates some of our functions that need
to be aware of it.
2022-12-24 16:24:43 -08:00
Mitchell Hashimoto
b3090f60af
mac: in debug, set locale to en_US if not manually set
...
See comment, I think this is a Zig miscompilation...
2022-12-15 14:50:52 -08:00
Mitchell Hashimoto
c48d8cd151
hook up logging to wasm, example uses new zig-js package
2022-12-04 13:16:54 -08:00
Mitchell Hashimoto
437f1772f1
logging works for wasm
2022-12-04 12:29:11 -08:00
Mitchell Hashimoto
66078493e6
mac: get default click repeat interval from NSEvent
2022-11-22 11:20:00 -08:00
Mitchell Hashimoto
688ec71a74
don't change cursor to ibeam on macOS prior to Ventura
...
glfw crashes with our tab group usage (see comment)
2022-11-20 09:03:28 -08:00
Mitchell Hashimoto
56504a342f
better commenting
2022-11-14 10:03:39 -08:00
Mitchell Hashimoto
20cbee5370
locale always requires libc
2022-11-14 10:02:48 -08:00
Mitchell Hashimoto
f39484541f
set system locale on startup, read Mac locale from OS preferences
2022-11-14 09:59:22 -08:00