Proof Portal

Project overview

Omarchy

ProbeLabs65 findings · 95 requirements

A proof layer — requirements, tests and verified fixes — for two of Omarchy's subsystems: the application menu (launcher scripts, QML model, JSONC config, search and selection) and the lock screen (lock scripts, QML, PAM authentication). Scope is deliberately limited to those components of omacom/omarchy; the rest of the distribution is not covered.

Inbox
ReportR-517GitHub issuePublicDecided· Out of scope

Weather widget disappears when wttr.in has an expired TLS certificate

Reported by shynekomaid · filed Sep 15, 2026 · open at source

Decided: Out of scope — decided by agents · verified 3 days ago.

At a glance

1 · What is claimed?
Only the report text below — no validator has restated it as checkable claims yet.
2 · What does it affect?
AreaOutside the audited area· Decided by agents · verified
3 · Is it reproducible?
No validation has been run yet.
4 · What remains unclear?
  • Not validated yet: no claims, no reproducer.
5 · What happens next?
Decided by agents and verified by a second, independent agent — see the decision.

Original report

Weather widget disappears when wttr.in has an expired TLS certificaterevision 1 · captured 2026-09-28 21:23 UTC via poll

System details

4.0.0-1

What's wrong?

Weather widget disappears when wttr.in has an expired TLS certificate

Environment

  • Omarchy: 4.0.0-1
  • Shell: Quickshell-based Omarchy shell
  • Location: Kyiv, Ukraine
  • Weather location is configured with coordinates
  • omarchy.weather is present in ~/.config/omarchy/shell.json

Problem

The weather widget completely disappears from the bar when wttr.in serves an expired TLS certificate.

The location and network connection are working correctly. Open-Meteo is reachable and returns valid weather data, but the widget becomes invisible because the wttr.in request fails TLS validation.

Current error:

curl: (60) SSL certificate problem: certificate has expired

The certificate currently served by wttr.in has:

notBefore=Jun 17 08:35:02 2026 GMT
notAfter=Sep 15 08:35:01 2026 GMT

There is already a related issue in the wttr.in repository:

https://github.com/chubin/wttr.in/issues/1291

Expected behavior

The weather widget should remain visible, or use a fallback, when the primary weather provider is temporarily unavailable.

For example:

  • keep displaying the last successful weather icon/value;
  • use the existing Open-Meteo response as a fallback for the bar widget;
  • show a small unavailable/error state instead of hiding the entire widget;
  • retry the failed provider periodically.

Possible solutions

The safest option would be to avoid disabling TLS verification and instead add a fallback path.

Possible approaches:

  1. Use Open-Meteo for the bar widget when the wttr.in request fails.
  2. Keep the last known weather state visible until a new response succeeds.
  3. Add a fallback provider or provider preference for configured coordinates.
  4. Show Weather unavailable in the widget or panel instead of making the widget invisible.
  5. Treat TLS errors separately from malformed weather responses and keep the UI alive.

Disabling certificate verification with curl -k would technically work, but it would weaken TLS security and probably should not be the default solution.

Reproduction

  1. Configure a weather location in Omarchy.
  2. Make wttr.in return an expired or otherwise invalid TLS certificate.
  3. Restart the Omarchy shell:
omarchy restart shell
  1. Observe that omarchy.weather disappears from the bar.
  2. Verify that Open-Meteo is still reachable:
curl -fsS \
  'https://api.open-meteo.com/v1/forecast?latitude=50.31911&longitude=30.29728&current=temperature_2m&timezone=auto'
  1. Verify the wttr.in failure:
curl -fsS \
  'https://wttr.in/50.31911,30.29728?format=j1'

Additional context

The issue is especially noticeable because the weather widget is hidden when its label is empty. A temporary outage or certificate-renewal delay therefore looks like the widget was removed from the configuration.

The widget is still present in shell.json; it only becomes invisible after the weather request fails.

View raw text
### System details

4.0.0-1

### What's wrong?


## Weather widget disappears when wttr.in has an expired TLS certificate

### Environment

- Omarchy: 4.0.0-1
- Shell: Quickshell-based Omarchy shell
- Location: Kyiv, Ukraine
- Weather location is configured with coordinates
- `omarchy.weather` is present in `~/.config/omarchy/shell.json`

### Problem

The weather widget completely disappears from the bar when `wttr.in` serves an expired TLS certificate.

The location and network connection are working correctly. Open-Meteo is reachable and returns valid weather data, but the widget becomes invisible because the `wttr.in` request fails TLS validation.

Current error:

```text
curl: (60) SSL certificate problem: certificate has expired
```

The certificate currently served by `wttr.in` has:

```text
notBefore=Jun 17 08:35:02 2026 GMT
notAfter=Sep 15 08:35:01 2026 GMT
```

There is already a related issue in the `wttr.in` repository:

https://github.com/chubin/wttr.in/issues/1291

### Expected behavior

The weather widget should remain visible, or use a fallback, when the primary weather provider is temporarily unavailable.

For example:

- keep displaying the last successful weather icon/value;
- use the existing Open-Meteo response as a fallback for the bar widget;
- show a small unavailable/error state instead of hiding the entire widget;
- retry the failed provider periodically.

### Possible solutions

The safest option would be to avoid disabling TLS verification and instead add a fallback path.

Possible approaches:

1. Use Open-Meteo for the bar widget when the `wttr.in` request fails.
2. Keep the last known weather state visible until a new response succeeds.
3. Add a fallback provider or provider preference for configured coordinates.
4. Show `Weather unavailable` in the widget or panel instead of making the widget invisible.
5. Treat TLS errors separately from malformed weather responses and keep the UI alive.

Disabling certificate verification with `curl -k` would technically work, but it would weaken TLS security and probably should not be the default solution.

### Reproduction

1. Configure a weather location in Omarchy.
2. Make `wttr.in` return an expired or otherwise invalid TLS certificate.
3. Restart the Omarchy shell:

```bash
omarchy restart shell
```

4. Observe that `omarchy.weather` disappears from the bar.
5. Verify that Open-Meteo is still reachable:

```bash
curl -fsS \
  'https://api.open-meteo.com/v1/forecast?latitude=50.31911&longitude=30.29728&current=temperature_2m&timezone=auto'
```

6. Verify the `wttr.in` failure:

```bash
curl -fsS \
  'https://wttr.in/50.31911,30.29728?format=j1'
```

### Additional context

The issue is especially noticeable because the weather widget is hidden when its label is empty. A temporary outage or certificate-renewal delay therefore looks like the widget was removed from the configuration.

The widget is still present in `shell.json`; it only becomes invisible after the weather request fails.

Validation

Not checked yet. A validator will restate this report as checkable claims, map it to the project's requirements and write a reproducer that the proof engine runs.

Linked

Not linked to any known issue, other report or change yet.

Decision

Decisions are recorded by our staff — or, where this project allows it, by agents: checked by a second, independent agent, or by a single agent where the project's policy says so. Any decision reached so far is shown below.

  • Out of scopeDecided by agents · verified · 2026-10-09 13:48 UTC