# Bundling external libraries with Raco Distribute

**URL:** <https://racket.discourse.group/t/bundling-external-libraries-with-raco-distribute/632>\
**Category:** Questions & Answers\
**Created:** [January 28, 2022, 8:31am UTC](https://racket.discourse.group/t/bundling-external-libraries-with-raco-distribute/632 "2022-01-28T08:31:32Z")\
**Posts on this page:** 1\
**Showing post:** 6

<div class="post-metadata">

**Author:** ![alexh](https://yyz2.discourse-cdn.com/free1/user_avatar/racket.discourse.group/alexh/32/315_2.png) [@alexh](https://racket.discourse.group/u/alexh)\
**Post date:** [January 29, 2022, 4:25am UTC](https://racket.discourse.group/t/bundling-external-libraries-with-raco-distribute/632/6 "2022-01-29T04:25:22Z")

</div>

I tried the following:

- installed gregor using `raco pkg install gregor`
- wrote the following program and saved it to a file named "time.rkt":

```scheme
#lang racket
(require gregor)
(displayln (~t (today) "E, d MMMM y"))

```

- created an executable by running `raco exe time.rkt`. This produced a file named "time.exe" about 16Mb in size
- created a distribution by running `raco dist time-dist time.exe`. This produced a folder named "time-dist" containing the time.exe file plus a lib folder. The entire folder size is 48 Mb, since gregor adds in time zone and locale formatting data for all possible time zones and locales.
- zipped up the entire `time-dist` folder and moved it to a machine which had no Racket installed
- ran the time.exe program in a console window and it printed the current date as expected.

So, creating standalone distributions with external packages is certainly possible and it is also possible with the gregor library.

Alex.

---

_[View the full topic](https://racket.discourse.group/t/bundling-external-libraries-with-raco-distribute/632)._
