53 lines
1.8 KiB
Nix
53 lines
1.8 KiB
Nix
#./apps/lookout.nix
|
|
{ pkgs, lib, config, ... }:
|
|
let
|
|
lookout = pkgs.rustPlatform.buildRustPackage (finalAttrs: {
|
|
pname = "lookout";
|
|
version = "0.9.99";
|
|
|
|
src = pkgs.fetchFromGitHub {
|
|
owner = "gavindi";
|
|
repo = "lookout";
|
|
tag = finalAttrs.version;
|
|
hash = "sha256-X0m5f/Kk8Uf4e330vY/E5OHb8i5O/JI0zLGWqYS2BzE=";
|
|
};
|
|
|
|
# Cargo workspace lives in source/, data/ next to it.
|
|
sourceRoot = "${finalAttrs.src.name}/source";
|
|
cargoHash = "sha256-6f9aNjvDcdpxxkGbxBDrEB94YZikpc3bNtYex0EREXE=";
|
|
|
|
# The app crate's tests instantiate GTK widgets, which needs a display.
|
|
doCheck = false;
|
|
|
|
nativeBuildInputs = with pkgs; [ pkg-config glib wrapGAppsHook4 ];
|
|
buildInputs = with pkgs; [ gtk4 libadwaita webkitgtk_6_0 ];
|
|
|
|
postInstall = ''
|
|
install -Dm644 data/io.github.gavindi.Lookout.desktop -t $out/share/applications
|
|
install -Dm644 data/io.github.gavindi.Lookout.metainfo.xml -t $out/share/metainfo
|
|
install -Dm644 data/icons/hicolor/scalable/apps/io.github.gavindi.Lookout.svg \
|
|
-t $out/share/icons/hicolor/scalable/apps
|
|
install -Dm644 data/gschema/io.github.gavindi.Lookout.gschema.xml \
|
|
-t $out/share/glib-2.0/schemas
|
|
'';
|
|
|
|
meta = {
|
|
description = "Native GNOME mail, calendar and contacts client shaped like Outlook";
|
|
homepage = "https://github.com/gavindi/lookout";
|
|
license = lib.licenses.gpl3Plus;
|
|
mainProgram = "lookout";
|
|
platforms = lib.platforms.linux;
|
|
};
|
|
});
|
|
in
|
|
{
|
|
config = lib.mkIf (lib.elem config.networking.hostName [ "FredOS-Gaming" "FredOS-Macbook" ]) {
|
|
environment.systemPackages = [
|
|
lookout
|
|
# Lookout reads accounts from GOA over D-Bus; nothing on Hyprland can add
|
|
# one without this settings panel.
|
|
pkgs.gnome-online-accounts-gtk
|
|
];
|
|
services.gnome.gnome-online-accounts.enable = true;
|
|
};
|
|
}
|