Skip to content

v1.0

Choose a tag to compare

@libschmudie-so libschmudie-so released this 15 Jan 20:33
· 1 commit to master since this release
c17d0eb

New Features

  • Initial Implementation of MakeRW Utility:
    • Implemented main functionality to make a directory writable by copying it to a writable location and binding it to the original location.
    • Added command-line options:
      • -t DIR to specify a writable directory instead of the default /tmp.
      • -u to unmount the directory.
      • -v for verbose output.
    • Included help message with usage instructions.
    • Checked if the directory exists and handled errors appropriately.
    • Implemented unmount functionality with verbose output.
    • Verified if the directory is already mounted to prevent redundant operations.
    • Created a new folder in the specified writable directory and copied the original directory to it.
    • Bound the new folder to the original directory and provided verbose output on success.
    • Added README.md with project description, features, usage instructions, examples, dependencies, build instructions, and license information.
    • Licensed the project under the GNU GPLv3 License.

Fixes

  • Handle Return Values of realpath and system Functions:

    • Checked the return value of realpath to ensure the path is resolved correctly.
    • Checked the return value of system to ensure the copy command executes successfully.
    • Added error handling and appropriate messages for these checks to prevent warnings and potential runtime errors.
  • Use Cross-Compiler strip Command in Makefile:

    • Added STRIP variable to use the cross-compiler strip command.
    • Updated makerw target to use the STRIP variable instead of the default strip command.

Continuous Integration

  • Add GitHub Actions Workflow for Building and Releasing Artifacts:
    • Added a GitHub Actions workflow to build MakeRW for multiple architectures (x86_64, armhf, aarch64) and static/dynamic linking.
    • Set up cross-compilation environment for different architectures.
    • Uploaded build artifacts for each configuration.
    • Added a release job to create a GitHub release and upload all artifacts when committing to the master branch.