Compare commits

..

4 Commits

Author SHA1 Message Date
623b7997e7 update version 2026-02-02 18:28:54 -05:00
f9fd5d357d formatting changes
via nixfmt
2026-01-17 16:04:07 -05:00
ad68d7f98d successful run 2026-01-16 23:29:19 -05:00
24e2973255 added readme, gitignore 2026-01-16 23:28:21 -05:00
3 changed files with 77 additions and 54 deletions

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
/result

11
README.md Normal file
View File

@@ -0,0 +1,11 @@
# Music Presence (Nix edition)
Took the appimage and wrapped it into a Nix package.
To build the Nix package, run the following:
```bash
nix build
```
This will only build on x86-64 Linux.

117
flake.nix
View File

@@ -1,73 +1,84 @@
# This flake was initially generated by fh, the CLI for FlakeHub (version 0.1.22)
{ {
# A helpful description of your flake
description = "Music Presence flake"; description = "Music Presence flake";
# Flake inputs
inputs = { inputs = {
flake-schemas.url = "https://flakehub.com/f/DeterminateSystems/flake-schemas/*"; flake-schemas.url = "https://flakehub.com/f/DeterminateSystems/flake-schemas/*";
nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/*"; nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/*";
}; };
# Flake outputs that other flakes can use outputs =
outputs = { self, flake-schemas, nixpkgs }: {
self,
flake-schemas,
nixpkgs,
}:
let let
# Helpers for producing system-specific outputs
supportedSystems = [ "x86_64-linux" ]; supportedSystems = [ "x86_64-linux" ];
forEachSupportedSystem = f: nixpkgs.lib.genAttrs supportedSystems (system: f { forEachSupportedSystem =
pkgs = import nixpkgs { inherit system; }; f:
}); nixpkgs.lib.genAttrs supportedSystems (
in { system:
# Schemas tell Nix about the structure of your flake's outputs f {
pkgs = import nixpkgs { inherit system; };
}
);
in
{
schemas = flake-schemas.schemas; schemas = flake-schemas.schemas;
# Development environments devShells = forEachSupportedSystem (
devShells = forEachSupportedSystem ({ pkgs }: { { pkgs }:
default = pkgs.mkShell { {
# Pinned packages available in the environment default = pkgs.mkShell {
packages = with pkgs; [ packages = with pkgs; [
curl curl
git git
jq jq
wget wget
nixpkgs-fmt nixpkgs-fmt
]; ];
};
});
packages = forEachSupportedSystem ({ pkgs }: {
default = let
pname = "musicpresence";
version = "2.3.4";
src = pkgs.fetchurl {
url = "https://github.com/ungive/discord-music-presence/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
hash = "";
}; };
}
);
appimageContents = pkgs.appimageTools.extract { inherit pname version src; }; packages = forEachSupportedSystem (
{ pkgs }:
{
default =
let
pname = "musicpresence";
version = "2.3.5";
in pkgs.appimageTools.wrapType2 { src = pkgs.fetchurl {
inherit pname version src; url = "https://github.com/ungive/discord-music-presence/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
hash = "sha256-M7oDxVevspA3SGuHktS8ChQAYopgIqypiVlzyE4uyqI=";
};
extraInstallCommands = '' appimageContents = pkgs.appimageTools.extract { inherit pname version src; };
install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications in
substituteInPlace $out/share/applications/${pname}.desktop \ pkgs.appimageTools.wrapType2 {
--replace-fail 'Exec=AppRun' 'Exec=${pname}' inherit pname version src;
cp -r ${appimageContents}/usr/share/icons $out/share
'';
passthru.updateScript = pkgs.nix-update-script { }; nativeBuildInputs = with pkgs; [ makeWrapper ];
extraInstallCommands = ''
wrapProgram $out/bin/${pname} \
--set QT_QPA_PLATFORM xcb \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"
install -Dm444 ${appimageContents}/musicpresence.desktop -t $out/share/applications
'';
meta = { passthru.updateScript = pkgs.nix-update-script { };
description = "The Discord music status that works with any media player";
mainProgram = "musicpresence"; meta = {
homepage = "https://github.com/ungive/discord-music-presence"; description = "The Discord music status that works with any media player";
maintainers = [ "wymillerlinux" ]; mainProgram = "musicpresence";
platforms = [ "x86_64-linux" ]; homepage = "https://github.com/ungive/discord-music-presence";
changelog = "https://github.com/ungive/discord-music-presence/releases/tag/v${version}"; maintainers = [ "wymillerlinux" ];
}; platforms = [ "x86_64-linux" ];
}; changelog = "https://github.com/ungive/discord-music-presence/releases/tag/v${version}";
}); };
};
}
);
}; };
} }