Skip to content

feat: Common commands gave wrong answers compared to real Linux - #43

Merged
Aleksandergreg merged 2 commits into
mainfrom
feat/linux-improvements
Oct 10, 2026
Merged

Aleksandergreg merged 2 commits into
mainfrom
feat/linux-improvements

Conversation

@Aleksandergreg

Copy link
Copy Markdown
Owner
  • printf '%s\n' a b c printed only a. The format now repeats, and %d and widths work.
  • tail -n +2 printed the last 2 lines instead of starting at line 2. head -n -1 works now too.
  • tr '[:lower:]' '[:upper:]' garbled text instead of uppercasing it.
  • grep 'ERROR|WARN' found nothing, and sed 's/(x)/\1/' and s/x/[&]/ didn't work. Both now use standard Linux regex rules, with -E for the extended form.
  • sort -n put 100ms before 9ms.
  • wc file printed only the line count.
  • [!x]* globs matched the opposite of what they should.
  • rm deleted directories without -r.
  • touch -a f created a file named -a; that and cat -n, mv -f and similar now say "unknown option" instead.

Game and CLI fixes (done by a helper agent in a separate copy, then merged and reviewed by me):

  • Moving to a Docker mission from inside a game when Docker isn't running used to end the whole session; now the player stays in the current mission.
  • After Docker missions, the "continue with…" hints pointed players to the Linux missions instead.
  • Hints the player already paid for can now be re-read.
  • A corrupt profile file now names its path, and doctor keeps running its other checks.
  • help, man, clear and history no longer count toward the "Command Collector" achievement.
  • Flag errors no longer print twice, and play 4 --once now works.
  • In-game list --campaign now finds Docker worlds too.

Smaller fixes:

  • Every mission now has a home directory; most were missing it, so plain cd failed.
  • A paragraph was duplicated in the README.
  • Several docs had wrong text: the world naming, and saying hints cost "bonus XP" when they actually reduce the mission's reward.

Aleksandergreg and others added 2 commits October 10, 2026 10:11
- printf '%s\n' a b c printed only a. The format now repeats, and %d and widths work.
- tail -n +2 printed the last 2 lines instead of starting at line 2. head -n -1 works now too.
- tr '[:lower:]' '[:upper:]' garbled text instead of uppercasing it.
- grep 'ERROR\|WARN' found nothing, and sed 's/\(x\)/\1/' and s/x/[&]/ didn't work. Both now use standard Linux regex rules, with -E for the extended form.
- sort -n put 100ms before 9ms.
- wc file printed only the line count.
- [!x]* globs matched the opposite of what they should.
- rm deleted directories without -r.
- touch -a f created a file named -a; that and cat -n, mv -f and similar now say "unknown option" instead.

Game and CLI fixes (done by a helper agent in a separate copy, then merged and reviewed by me):
- Moving to a Docker mission from inside a game when Docker isn't running used to end the whole session; now the player stays in the current mission.
- After Docker missions, the "continue with…" hints pointed players to the Linux missions instead.
- Hints the player already paid for can now be re-read.
- A corrupt profile file now names its path, and doctor keeps running its other checks.
- help, man, clear and history no longer count toward the "Command Collector" achievement.
- Flag errors no longer print twice, and play 4 --once now works.
- In-game list --campaign now finds Docker worlds too.

Smaller fixes:
- Every mission now has a home directory; most were missing it, so plain cd failed.
- A paragraph was duplicated in the README.
- Several docs had wrong text: the world naming, and saying hints cost "bonus XP" when they actually reduce the mission's reward.
The .claude/worktrees/agent-ac16cd5b6a7dba041 helper worktree was
committed as a gitlink without a .gitmodules entry, which made
actions/checkout fail during submodule cleanup. Untrack it and ignore
agent worktrees.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Aleksandergreg
Aleksandergreg merged commit 87c076f into main Oct 10, 2026
7 checks passed
@Aleksandergreg
Aleksandergreg deleted the feat/linux-improvements branch October 10, 2026 08:16
Aleksandergreg pushed a commit that referenced this pull request Oct 10, 2026
🤖 I have created a release *beep* *boop*
---


##
[0.10.0](v0.9.0...v0.10.0)
(2026-10-10)


### Features

* Common commands gave wrong answers compared to real Linux
([#43](#43))
([87c076f](87c076f))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant