{"id":1814,"date":"2020-11-24T12:44:12","date_gmt":"2020-11-24T11:44:12","guid":{"rendered":"https:\/\/my.stargazer.at\/?p=1814"},"modified":"2020-11-24T12:44:12","modified_gmt":"2020-11-24T11:44:12","slug":"my-own-kernel-repo","status":"publish","type":"post","link":"https:\/\/my.stargazer.at\/de\/2020\/11\/24\/my-own-kernel-repo\/","title":{"rendered":"Mein eigenes Kernel-Repository"},"content":{"rendered":"<p>Debian ist eine sch\u00f6ne Sache. Wirklich. Ich mag Debian &#8211; aber ab und an ist mir der alte, gut gereifte Kernel etwas zu alt. Aktuell liegt es an fstrim und da ich ohnehin schon einen eigenen <a href=\"https:\/\/my.stargazer.at\/2020\/10\/30\/building-a-gentoo-linux-kernel-on-debian\/\">Gentoo-Kernel f\u00fcr Debian<\/a> baue, habe ich beschlossen das Ganze vern\u00fcnftig zu machen und mir gleich noch einen Vanilla-Kernel zu bauen. Unsch\u00f6n ist dabei nur, jede deb-Datei h\u00e4ndisch installieren zu m\u00fcssen.<\/p>\n<p>Damit dieses einzeln Installieren ein Ende hat, hilft nur ein sogenanntes Meta-Paket &#8211; ein Debian-Paket, das nur aus Abh\u00e4ngigkeiten besteht. Diese bauen wir mit dem Tool &#8218;Equivs&#8216;, welches wir uns erstmal installieren m\u00fcssen:<\/p>\n<pre>apt install equivs<\/pre>\n<p>Ist das Paket installiert, folgt das Erstellen der Paketkonfiguration:<\/p>\n<pre>equivs-control my-kernel-package<\/pre>\n<p>Dieser Befehl gibt uns eine Datei, die es anzupassen gilt &#8211; Augenmerk liegt dabei auf der Zeile &#8222;Depends:&#8220;, da wir dort unsere Abh\u00e4ngigkeiten, die gebauten Debian-Pakete, eintragen. F\u00fcr den heute aktuellen Kernel sieht diese Datei wie folgt aus:<\/p>\n<pre>### Commented entries have reasonable defaults.\r\n### Uncomment to edit them.\r\n# Source: &lt;source package name; defaults to package name&gt;\r\nSection: misc\r\nPriority: optional\r\n# Homepage: &lt;enter URL here; no default&gt;\r\nStandards-Version: 5.9.10\r\n\r\nPackage: vanilla-kernel\r\nVersion: 5.9.10\r\nMaintainer: Viktoria Rei Bauer &lt;debian@example.com&gt;\r\n# Pre-Depends: &lt;comma-separated list of packages&gt;\r\nDepends: linux-image-5.9.10,linux-headers-5.9.10,linux-libc-dev\r\n# Recommends: &lt;comma-separated list of packages&gt;\r\n# Suggests: &lt;comma-separated list of packages&gt;\r\n# Provides: &lt;comma-separated list of packages&gt;\r\n# Replaces: &lt;comma-separated list of packages&gt;\r\nArchitecture: amd64\r\n# Multi-Arch: &lt;one of: foreign|same|allowed&gt;\r\n# Copyright: &lt;copyright file; defaults to GPL2&gt;\r\n# Changelog: &lt;changelog file; defaults to a generic changelog&gt;\r\n# Readme: &lt;README.Debian file; defaults to a generic one&gt;\r\n# Extra-Files: &lt;comma-separated list of additional files for the doc directory&gt;\r\n# Links: &lt;pair of space-separated paths; First is path symlink points at, second is filename of link&gt;\r\n# Files: &lt;pair of space-separated paths; First is file to include, second is destination&gt;\r\n# &lt;more pairs, if there's more than one file to include. Notice the starting space&gt;\r\nDescription: &lt;short description; defaults to some wise words&gt;\r\nMeta-Package for vanilla kernel built based on debian .config<\/pre>\n<p>Nachdem die Datei geschrieben ist, gilt es das Debian-Paket zu bauen:<\/p>\n<pre>equivs-build my-kernel-package<\/pre>\n<p>Das Ergebnis ist eine schicke deb-Datei, die man dann in sein Repository hinzuf\u00fcgen kann. Ich selbst nutze daf\u00fcr den Sonatype Nexus.<\/p>\n<p>Auf den Client-PCs muss dann nur das Repository in die sources.list aufgenommen und der PGP Key importiert werden und schon steht der Installation nichts mehr im Wege.<\/p>","protected":false},"excerpt":{"rendered":"<p>Debian ist eine sch\u00f6ne Sache. Wirklich. Ich mag Debian &#8211; aber ab und an ist mir der alte, gut gereifte Kernel etwas zu alt. Aktuell liegt es an fstrim und da ich ohnehin schon einen eigenen Gentoo-Kernel f\u00fcr Debian baue, habe ich beschlossen das Ganze vern\u00fcnftig zu machen und mir gleich noch einen Vanilla-Kernel zu bauen. Unsch\u00f6n ist [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":1815,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[577,401,22],"class_list":["post-1814","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-it-related-stuff","tag-debian","tag-kernel","tag-linux"],"_links":{"self":[{"href":"https:\/\/my.stargazer.at\/de\/wp-json\/wp\/v2\/posts\/1814","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/my.stargazer.at\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/my.stargazer.at\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/my.stargazer.at\/de\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/my.stargazer.at\/de\/wp-json\/wp\/v2\/comments?post=1814"}],"version-history":[{"count":0,"href":"https:\/\/my.stargazer.at\/de\/wp-json\/wp\/v2\/posts\/1814\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/my.stargazer.at\/de\/wp-json\/wp\/v2\/media\/1815"}],"wp:attachment":[{"href":"https:\/\/my.stargazer.at\/de\/wp-json\/wp\/v2\/media?parent=1814"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/my.stargazer.at\/de\/wp-json\/wp\/v2\/categories?post=1814"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/my.stargazer.at\/de\/wp-json\/wp\/v2\/tags?post=1814"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}