Releases: maxgmr/tlenix
Releases · maxgmr/tlenix
v0.1.0-beta.4
[0.1.0-beta.4] - 2025-08-04
Added
ted: A basic Vim-style text editor.codebreaker: A simple code-guessing game inspired by the "Mastermind" board game.- Random number generation.
- A collection of common ANSI console control sequences.
- Time measurement.
- The Tlenix source code is now included in the installation within
/usr/src/tlenix. - Cursor shape switching.
Changed
- Bumped memory allocator to 256 MiB.
v0.1.0-beta.3
[0.1.0-beta.3] - 2025-06-12
Added
cat: Concatenate files and print on the standard output.clear: Clears the terminal screen.mv: Moves/renames files.File::read_to_bytes: Reads the whole file into a byte vector.format!: Just like thestdmacro!rename: Changes the name/path of a file/directory.
Changed
- Modernized file stats format (
fstat->statx). - Statically access the standard input, standard output, and standard error streams.
- Prettier test output alignment.
- Fixed
./usb-installfile schema. READMEinstructions now use./usb-installscript.
v0.1.0-beta.2
[0.1.0-beta.2] - 2025-05-27
Added
hello: Minimal demo Tlenix program. Useful as a template/example.printenv: Print the environment variables.
Removed
- Built-in
pwdfrommash(to be later implemented as a standalone program) vec_into_nix_bytesandvec_into_nix_strings(obsolete)
v0.1.0-beta.1
[0.1.0-beta.1] - 2025-05-26
Added
- Fully-bootable USB-based system on real hardware!
ls: List entries within a directory.mashcan now execute programs.- Linux kernel custom configuration in
config/.config. - GRUB custom configuration in
config/grub.cfg. - Nicer terminal font.
- Pretty logo on boot.
- USB installation script (
usb-install).
Changed
- Overhauled
ExitStatusto make it more expressive. - Proper
execute_processerror reporting.
Removed
mk-release-binsscript. Superseded byusb-install.
v0.1.0-alpha.9
[0.1.0-alpha.9] - 2025-05-24
Added
initramfs_init, aninitprogram specifically for theinitramfs.- Create and remove directories (
mkdir,rmdir). - Delete files (
rm). - Get entries of a directory (
File::dir_ents). - Change the root mount (
pivot_root). - Execute a program (
execve). - Directly set the mode of a file when creating one (
OpenOptions::set_mode). - Read a file directly into a
String(File::read_to_string). - Change process root directory (
chroot).
Changed
- Restricted raw syscalls to crate only.
- Increased heap size from 16 KiB to 64 KiB.
v0.1.0-alpha.8.1
[0.1.0-alpha.8.1] - 2025-05-22
Changed
- Fixed custom target issues causing segfaults in emulators.
v0.1.0-alpha.8
[0.1.0-alpha.8] - 2025-05-21
Added
mountandumountfunctions.initnow tries to mount/procand/sys.
v0.1.0-alpha.7
[0.1.0-alpha.7] - 2025-05-20
Added
- Coloured test output.
NixStringandNixBytes. Null-terminated byte vectors compatible with Linux syscalls.Filetype. Provides filesystem operations on files. Hides the file descriptor and closes the file when dropped.OpenOptionstype. Allows easy customization ofFileopen flags. Guarantees safe open flag combinations when opening a file.- Ability to create files with defined permissions.
SyscallArgtype, allowing for more flexible arguments forsyscall!andsyscall_result!- Pretty colours in tests!
Changed
- General rewrite of codebase.
- Interface for filesystem operations- now, any file-based operations must be called as
Filemethods.
Removed
mash's ability to execute programs. This will be re-implemented later.NullTermStringandNullTermStr.read_from_file().open_no_create().change_program_break().
v0.1.0-alpha.6
[0.1.0-alpha.6] - 2025-03-09
Added
- Heap-based allocation and data types.
mashprocess execution.
Changed
- Tests now return with success or failure.
v0.1.0-alpha.5
[0.1.0-alpha.5] - 2025-03-08
Added
- Colourful
mashprompt. - Show basename in
mashprompt. poweroffcommand.rebootcommand.