Skip to content

Commit

Permalink
Merge pull request #247112 from OPNA2608/init/lomiri/lomiri-terminal-app
Browse files Browse the repository at this point in the history
  • Loading branch information
SuperSandro2000 authored Jan 17, 2024
2 parents 6f8d6d3 + 6d8373b commit 23a88af
Show file tree
Hide file tree
Showing 3 changed files with 109 additions and 0 deletions.
2 changes: 2 additions & 0 deletions nixos/tests/terminal-emulators.nix
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,8 @@ let tests = {

konsole.pkg = p: p.plasma5Packages.konsole;

lomiri-terminal-app.pkg = p: p.lomiri.lomiri-terminal-app;

lxterminal.pkg = p: p.lxterminal;

mate-terminal.pkg = p: p.mate.mate-terminal;
Expand Down
104 changes: 104 additions & 0 deletions pkgs/desktops/lomiri/applications/lomiri-terminal-app/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
{ stdenv
, lib
, fetchFromGitLab
, fetchpatch
, gitUpdater
, nixosTests
, cmake
, gsettings-qt
, lomiri-ui-extras
, lomiri-ui-toolkit
, pkg-config
, qmltermwidget
, qtbase
, qtdeclarative
, qtsystems
, wrapQtAppsHook
}:

stdenv.mkDerivation (finalAttrs: {
pname = "lomiri-terminal-app";
version = "2.0.2";

src = fetchFromGitLab {
owner = "ubports";
repo = "development/apps/lomiri-terminal-app";
rev = "v${finalAttrs.version}";
hash = "sha256-mXbPmVcl5dL78QUp+w3o4im5ohUQCPTKWLSVqlNO0yo=";
};

patches = [
# Stop usage of private qt5_use_modules function, seemingly unavailable in this package
# Remove when https://gitlab.com/ubports/development/apps/lomiri-terminal-app/-/merge_requests/103 merged & in release
(fetchpatch {
name = "0001-lomiri-terminal-app-Stop-using-qt5_use_modules.patch";
url = "https://gitlab.com/ubports/development/apps/lomiri-terminal-app/-/commit/db210c74e771a427066aebdc3a99cab6e782d326.patch";
hash = "sha256-op4+/eo8rBRMcW6MZ0rOEFReM7JBCck1B+AsgAPyqAI=";
})

# Explicitly bind textdomain, don't rely on hacky workaround in LUITK
# Remove when https://gitlab.com/ubports/development/apps/lomiri-terminal-app/-/merge_requests/104 merged & in release
(fetchpatch {
name = "0002-lomiri-terminal-app-Call-i18n.bindtextdomain.patch";
url = "https://gitlab.com/ubports/development/apps/lomiri-terminal-app/-/commit/7f9d419e29043f0d0922d2ac1dce5673e2723a01.patch";
hash = "sha256-HfIvGVbIdTasoHAfHysnzFLufQQ4lskym5HTekH+mjk=";
})

# Add more & correct existing usage of GNUInstallDirs variables
# Remove when https://gitlab.com/ubports/development/apps/lomiri-terminal-app/-/merge_requests/105 merged & in release
(fetchpatch {
name = "0003-lomiri-terminal-app-GNUInstallDirs-usage.patch";
url = "https://gitlab.com/ubports/development/apps/lomiri-terminal-app/-/commit/fcde1f05bb442c74b1dff95917fd7594f26e97a7.patch";
hash = "sha256-umxCMGNjyz0TVmwH0Gl0MpgjLQtkW9cHkUfpNJcoasE=";
})
];

postPatch = ''
substituteInPlace CMakeLists.txt \
--replace "\''${CMAKE_INSTALL_LIBDIR}/qt5/qml" "\''${CMAKE_INSTALL_PREFIX}/${qtbase.qtQmlPrefix}"
# Tests look abandoned - add_test in CMake code is commented out, refers to old repo structure in import paths
sed -i -e '/add_subdirectory(tests)/d' CMakeLists.txt
'';

strictDeps = true;

nativeBuildInputs = [
cmake
pkg-config
wrapQtAppsHook
];

buildInputs = [
qtbase
qtdeclarative
qmltermwidget

# QML
gsettings-qt
lomiri-ui-extras
lomiri-ui-toolkit
qtsystems
];

cmakeFlags = [
"-DINSTALL_TESTS=OFF"
"-DCLICK_MODE=OFF"
];

passthru = {
tests.vm-test = nixosTests.terminal-emulators.lomiri-terminal-app;
updateScript = gitUpdater {
rev-prefix = "v";
};
};

meta = with lib; {
description = "A terminal app for desktop and mobile devices";
homepage = "https://gitlab.com/ubports/development/apps/lomiri-terminal-app";
license = licenses.gpl3Only;
mainProgram = "lomiri-terminal-app";
maintainers = teams.lomiri.members;
platforms = platforms.linux;
};
})
3 changes: 3 additions & 0 deletions pkgs/desktops/lomiri/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ let
packages = self: let
inherit (self) callPackage;
in {
#### Core Apps
lomiri-terminal-app = callPackage ./applications/lomiri-terminal-app { };

#### Data
lomiri-schemas = callPackage ./data/lomiri-schemas { };
suru-icon-theme = callPackage ./data/suru-icon-theme { };
Expand Down

0 comments on commit 23a88af

Please sign in to comment.