Tim McNamara (tim-clicks) Publisher

Install latest/stable of bin2src

Make sure snap support is enabled in your Desktop store.

Install using the command line

Don't have snapd? Get set up for snaps.

Channel Version Published

Convert bytes to source code


bin2src takes an input stream of bytes and converts that into source code. That source code version of the input can then be easily embedded into your project with Copy+Paste.


Read bytes from STDIN and write them to STDOUT:

 $ echo "hello" | bin2src

Note that there is no need to convert your input bytes to a plain text encoding:

 $ head -c 10 /dev/urandom | bin2src 

The primary purpose of bin2src is to facilitate embedding binary blobs into software source code.

To specify an output format, use the -f option ("f" for format):

 $ head -c 10 /dev/urandom | bin2src -f python
 DATA = """\x22\x82\x2d\xd4\xb8\x8c\x36\xb4\x35\x21"""

If you would like to change the variable name, use the -a option ("a" is a common mathematical variable):

 $ head -c 10 /dev/urandom | bin2src -f python -a RAND_BYTES
 RAND_BYTES = """\xf5\xde\x5e\xdc\x66\xeb\x89\x24\x13\xd5"""

Other options are available. See the full list by running bin2src --help.

Supported output formats

  • plaintext (default)
  • go
  • rust
  • python

Developer website

Contact Tim McNamara

Details for bin2src

Last updated
10 April 2019

Share this snap

Generate an embeddable card to be shared on external websites.

Related blog posts

Where people are using bin2src

Users by distribution (log)

Ubuntu 18.04

Install bin2src on your Linux distribution

Choose your Linux distribution to get detailed installation instructions. If yours is not shown, get more details on the installing snapd documentation.

Is there a problem with bin2src? Report this app