feat(jbot): move package to packages
This commit is contained in:
parent
ef74bd3c41
commit
8f1a3f6f21
4 changed files with 61 additions and 44 deletions
configurations/nos/modules/docker/music/jbots
packages
|
@ -1,11 +1,14 @@
|
||||||
{
|
{
|
||||||
config,
|
config,
|
||||||
pkgs,
|
pkgs,
|
||||||
|
self,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
|
inherit (self.packages.${pkgs.system}) jmusicbot;
|
||||||
inherit (config.khepri) rwDataDir;
|
inherit (config.khepri) rwDataDir;
|
||||||
|
|
||||||
rwPath = rwDataDir + "/music/jbots";
|
rwPath = rwDataDir + "/music/jbots";
|
||||||
|
image = import ./images/jmusicbot.nix {inherit pkgs jmusicbot;};
|
||||||
in {
|
in {
|
||||||
khepri.compositions."jbots" = {
|
khepri.compositions."jbots" = {
|
||||||
networks.proxy_net = {external = true;};
|
networks.proxy_net = {external = true;};
|
||||||
|
@ -13,8 +16,8 @@ in {
|
||||||
services = {
|
services = {
|
||||||
"musicbot_be" = {
|
"musicbot_be" = {
|
||||||
containerName = "be";
|
containerName = "be";
|
||||||
image = import ./images/jmusicbot.nix pkgs;
|
|
||||||
restart = "always";
|
restart = "always";
|
||||||
|
inherit image;
|
||||||
|
|
||||||
volumes = [
|
volumes = [
|
||||||
"${rwPath}/be:/jmb/config:rw"
|
"${rwPath}/be:/jmb/config:rw"
|
||||||
|
@ -24,8 +27,8 @@ in {
|
||||||
|
|
||||||
"musicbot_br" = {
|
"musicbot_br" = {
|
||||||
containerName = "br";
|
containerName = "br";
|
||||||
image = import ./images/jmusicbot.nix pkgs;
|
|
||||||
restart = "always";
|
restart = "always";
|
||||||
|
inherit image;
|
||||||
|
|
||||||
volumes = [
|
volumes = [
|
||||||
"${rwPath}/br:/jmb/config:rw"
|
"${rwPath}/br:/jmb/config:rw"
|
||||||
|
|
|
@ -1,43 +1,15 @@
|
||||||
# Locked
|
# Locked
|
||||||
pkgs: let
|
{
|
||||||
dname = "jmusicbot-docker";
|
pkgs,
|
||||||
dtag = pkgs.jmusicbot.version;
|
jmusicbot,
|
||||||
|
}:
|
||||||
jre_modules = [
|
pkgs.dockerTools.buildLayeredImage {
|
||||||
"java.se"
|
name = "jmusicbot-docker";
|
||||||
"jdk.crypto.cryptoki"
|
tag = jmusicbot.version;
|
||||||
];
|
config = {
|
||||||
jre =
|
created = "now";
|
||||||
(pkgs.jre_minimal.overrideAttrs {
|
Cmd = ["${jmusicbot}/bin/JMusicBot"];
|
||||||
buildPhase = ''
|
WorkingDir = "/jmb/config";
|
||||||
runHook preBuild
|
Volumes."/jmb/config" = {};
|
||||||
|
};
|
||||||
# further optimizations for image size https://github.com/NixOS/nixpkgs/issues/169775
|
}
|
||||||
jlink --module-path ${pkgs.jdk11_headless}/lib/openjdk/jmods --add-modules ${pkgs.lib.concatStringsSep "," jre_modules} --no-header-files --no-man-pages --compress=2 --output $out
|
|
||||||
|
|
||||||
runHook postBuild
|
|
||||||
'';
|
|
||||||
})
|
|
||||||
.override {jdk = pkgs.jdk11_headless;};
|
|
||||||
|
|
||||||
jmusicbot =
|
|
||||||
(pkgs.jmusicbot.overrideAttrs rec {
|
|
||||||
version = "0.4.3.2";
|
|
||||||
src = pkgs.fetchurl {
|
|
||||||
url = "https://github.com/xPrinny/MusicBot/releases/download/${version}/JMusicBot-${version}.jar";
|
|
||||||
sha256 = "sha256-MEOWppkw74s81D1EJEqZMjOzDlLdH6uyanDZD5d+Xa4=";
|
|
||||||
};
|
|
||||||
meta.platforms = ["x86_64-linux"];
|
|
||||||
})
|
|
||||||
.override {jre_headless = jre;};
|
|
||||||
in
|
|
||||||
pkgs.dockerTools.buildLayeredImage {
|
|
||||||
name = dname;
|
|
||||||
tag = dtag;
|
|
||||||
config = {
|
|
||||||
created = "now";
|
|
||||||
Cmd = ["${jmusicbot}/bin/JMusicBot"];
|
|
||||||
WorkingDir = "/jmb/config";
|
|
||||||
Volumes."/jmb/config" = {};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
|
@ -13,6 +13,8 @@
|
||||||
|
|
||||||
homepage = pkgs.callPackage ./homepage {};
|
homepage = pkgs.callPackage ./homepage {};
|
||||||
|
|
||||||
|
jmusicbot = pkgs.callPackage ./jmusicbot {};
|
||||||
|
|
||||||
libratbag = pkgs.callPackage ./libratbag {
|
libratbag = pkgs.callPackage ./libratbag {
|
||||||
inherit (inputs) libratbag-src;
|
inherit (inputs) libratbag-src;
|
||||||
};
|
};
|
||||||
|
|
40
packages/jmusicbot/default.nix
Normal file
40
packages/jmusicbot/default.nix
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
fetchurl,
|
||||||
|
jmusicbot,
|
||||||
|
jdk11_headless,
|
||||||
|
jre_minimal,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
inherit (lib) concatStringsSep;
|
||||||
|
|
||||||
|
jre_modules = [
|
||||||
|
"java.se"
|
||||||
|
"jdk.crypto.cryptoki"
|
||||||
|
];
|
||||||
|
|
||||||
|
jre = (jre_minimal.override {jdk = jdk11_headless;}).overrideAttrs (o: {
|
||||||
|
buildPhase = ''
|
||||||
|
runHook preBuild
|
||||||
|
|
||||||
|
# further optimizations for image size https://github.com/NixOS/nixpkgs/issues/169775
|
||||||
|
jlink \
|
||||||
|
--module-path ${jdk11_headless}/lib/openjdk/jmods \
|
||||||
|
--add-modules ${concatStringsSep "," jre_modules} \
|
||||||
|
--no-header-files \
|
||||||
|
--no-man-pages \
|
||||||
|
--compress=2 \
|
||||||
|
--output $out
|
||||||
|
|
||||||
|
runHook postBuild
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
in
|
||||||
|
(jmusicbot.override {jre_headless = jre;}).overrideAttrs (o: rec {
|
||||||
|
version = "0.4.3.2";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/xPrinny/MusicBot/releases/download/${version}/JMusicBot-${version}.jar";
|
||||||
|
sha256 = "sha256-MEOWppkw74s81D1EJEqZMjOzDlLdH6uyanDZD5d+Xa4=";
|
||||||
|
};
|
||||||
|
meta.platforms = ["x86_64-linux"];
|
||||||
|
})
|
Loading…
Add table
Add a link
Reference in a new issue