Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CLI #156

Open
MartinThoma opened this issue Oct 2, 2018 · 7 comments
Open

CLI #156

MartinThoma opened this issue Oct 2, 2018 · 7 comments

Comments

@MartinThoma
Copy link

Currently, the scripts are harder to use than necessary. I think the situation would greatly improve by the following:

  1. Adding a setup.py
  2. Putting it on PyPI
  3. Moving most of the functions in the assemble.py, disassemble.py and decompile.py to Krakatau/cli so that one can access the code from the package.
  4. Creating a bin/krakatau CLI script which has assmble, disassemble, and decompile as subcommands

If you are interested in it, I could do it. This would add the dependency click (a commonly used CLI package) in the setup.py and in the bin/krakatau.

What do you think?

@Storyyeller
Copy link
Owner

Storyyeller commented Oct 3, 2018

In what ways would this make Krakatau easier to use?

@MartinThoma
Copy link
Author

Improvements by adding a setup.py, uploading to PyPI and having a single command line tool called like the package:

  1. Discoverable via pip search
  2. Tool can be installed via pip install krakatau - no need to know where the sources are
  3. Functionality can be discovered by krakatau --help
  4. No matter in which directory I am, I can simply execute krakatau disassemble [foobar] - no need to know where on my machine krakatau is.

@unoexperto
Copy link

This post was very helpful. Perhaps it's worth including it to readme.txt

@Storyyeller
Copy link
Owner

I'm currently rewriting Krakatau in Rust, so the PyPI stuff is no longer relevant. But if you have any suggestions on how to best distribute/install it, I'm all ears.

@unoexperto
Copy link

@Storyyeller Robert, do you have repo with Rust-based version to share ?

@Storyyeller
Copy link
Owner

I haven't published the Rust version yet. I was planning to release an initial version for testing once the assembler was done.

@Storyyeller
Copy link
Owner

do you have repo with Rust-based version to share ?

FYI, the Rust version is now live (it is on the "v2" branch). This only includes the assembler and disassembler for now - I'm still trying to figure out what to do for the new decompiler.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants