Commit Graph

93 Commits

Author SHA1 Message Date
Nathan Fisher d248f7d17b Remove `Default` constraint on `Cmd` trait and begin removing
derive(Default) from applets
2023-04-17 23:27:57 -04:00
Nathan Fisher 44914ced6f Broke `stat` out into workspace crate; Reduced clap features for smaller
size;
2023-02-21 00:07:16 -05:00
Nathan Fisher 102678015b Fixed clippy lints 2023-02-20 23:00:35 -05:00
Nathan Fisher 5a7c2008b5 Add `df` applet; Finalize some bootstrap details; 2023-02-17 19:01:30 -05:00
Nathan Fisher 423592973f Revert "Fix bootstrap for all three binaries"
This reverts commit 0450cdfee6.
2023-02-13 10:32:36 -05:00
Nathan Fisher 0450cdfee6 Fix bootstrap for all three binaries 2023-02-13 10:30:46 -05:00
Nathan Fisher 83fcb52d80 Use `errno` workspace crate for `mount` and `stat` workspace crates 2023-02-13 00:41:58 -05:00
Nathan Fisher 39c3803acb Add `utilbox` binary and `umount` applet; Move `blkid` `mountpoint` and
`clear` applets into `utilbox`
2023-02-06 18:57:28 -05:00
Nathan Fisher 06b88d2c24 Refactoring:
- Split into workspace crates
- Split into two binaries `corebox` and `hashbox`
- Add `mount` crate to workspace to prepare for third binary `utilbox`
2023-02-05 23:50:59 -05:00
Nathan Fisher 59b80e3b85 Add `ln` applet (untested); Switch to _at versions of certain syscalls
due to not existing for every platform
2023-02-05 00:51:11 -05:00
Nathan Fisher 859071698a Use `args::file()` for input spec - base32/base64/rev 2023-02-04 11:20:45 -05:00
Nathan Fisher aa89efe63a Do not display default value of "-" for input in hash applets 2023-02-04 11:12:32 -05:00
Nathan Fisher f0099a2958 Add `b2sum` applet - switch to `blake2b_simd` crate to get around
limitations of `blake2` crate, which will not accept a non-const
numerical specifier for length
2023-02-04 11:06:24 -05:00
Nathan Fisher 6b30c356dd Change `Cmd::Run` signature to take `&clap::Options` instead of
`Option<&clap::Options>` - saves 10k
2023-02-04 08:54:27 -05:00
Nathan Fisher 5fd1bb1220 Add `sha284sum` and `sha512sum` applets 2023-02-04 01:06:54 -05:00
Nathan Fisher 5e0c1141ef Create generic `hash` module; Add `sha1sum`, `sha224sum` and `sha256sum`
applets
2023-02-04 00:56:02 -05:00
Nathan Fisher 8df1f99f70 Add `md5sum` applet 2023-02-03 19:12:40 -05:00
Nathan Fisher bcb5725a5c Add unistd::symlink function 2023-02-02 23:47:46 -05:00
Nathan Fisher 6963ba4a4b Convert several commands to use raw system calls instead of libc
functions
2023-02-02 23:34:37 -05:00
Nathan Fisher fcc8abb67b Remove some allocations 2023-01-27 00:15:04 -05:00
Nathan Fisher 754f604603 Add `mktemp` applet 2023-01-24 00:51:36 -05:00
Nathan Fisher 5076dcc350 Add `hostid` applet 2023-01-23 10:17:17 -05:00
Nathan Fisher 3ef3a8b3aa Use `Bitflags` trait and `Bit` enum in `which` applet;
Move `Bit` and `Who` enums out of `mode` module into submodules
2023-01-23 09:39:02 -05:00
Nathan Fisher 6c0b7cb787 Use `Bitflags` trait in `mode::Parser` 2023-01-23 09:10:08 -05:00
Nathan Fisher 71915916a0 Add `wc` applet; Add `Bitflags` trait; 2023-01-23 00:43:54 -05:00
Nathan Fisher 9a7af682b7 Add `readlink` applet 2023-01-22 10:24:21 -05:00
Nathan Fisher 7630e016c9 Add `realpath` applet 2023-01-22 00:26:26 -05:00
Nathan Fisher 862ad82b47 Add `chroot` applet 2023-01-21 20:55:59 -05:00
Nathan Fisher eeb9a61fa3 Add `logname` applet 2023-01-21 19:34:02 -05:00
Nathan Fisher d92cb9f208 Add `printenv` applet 2023-01-21 19:20:30 -05:00
Nathan Fisher 9df197a4b9 Add `chgrp` applet; Add `args` module for commonly used args to increase
consistency
2023-01-21 18:25:09 -05:00
Nathan Fisher f68ae6df91 chmod - implement `quiet` 2023-01-21 09:11:54 -05:00
Nathan Fisher 71a9f8839a Add `mknod` applet (untested) 2023-01-21 01:54:52 -05:00
Nathan Fisher e9e9c53f19 Add `mkfifo` applet 2023-01-20 23:53:28 -05:00
Nathan Fisher 091bf713bd Add `pwd` applet 2023-01-20 22:46:16 -05:00
Nathan Fisher 0453acd0de Add `chmod` applet (untested) 2023-01-20 12:08:04 -05:00
Nathan Fisher e648a8a83a Cleanup `chown` applet 2023-01-19 19:08:09 -05:00
Nathan Fisher 7fc064a441 chown - Removed several clones 2023-01-18 21:45:18 -05:00
Nathan Fisher 3016f4c234 Add `chown` applet (untested not optimized) 2023-01-18 21:42:11 -05:00
Nathan Fisher 3c27255c5b Fix previous fix - doh! 2023-01-17 17:39:50 -05:00
Nathan Fisher b94ebaa4bd rm - fix interactive prompts 2023-01-17 17:39:01 -05:00
Nathan Fisher 8a14cfb590 Add `rm` applet 2023-01-17 17:27:41 -05:00
Nathan Fisher f7b7fcca16 Add `rmdir` applet 2023-01-16 23:44:21 -05:00
Nathan Fisher 1ff61def39 New trait `Mode`, currently just prints the symbolic representation of a
Unix mode, as extracted from u32
2023-01-16 22:30:12 -05:00
Nathan Fisher 7da63bb1b5 Improve docs 2023-01-16 18:28:37 -05:00
Nathan Fisher e9819b6228 More test coverage fixed some logic errors; Impl BitAnd, BitAndAssign,
BitOr and BitOrAssign for Bit and Who enums against u32
2023-01-16 17:45:16 -05:00
Nathan Fisher 528d2478cd mode::Parser - made self.who into u32 and test using bitflags 2023-01-16 16:22:29 -05:00
Nathan Fisher bee6cdf08e Add mode::parser::parse_all method 2023-01-16 00:45:17 -05:00
Nathan Fisher 735c5bb8e8 mode::parser - add tests, fix failures 2023-01-16 00:30:21 -05:00
Nathan Fisher 4724041d90 Simplify parser 2023-01-15 22:37:11 -05:00