coreutils/README.md

171 lines
2.9 KiB
Markdown
Raw Normal View History

uutils coreutils [![Build Status](https://travis-ci.org/uutils/coreutils.png?branch=master)](https://travis-ci.org/uutils/coreutils)
2013-08-02 17:24:20 +00:00
================
uutils is an attempt at writing universal (as in cross-platform) CLI
utils in [Rust](http://rust-lang.org). This repo is to aggregate the GNU
coreutils rewrites.
Why?
----
Many GNU, linux and other utils are pretty awesome, and obviously
[some](http://gnuwin32.sourceforge.net) [effort](http://unxutils.sourceforge.net)
has been spent in the past to port them to windows. However those projects
2014-02-06 05:18:03 +00:00
are either old, abandoned, hosted on CVS, written in platform-specific C, etc.
2013-08-02 17:24:20 +00:00
Rust provides a good platform-agnostic way of writing systems utils that are easy
to compile anywhere, and this is as good a way as any to try and learn it.
Build Instructions
------------------
To simply build all available utilities:
```
make
```
To build all but a few of the available utilities:
```
make DONT_BUILD='UTILITY_1 UTILITY_2'
```
To build only a few of the available utilities:
```
make BUILD='UTILITY_1 UTILITY_2'
```
Test Instructions
-----------------
To simply test all available utilities:
```
make test
```
To test all but a few of the available utilities:
```
make DONT_TEST='UTILITY_1 UTILITY_2' test
```
To test only a few of the available utilities:
```
make TEST='UTILITY_1 UTILITY_2' test
```
2013-11-30 23:07:22 +00:00
Contribute
----------
2013-12-15 19:04:49 +00:00
Contributions are very welcome, and should target rust's master branch until
rust 1.0 is released. You may *claim* an item on the to-do list by following
these steps:
2013-11-30 23:07:22 +00:00
1. Open an issue named "Implement [the utility of your choice]", e.g. "Implement ls"
2. State that you are working on this utility.
3. Develop the utility.
4. Submit a pull request and close the issue. Your pull request should include deleting the utility from the to-do list on this README.
The steps above imply that, before starting to work on a utility, you should search the issues to make sure no one else is working on it.
2013-08-02 17:24:20 +00:00
To do
-----
- chcon
- chgrp
- chmod
- chown-core
- chown
- chroot
- cksum
- comm
- copy
- cp-hash
- cp
- csplit
- cut
- date
- dd
- df
- dircolors
- du
- expand
- expr
- extent-scan
- factor
- find-mount-point
- fmt
- fold
- getlimits
- group-list
- groups
2013-12-10 05:25:01 +00:00
- head ( in progress )
2013-08-02 17:24:20 +00:00
- hostid
2014-01-12 21:00:34 +00:00
- id (in progress)
2013-08-02 17:24:20 +00:00
- install
- join
- kill
- lbracket
- libstdbuf
- link
- ln
- logname
- ls-dir
- ls-ls
- ls-vdir
- ls
- make-prime-list
- md5sum
- mkfifo
- mknod
- mktemp
- mv
- nice
- nl
- nohup
- nproc
- numfmt
- od
- operand2sig
- paste
- pathchk
- pinky
- pr
- printf
- prog-fprintf
- ptx
- readlink
- realpath
- relpath
- remove
- runcon
- setuidgid
- shred
- shuf
- sort
- split
- stat
- stdbuf
- stty
- sum
- sync
- tac-pipe
- tac
- tail
- test
- timeout
- touch
- tr
- tsort
- uname-arch
- uname-uname
- uname
- unexpand
2013-11-29 19:40:54 +00:00
- uniq (in progress)
2013-08-02 17:24:20 +00:00
- unlink
- uptime
- who
License
-------
uutils are licensed under the MIT License - see the `LICENSE` file for details