The impress library uses a separate application to low-level drawing.
The main GUI application contains pure Go code. There is not any low-level library required to build the main application. The impress terminal is running in parallel. Impress terminal was written in C and used the GTK-3 library. Named pipes are used to communicate between the main application and impress terminal.
Impress terminal started and stopped by main application. By default, executable impress terminal binary launched from current directory. The environment variable IMPRESS_TERMINAL_PATH
may be used to specify full pathname to impress terminal binary.
Pros:
Cons:
You can download
the compiled binary it
file or make it again from the source.
Install gcc
, make
, pkg-config if you don't have them installed.
Currently, the application uses GTK+ 3 for rendering, event collecting, etc. You should install libgtk+-3.0
and packages that depend on GTK. On Debian/ Ubuntu you can run:
sudo apt-get install libgtk-3-dev
git clone https://github.com/codeation/it.git
cd it
make
cd ..
To build binary without installing additional packages:
git clone https://github.com/codeation/it.git
cd it
./build.sh
cd ..
This command creates a container with libgtk-3-dev packages from the gcc compiler container. The build is done inside the docker container without installing additional packages on the host.
Once the build is complete, the docker images can be removed using the docker image rm
command. You can remove containers named:
amd64/gcc or arm64v8/gcc
it-build/gcc
On Debian 12.0, libharfbuzz-gobject
should be installed. If you are getting error while loading shared libraries: libharfbuzz-gobject.so.0: cannot open shared object file: No such file or directory
, run sudo apt-get install libharfbuzz-gobject0
.
brew install gtk+3
pkg-config
run:brew install pkg-config
git clone https://github.com/codeation/it.git
cd it
make
cd ..
You may see
+[IMKClient subclass]: chose IMKClient_Modern
+[IMKInputSession subclass]: chose IMKInputSession_Modern
warning messages in macOS 15.1 version.
The latest releases aren't tested on Apple Silicon machines. The earlier version tested on both Intel and Silicon platform and worked well. Please, open issue, if some bugs have raised. MRs are welcome too.
You can download the compiled binary it
file on the "releases" page.
Github Actions builds binaries since v0.2.4 to prevent any corruption. Make sure the release is built from a signed commit.
Please, check and verify the sha256 sum for downloaded files from previous releases.
The codeation
GPG key (Id A8109B6877BC845E
) is used to sign commits in the main branch.
Feel free to open issue