I finally got it working. First download kernel 3.9.10, extract and apply patch:
> cd linux-3.9.10
> yes "" | make oldconfig
> patch -p1 < ../path/to/huion.patch
> make oldconfig
Huion tablets (HID_HUION) [N/m/?] m
> fakeroot make-kpkg -j 4 --initrd --append-to-version=elclanrs kernel-image kernel-headers
...
After that I installed the packaged debs, rebooted and everything works now, uname -a
reports custom kernel.
Finally I had to restrict the tablet to only one monitor, the right one in this case. My setup is (1920+2560)x1440
:
xinput set-prop "HUION 580" --type=float "Coordinate Transformation Matrix" 0.5714 0 0.4285 0 1 0 0 0 1
Here are the patched kernel debs for Ubuntu 13.04 64bit:
Is it a Launchpad project?
(If you already know that it is a Launchpad project, you can skip this.)
Not all projects found on Launchpad are actually hosted and developed there - some are mirrors of code hosted elsewhere (GitHub/Gitorious/etc), others come from Debian. These original sources are known as "upstream" projects, and it is usually best to submit patches at the source and let the changes arrive "downstream" in Ubuntu (usually in the next release).
It should be clearly indicated on the project page whether it is hosted elsewhere or on Launchpad. If not, just ask the project maintainers how they wish to receive changes. Some upstream projects prefer simple patch files, others prefer submissions/pushes via their respective hosts.
As a special note, official Ubuntu packages (software stored in the official Ubuntu repositories that you can install from the Software Center) have a few different ways to submit patches, as many of those packages come directly from Debian, and should ideally be fixed there rather than only in Ubuntu. (This is a whole other question.)
How to submit a patch
The general way to submit a patch is that you make your branch, commit to it locally and push it back to Launchpad:
bzr push lp:~user/project/branch-name
You can then propose your branch to merge into the parent you branched from, either via the web site, or using the bzr lp-propose
command.
If you've filed a bug, and your branch does fix it, be sure to do the following when committing, where 000000
is replaced with your bug number, assuming it is a bug reported on Launchpad, and not elsewhere instead.
bzr commit --fixes=lp:000000
A note on "default" workflow
This is pretty much the typical modern workflow, that you may compare to GitHub. Launchpad has been around a bit longer though, so this workflow evolved after the fact, rather than being built into the system from the beginning, so some older projects may rely on other methods of accepting patches. Most all newer projects rely on this workflow though, where on GitHub the "pull requests" have always been there, and people just default to using it because there was never a means to do something different on GitHub.
Best Answer
You can use
apt-get
to install a specific version of the package a long as it is in an archive that apt knows about. From theapt-get
manpage:For example, you could do:
Note that you may need to do some dependency resolution on your own in this case, but if there are any problems apt-get will tell you what is causing them. On my 11.10 system I would need to do the following to get this to work:
You can display available package versions as follows: