Skip to content

Instantly share code, notes, and snippets.

@dabroder
Created June 6, 2018 14:21
Show Gist options
  • Star 86 You must be signed in to star a gist
  • Fork 22 You must be signed in to fork a gist
  • Save dabroder/813a941218bdb164fb4c178d464d5c23 to your computer and use it in GitHub Desktop.
Save dabroder/813a941218bdb164fb4c178d464d5c23 to your computer and use it in GitHub Desktop.
Install i3-gaps on ubuntu 18.04
#!/bin/bash
sudo apt install -y libxcb1-dev libxcb-keysyms1-dev libpango1.0-dev libxcb-util0-dev libxcb-icccm4-dev libyajl-dev libstartup-notification0-dev libxcb-randr0-dev libev-dev libxcb-cursor-dev libxcb-xinerama0-dev libxcb-xkb-dev libxkbcommon-dev libxkbcommon-x11-dev autoconf libxcb-xrm0 libxcb-xrm-dev automake
cd /tmp
# clone the repository
git clone https://www.github.com/Airblader/i3 i3-gaps
cd i3-gaps
# compile & install
autoreconf --force --install
rm -rf build/
mkdir -p build && cd build/
# Disabling sanitizers is important for release versions!
# The prefix and sysconfdir are, obviously, dependent on the distribution.
../configure --prefix=/usr --sysconfdir=/etc --disable-sanitizers
make
sudo make install
@albertogarrido
Copy link

Thanks a lot, fixed my issue after update in a very easy way. In fact, I think I just needed to rebuild it, but this way easier :)

@emanpatricio
Copy link

sa

I tried following this on my standard 18.04 install as well as on a fresh virtualbox minimal install and both times I get the same error. Could you help me fix this?

make[1]: Entering directory '/tmp/i3-gaps/build' /bin/mkdir -p '/usr/bin' /usr/bin/install -c i3 i3bar/i3bar i3-config-wizard/i3-config-wizard i3-dump-log/i3-dump-log i3-input/i3-input i3-msg/i3-msg i3-nagbar/i3-nagbar '/usr/bin' /bin/mkdir -p '/usr/bin' /usr/bin/install -c ../../i3-gaps/i3-dmenu-desktop ../../i3-gaps/i3-migrate-config-to-v4 ../../i3-gaps/i3-save-tree ../../i3-gaps/i3-sensible-editor ../../i3-gaps/i3-sensible-pager ../../i3-gaps/i3-sensible-terminal '/usr/bin' make install-exec-hook make[2]: Entering directory '/tmp/i3-gaps/build' ln -s -f i3 /usr/bin/i3-with-shmlog make[2]: Leaving directory '/tmp/i3-gaps/build' /bin/mkdir -p '/usr/share/applications' /usr/bin/install -c -m 644 ../../i3-gaps/share/applications/i3.desktop '/usr/share/applications' /bin/mkdir -p '/etc/i3' /usr/bin/install -c -m 644 ../../i3-gaps/etc/config ../../i3-gaps/etc/config.keycodes '/etc/i3' /bin/mkdir -p '/usr/share/xsessions' /usr/bin/install -c -m 644 ../../i3-gaps/share/xsessions/i3.desktop ../../i3-gaps/share/xsessions/i3-with-shmlog.desktop '/usr/share/xsessions' /bin/mkdir -p '/usr/include/i3' /usr/bin/install -c -m 644 ../../i3-gaps/include/i3/ipc.h '/usr/include/i3' make[1]: Leaving directory '/tmp/i3-gaps/build'

I already googled around and I can't find a solution.
Thanks!

same issue with me, have you found any solution to this?

@reikdas
Copy link

reikdas commented Dec 1, 2018

How do I uninstall i3-gaps after having installed it using this script?

@jlopezzarza
Copy link

jlopezzarza commented Dec 4, 2018

Just tried the Gist and there is a dependency missing: libxcb-shape0-dev

Cheers

@graves501
Copy link

Just tried the Gist and there is a dependency missing: libxcb-shape0-dev

Cheers

@jlopezzarza thanks for pointing that out, it helped me installing i3gaps.

@frankdugan3
Copy link

Currently this has some package resolution issues:

The following packages have unmet dependencies:
 libpango1.0-dev : Depends: libcairo2-dev (>= 1.12.10) but it is not going to be installed
                   Depends: libfontconfig1-dev (>= 2.10.91) but it is not going to be installed
                   Depends: libfreetype6-dev but it is not going to be installed
                   Depends: libxft-dev but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

@adamhub
Copy link

