Coder Social home page Coder Social logo

prasannamaddila / suckless-tools Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 375 KB

This repo contains my builds of dwm, dmenu and slock from suckless's lineup (also with my small status script). I started this repo to help me quickly get my setup when I distro-hop, but its fairly complete and easy to setup now.

Makefile 5.76% C 85.72% Objective-C 0.52% Roff 6.45% Shell 1.22% C++ 0.34%
suckless suckless-lock dwm dwm-desktop dwm-status

suckless-tools's Introduction

suckless-tools

This repo contains my builds of dwm, dmenu and slock from suckless's lineup. They're here in case I distro-hop, or need a fallback after tinkering with my system build. Needless to say, this will be updated and/or forked if required.

The current build is centered around the hex-color #2e3440; CSS calls this DarkSlateGray. It seems to be comfortable for me to use, while not being as contrast-y as black-on-white.

I will be adding a simple MakeFile to automate the build process, purely for convenience. However, each package has its own Makefile and can be individually built/installed using the

sudo make (clean) install; 

in the respective folder.

NOTE clean is an optional tag. It's convenient for me and does nothing harmful, so I just throw it in there.

The given Makefile will recursively install (cleanly) all the suckless tools in this directory. This is achieved by running

make

in the suckless-tools directory. Similarly,

make uninstall-all

uninstalls all tools. In case you wish to remove specific tools, say foo/ and bar/, pass them as space-separated arguments to the uninstall target as follows:

make uninstall DIRS=foo bar

A great tutorial on using dwm is given at the official suckless site. I do not claim ownership for any of this material (or most of the code for that matter); suckless.org is awesome and I love their work.

NOTE I do have my own shortcuts in the dwm-version/config.h, like Alt+Shift+b for Chrome and so on. You might want to poke around there to change things if everything isn't working as intended.

dwm/list-commands.sh

In the dwm-version folder, you will find a list-commands.sh file. Running it will create a commands-list.txt file which lists out all the keybindings that the current build has. Its also been processed a little (Like replacing MODKEY with Alt and so on) so that you can easily see what to play around with. The script is also supposed to be run everytime you make changes to config.h, so it will always be up to date.

Status Bar

This repo also contains set-status.sh, which is the script you need to add to your .xinitrc file before exec'ing dwm. The following is from my own .xinitrc, which should be enough to get you started.

# FILE: ~/.xinitrc 
# Sets the DWM Status bar 
# NOTE: This has to be a daemon job 
# ( i.e. with `&` ). 
/path/to/suckless/suckless-tools/set-status.sh &

# Sets the background, using the 
# feh tool.
~/.fehbg &

# Starts DWM
exec dwm

By default, set-status updates the status every 30 seconds (I don't check it that often, sorry). You can change this by changing how long the sleep command executes in the script. It's also formatted to fit with my aesthetic, so feel free to modify your copy to your liking. Another nice feature of this status script is that it locks your screen if your battery goes under 5%. This is an explicit reminder that you need that your laptop is dying, and you need to plug it in.

Troubleshooting

A common cause of the make not installing is not having enough permissions to install. While this may be bad advice, sudo make generally does the trick.

suckless-tools's People

Contributors

prasannamaddila avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.