About this newsletter
I'm going to try this newsletter thing by posting updates on my attempt to create a usable Linux shell. 😱
Issues
-
hash v25
hash v25
-
Fix tab completion bug with paths starting with tilde (
~). -
APT GitHub Page logo change from shell emoji to hash logo.
-
-
hash v24
hash v24 continues to polish APT updates for Ubuntu and Debian users. I've also updated instructions in the releases and the repo's README.
Not a very exciting rele
… -
hash v23
hash v23 fixed the workflow responsible for building the debian package. That's it. That's the post.
-
hash v22
In hash v22 I fixed a few bugs found when sourcing the
.hashrcconfiguration.Documentation review and improved the example
.hashrcprovided in the repo.Ubuntu
… -
hash v21
hash v21 fixes an insufficient permissions issue on the update function. Now the user is properly prompted for their password.
-
hash v20
The hash v19 newsletter issue contains the completed list of items that I thought were required to have a somewhat functional *nix shell.
Moving forward I will
… -
hash v19
hash v19 brings mostly housekeeping and quality of life items.
-
Security Policy
-
Security Vulnerabilities Private Disclosure
-
Security Updates Backport Strategy
-
C
-
-
hash v18
Todo
-
Basic Testing ✅
-
Pipes (
ls | grep txt) ✅ -
I/O redirection (
cat < input.txt > output.txt) ✅ -
Background processes (
sleep 10 &) ✅ -
Environm
-
-
hash v17
Integrations and unit tests have been extended to macOS (Apple Silicon) 14, 15, and 26.
Prebuilt binaries will be available for macOS (Apple Silicon) from hash v17 forward.
… -
hash v16
Shell Scripting in Hash
Hash shell supports POSIX-compatible shell scripting, allowing you to automate tasks and create reusable scripts.
Running Scripts
Shebang Line
Create a script file with the hash shebang:
… -
hash v15
Logout File
~/.hash_logoutWhen exiting a login shell (via
…exitorlogout), hash executes commands in `~/.hash_lo -
hash v14
Login Shell Behavior
Hash supports proper login shell behavior, loading different startup files depending on how it's invoked.
Login Sh
… -
hash v13
Todo
-
Basic Testing ✅
-
Pipes (
ls | grep txt) ✅ -
I/O redirection (
cat < input.txt > output.txt) ✅ -
Background processes
-
-
hash v12
Todo
-
Basic Testing ✅
-
Pipes (
ls | grep txt) ✅ -
I/O redirection (
cat < input.txt > output.txt) ✅ -
Background
-
-
hash v11
Todo
-
Basic Testing ✅
-
Pipes (
ls | grep txt) ✅ -
I/O redirection (
cat < input.txt > output.txt) ✅ -
Background processes (`sl
-
-
hash v10
Why is the version formatted like that?
I went with linear versioning after a small epiphany. Read my [rant](https://redelivre.net/posts/
… -
hash v9
Why is the version formatted like that?
I went with linear versioning after a small epiphany. Read my [rant](https://redelivre.n
… -
hash v0.0.8
Todo
-
Basic Testing ✅
-
Pipes (
ls | grep txt) -
I/O redirection (
cat < input.txt > output.txt) -
Background processes (`sleep 10 &
-
-
hash v0.0.7
-
Environment variable expansion.
-
exportBuilt-in command.
Todo
-
Basic Testing ✅
-
Pipes (
ls | grep txt) -
I/O redirection (`cat < input.txt > o
-
-
hash v0.0.6
Added line editing key bindings.
Cursor Movement
| Key | Action |
|-----|--------|
| ← (Left Arrow) | Move cursor left one character |
| → (Right Arrow) | Move cursor right one character |
| Ctrl+A | Move to be
… -
hash v0.0.5
Something I missed in the previous release was that my prompt was being quoted, yeah, like
'blah blah #>'🤦🏻♂️ That eye sore is fixed now.Tilde (
…~) expansion now works properly and it is interpreted as the home dire -
hash v0.0.4
-
Fixed an extra space that appeared in front of the prompt (PS1), quite annoying.
-
GitHub Action upgrades.
-
SonarQube issue fixes.
Todo
-
Basic Testing ✅
-
Pipes (
ls | grep txt) -
I/O redirection (`cat < input.txt >
-
-
.hashrc
The next thing I wanted to do was to be able to customize my prompt. But that quickly sent me into a rabbit-hole. Because to do that properly, I would need to implement a traditional "run command" configuration file, a .
… -
Colors
What better way to test and improve hash than to make it my default shell 😉 I think there will be many annoying things that will motivate me to make it better.
I've added a few thin
… -
Quotes Handling, and other things
It was a giant mistake naming this project "hash". It just so happens that it is also the POSIX built-in command
…hash, which apparently I will be implement soon. The IEEE 1003.1-