adamhub commented Feb 8, 2019

@emanpatricio You don't have any errors there. Restart your computer and you will see the option to login with i3 by hitting the gear.

@ewpratten
Copy link

libxcb-shape0-dev is now required to build

@pfabreu
Copy link

pfabreu commented Mar 4, 2019

@ewpratten I solved this by just doing sudo apt install libxcb-*-dev since not only xcb-shape was required.

@a1mzone
Copy link

a1mzone commented Mar 11, 2019

I had the same issue as mentioned above, all that I required extra to the script was : sudo apt install libxcb-shape0-dev

Hope this helps someone.

@nake89
Copy link

nake89 commented Mar 21, 2019

For the total noobs here. You also need to install suckless-tools and i3status as a dependency. Without i3status, you get an error when logging in the first time that status command not found. Without suckless-tools the MOD + D (app search) wont work, because you don't have dmenu installed. Just run sudo apt install i3status suckless-tools

@SohamG
Copy link

SohamG commented May 28, 2019

Please change the value of --prefix in line 17 to /usr/local instead of /usr as per convention /usr is for packages installed by the system package manager and /usr/local is for packages installed by users externally :)

@Ferryistaken
Copy link

when i do make and sudo make install it says "make: *** No targets specified and no makefile found. Stop.", i am using ubuntu 18.04 windows subsystem, while doing this i am in "/tmp/i3-gaps/build"

@Hammer2900
Copy link

when i do make and sudo make install it says "make: *** No targets specified and no makefile found. Stop.", i am using ubuntu 18.04 windows subsystem, while doing this i am in "/tmp/i3-gaps/build"

Ubuntu 19,the same thing.

@Kezo
Copy link

Kezo commented Nov 25, 2019

@Ferryistaken and @Hammer2900, make sure the configure step before make actually runs without errors. As it is in the gist, it won't. You need to install libxcb-shape0-dev as well, as others have mentioned. Just do sudo apt install libxcb-shape0-dev and run the commands from ../configure[...] again.

@Munay-K
Copy link

Munay-K commented Dec 15, 2019

@Ferryistaken and @Hammer2900, make sure the configure step before make actually runs without errors. As it is in the gist, it won't. You need to install libxcb-shape0-dev as well, as others have mentioned. Just do sudo apt install libxcb-shape0-dev and run the commands from ../configure[...] again.

Thanks, this worked for me. How did you knew this was the problem?

@Kezo
Copy link

Kezo commented Dec 15, 2019

@Ferryistaken and @Hammer2900, make sure the configure step before make actually runs without errors. As it is in the gist, it won't. You need to install libxcb-shape0-dev as well, as others have mentioned. Just do sudo apt install libxcb-shape0-dev and run the commands from ../configure[...] again.

Thanks, this worked for me. How did you knew this was the problem?

Ran into the same problem when not reading outputs properly. The error message mentioned hints that the make-command was not successful, and people here in the thread had mentioned the missing dependency earlier.

@nmerrill67
Copy link

Note that I had to checkout a different branch for gaps to work. Master is on i3 4.14, and 4.15 or greater is apparently needed for gaps to work. I checked out the 4.17 branch.

@k4ntz
Copy link

k4ntz commented Jan 26, 2021

Note that I had to checkout a different branch for gaps to work. Master is on i3 4.14, and 4.15 or greater is apparently needed for gaps to work. I checked out the 4.17 branch.

Agreed, please add it to the script, I was having a rough time until I checked out on 4.18.3 branch (last with a configure.ac file)

@zeustroyano
Copy link

zeustroyano commented Mar 18, 2021

help me autoreconf: 'configure.ac' or 'configure.in' is required

@TechnologyClassroom
Copy link

Together, all of these comments result in these commands:

sudo apt install -y libxcb1-dev libxcb-keysyms1-dev libpango1.0-dev libxcb-util0-dev libxcb-icccm4-dev libyajl-dev libstartup-notification0-dev libxcb-randr0-dev libev-dev libxcb-cursor-dev libxcb-xinerama0-dev libxcb-xkb-dev libxkbcommon-dev libxkbcommon-x11-dev autoconf libxcb-xrm0 libxcb-xrm-dev automake i3status suckless-tools libxcb-shape0-dev
git clone https://www.github.com/Airblader/i3 i3-gaps
cd i3-gaps/
git checkout 4.18.3
autoreconf --force --install
rm -rf build/
mkdir -p build
cd build/
../configure --prefix=/usr --sysconfdir=/etc --disable-sanitizers
make
sudo make install

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment