25 Commits

Author SHA1 Message Date
David Herrmann
350a9ca5a2 README: fix tarball-link to /software/kmscon
We now have official upload space on freedesktop.org. No need to link to
my personal upload space, anymore.

Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-03-04 18:42:34 +01:00
David Herrmann
b5aa1ec644 docs: fix links to point to freedesktop.org
kmscon is now hosted on freedesktop.org. Please don't use the github
links, anymore. I will push to github for some more weeks, but I recommend
to everyone to use my freedesktop.org repository as primary upstream link.

There were many reasons why github.com wasn't sufficient, anymore. But the
main reason is that they no longer provide upload space for release
tarballs. Hence, lets ditch github and move to freedesktop.org which
kindly provides everything we need plus a really nice mailing-list.

Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-03-04 16:05:34 +01:00
David Herrmann
ed6d7fa116 Release kmscon-7
This is kmscon-7. See ./NEWS for a list of new features.

Unfortunately, github disabled the "Downloads" section so there is no way
to upload new pre-generated tarballs. I have a pending application to move
kmscon to freedesktop.org, but it didn't get processed in time for this
release. Therefore, you need to build the GNU-autotools files yourself.
That is, before calling ./configure you need to call:
  NOCONFIGURE=1 ./autogen.sh

You can extend your build-scripts with:
  test -f ./configure || NOCONFIGURE=1 ./autogen.sh

Which will call ./autogen.sh if needed. Everything else can be left
unchanged.

I will not upload the tarballs at another location. Feel free to do that
yourself, but I personally think this will introduce more confusion than
help. I hope the freedesktop.org move will be soon approved. This will
also provide a mailing-list where I can properly announce new releases.

Raw tarballs will be available as (without pre-generated autotools):
  https://github.com/dvdhrm/kmscon/archive/kmscon-7.tar.gz
  https://github.com/dvdhrm/kmscon/archive/kmscon-7.zip

The git-tag is: kmscon-7
You can use my public GPG key to verify the tarballs.

As usual, please report bugs to: https://github.com/dvdhrm/kmscon

Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-02-28 11:37:16 +01:00
David Herrmann
7b1f0438a1 README: update build-instructions
The build-system changed slightly so update the build-instructions.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2013-02-16 21:34:46 +01:00
David Herrmann
0a3c34ca0e kmscon: add cairo-renderer module
The cairo text renderer uses the cairo blitting functions to blit all
glyphs into the cairo-surface. This is only for testing-purposes. Cairo is
not really suited for blending/blitting of large surfaces. Hence, this
backend is horribly slow compared to bblit/bbulk.

This backend is disabled by default.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2013-01-15 16:30:49 +01:00
David Herrmann
67ac019dec uterm: remove unused pciaccess helpers
We now detect primary GPUs via udev so the pciaccess helpers are no longer
needed.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2013-01-07 13:40:26 +01:00
David Herrmann
eba5178643 build: check for udev >=172
We need udev_device_has_tag() which was introduced in version 172.
Document that in README file.

Reported-by: Manuel Rüger <mrueg@rueg.eu>
Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2012-12-10 16:21:32 +01:00
David Herrmann
0a743ec670 README: update readme-file
We updated configure.ac several times and need to update the README with
the newest command-line options.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2012-12-09 20:49:28 +01:00
David Herrmann
37d3499fb5 README: remove xkbcommon references
xkbcommon now has seen a public release (0.2.0) and we have a hard
dependency on it. No more config-fiddling. You must provide xkbcommon to
make kmscon work!

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2012-10-24 15:45:21 +02:00
David Herrmann
a3abdfc5bc Make xkbcommon mandatory
We really need xkbcommon. There is so much stuff (including parsing of
keyboard shortcuts in conf.c) that depends on it. Therefore, we make it
mandatory now which allows us to use xkbcommon functions all over the
place.

Note that xkbcommon itself has no runtime dependencies so it is a small
self-contained library. The only reason I didn't do this ealier is that
xkbcommon has not seen a public release, yet. However, that should be done
in the near future.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2012-10-01 10:10:50 +02:00
ysangkok
9754f71c16 docs: add xkbcommon build instructions to README
libxkbcommon still has no public release so most distributions do not ship
it. This adds short build-instructions for people who still want to test
it.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2012-09-04 22:12:57 +02:00
David Herrmann
ed8c730f99 Update README
Update dependency and configuration information.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2012-08-11 15:17:47 +02:00
David Herrmann
895eaaa218 Update README
Fix the dependency information and add several TODO notes.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2012-07-01 20:26:30 +02:00
David Herrmann
1648c9101b Update README
Fix some small typos and add TODOs.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2012-03-27 16:48:27 +02:00
Ran Benita
510e53376a kbd: add a new "dumb" keyboard backend
This commit adds a very simple keyboard backend which does basic keycode
interpretation. It is used as a fallback when xkbcommon is unavailable
or is not required.

See the file header for what is supported.

Signed-off-by: Ran Benita <ran234@gmail.com>
Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2012-01-28 12:28:19 +01:00
Ran Benita
83dd9a6cfa build: depend on xproto explicitly
Currently it's required by xkbcommon. However, we will need it for other
backends as well, even with xkbcommon support disabled.

xproto consisted only of static header files. We use the XK_ keysym
definitions. It is therefore only required during compilation and we
shouldn't needlessly duplicate it ourselves.

Signed-off-by: Ran Benita <ran234@gmail.com>
Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2012-01-28 12:20:04 +01:00
David Herrmann
5dbeb1474b Update README to include new dependencies
Rework dependency list and also add new configure flags.
We also update the subsystem list.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2012-01-01 23:39:23 +01:00
Ran Benita
6e301a9af3 input: use libxkbcommon to convert input events
This commit introduces a new kmscon_input_event structure which is
delivered to the input consumer. The information provided is
- The evdev scancode (=physical keyboard key).
- The X keysym (a symbol representing what the typist really intended).
- The active modifiers (e.g. Shift, Control..)
- The unicode (UCS-4) value, when it makes sense.

To achieve this we add two dependencies:
- libxkbcommon (this entails xproto and kbproto, but shouldn't bring any of
  big X dependencies)
- A function to translate keysyms to unicode values (taken from xlib,
  copied in-tree).

libxkbcommon is not an all-around solution, and requires various degrees
of supporting code, depending on how much we wish to support. This
commit implements the common, basic uses:
- Choosing layouts, variants and options
- Switching groups
- Switching shift-levels
- Setting modifiers
Though some stuff is missing. Further information in the comments.

test_input.c is updated to use the new input event interface. You can
change the layouts in input.c:init_input() and see what works and what
doesn't.

Signed-off-by: Ran Benita <ran234@gmail.com>
Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2011-12-31 16:18:29 +01:00
David Herrmann
92de8f3f12 Add Ran Benita to authors list
Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2011-12-31 12:46:15 +01:00
Ran Benita
33afda8421 input: add infrastructure for an input subsystem
This does all the boring stuff for an input subsystem:
- Input device discovery using udev
- Input device hotplug (add/remove)
- Reading the evdev data from the devices
- Publishing input events to a callback through the eloop
- Suspending and resuming the input capture

Currently the delivered input events are basically just evdev's
"struct input_event" (type, code, value). More work is required to
have it pass out useful data.

Signed-off-by: Ran Benita <ran234@gmail.com>
Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2011-12-30 18:07:23 +01:00
David Herrmann
ca409fb0c5 Update documentation about autotools
Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2011-12-02 13:31:12 +01:00
David Herrmann
0d1acc526f Change license to MIT license
Further commits will need a Signed-off-by line, otherwise I cannot accept them.
MIT license is compatible with GPL so we still can switch to GPL in the future
if we want.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2011-12-02 13:23:22 +01:00
David Herrmann
a33f9f589c Add pango dependency
We use pango to draw fonts. This requires glib and cairo support, too.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2011-11-26 15:29:39 +01:00
David Herrmann
8cd898bb58 Add console subsystem to README
Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2011-11-20 17:58:32 +01:00
David Herrmann
fca8681dfc New kmscon project
The kmscon application is a terminal emulator which runs on a native linux DRI
device. It uses linux KMS and DRI to get a working OpenGL context without the
need of an X-Server, Wayland or similar.

It is an attempt to replace the in-kernel VT emulator with a full userspace
console.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2011-11-19 23:05:38 +01:00