mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-26 08:53:21 +00:00
Merge pull request #63690 from michojel/megasync
megasync: init at 4.1.1.0
This commit is contained in:
commit
cd83cecdc8
@ -3278,6 +3278,11 @@
|
||||
github = "michelk";
|
||||
name = "Michel Kuhlmann";
|
||||
};
|
||||
michojel = {
|
||||
email = "mic.liamg@gmail.com";
|
||||
github = "michojel";
|
||||
name = "Michal Minář";
|
||||
};
|
||||
mickours = {
|
||||
email = "mickours@gmail.com<";
|
||||
github = "mickours";
|
||||
|
125
pkgs/applications/misc/megasync/default.nix
Normal file
125
pkgs/applications/misc/megasync/default.nix
Normal file
@ -0,0 +1,125 @@
|
||||
{ stdenv
|
||||
, autoconf
|
||||
, automake
|
||||
, c-ares
|
||||
, cryptopp
|
||||
, curl
|
||||
, doxygen
|
||||
, fetchFromGitHub
|
||||
, ffmpeg
|
||||
, hicolor-icon-theme
|
||||
, libmediainfo
|
||||
, libraw
|
||||
, libsodium
|
||||
, libtool
|
||||
, libuv
|
||||
, libzen
|
||||
, lsb-release
|
||||
, pkgconfig
|
||||
, qt5
|
||||
, sqlite
|
||||
, swig
|
||||
, unzip
|
||||
, wget
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "megasync-${version}";
|
||||
version = "4.1.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "meganz";
|
||||
repo = "MEGAsync";
|
||||
rev = "v${version}_Linux";
|
||||
sha256 = "0lc228q3s9xp78dxjn22g6anqlsy1hi7a6yfs4q3l6gyfc3qcxl2";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoconf
|
||||
automake
|
||||
doxygen
|
||||
lsb-release
|
||||
pkgconfig
|
||||
qt5.qmake
|
||||
qt5.qttools
|
||||
swig
|
||||
];
|
||||
buildInputs = [
|
||||
c-ares
|
||||
cryptopp
|
||||
curl
|
||||
ffmpeg
|
||||
hicolor-icon-theme
|
||||
libmediainfo
|
||||
libraw
|
||||
libsodium
|
||||
libtool
|
||||
libuv
|
||||
libzen
|
||||
qt5.qtbase
|
||||
qt5.qtsvg
|
||||
sqlite
|
||||
unzip
|
||||
wget
|
||||
];
|
||||
|
||||
patches = [
|
||||
# Distro and version targets attempt to use lsb_release which is broken
|
||||
# (see issue: https://github.com/NixOS/nixpkgs/issues/22729)
|
||||
./noinstall-distro-version.patch
|
||||
# megasync target is not part of the install rule thanks to a commented block
|
||||
./install-megasync.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
for file in $(find src/ -type f \( -iname configure -o -iname \*.sh \) ); do
|
||||
substituteInPlace "$file" --replace "/bin/bash" "${stdenv.shell}"
|
||||
done
|
||||
'';
|
||||
|
||||
dontUseQmakeConfigure = true;
|
||||
enableParallelBuilding = true;
|
||||
|
||||
preConfigure = ''
|
||||
cd src/MEGASync/mega
|
||||
./autogen.sh
|
||||
'';
|
||||
|
||||
configureFlags = [
|
||||
"--disable-examples"
|
||||
"--disable-java"
|
||||
"--disable-php"
|
||||
"--enable-chat"
|
||||
"--with-cares"
|
||||
"--with-cryptopp"
|
||||
"--with-curl"
|
||||
"--with-ffmpeg"
|
||||
"--without-freeimage" # unreferenced even when found
|
||||
"--without-readline"
|
||||
"--without-termcap"
|
||||
"--with-sodium"
|
||||
"--with-sqlite"
|
||||
"--with-zlib"
|
||||
];
|
||||
|
||||
postConfigure = ''
|
||||
cd ../..
|
||||
'';
|
||||
|
||||
preBuild = ''
|
||||
qmake CONFIG+="release" MEGA.pro
|
||||
pushd MEGASync
|
||||
lrelease MEGASync.pro
|
||||
DESKTOP_DESTDIR="$out" qmake PREFIX="$out" -o Makefile MEGASync.pro CONFIG+=release
|
||||
popd
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Easy automated syncing between your computers and your MEGA Cloud Drive";
|
||||
homepage = https://mega.nz/;
|
||||
license = licenses.unfree;
|
||||
platforms = [ "i686-linux" "x86_64-linux" ];
|
||||
maintainers = [ maintainers.michojel ];
|
||||
};
|
||||
}
|
21
pkgs/applications/misc/megasync/install-megasync.patch
Normal file
21
pkgs/applications/misc/megasync/install-megasync.patch
Normal file
@ -0,0 +1,21 @@
|
||||
Index: source/src/MEGASync/MEGASync.pro
|
||||
===================================================================
|
||||
--- source.orig/src/MEGASync/MEGASync.pro
|
||||
+++ source/src/MEGASync/MEGASync.pro
|
||||
@@ -28,11 +28,11 @@ unix:!macx {
|
||||
TARGET = megasync
|
||||
|
||||
# Uncomment the following if "make install" doesn't copy megasync in /usr/bin directory
|
||||
-# isEmpty(PREFIX) {
|
||||
-# PREFIX = /usr
|
||||
-# }
|
||||
-# target.path = $$PREFIX/bin
|
||||
-# INSTALLS += target
|
||||
+ isEmpty(PREFIX) {
|
||||
+ PREFIX = /usr
|
||||
+ }
|
||||
+ target.path = $$PREFIX/bin
|
||||
+ INSTALLS += target
|
||||
}
|
||||
else {
|
||||
TARGET = MEGAsync
|
@ -0,0 +1,13 @@
|
||||
Index: source/src/MEGASync/platform/platform.pri
|
||||
===================================================================
|
||||
--- source.orig/src/MEGASync/platform/platform.pri
|
||||
+++ source/src/MEGASync/platform/platform.pri
|
||||
@@ -37,7 +37,7 @@ unix:!macx {
|
||||
system(command -v lsb_release): version.commands = lsb_release -rs > $$version.target
|
||||
version.files = $$version.target
|
||||
|
||||
- INSTALLS += distro version
|
||||
+ # INSTALLS += distro version
|
||||
|
||||
QT += dbus
|
||||
SOURCES += $$PWD/linux/LinuxPlatform.cpp \
|
@ -1695,6 +1695,8 @@ in
|
||||
|
||||
massren = callPackage ../tools/misc/massren { };
|
||||
|
||||
megasync = callPackage ../applications/misc/megasync { };
|
||||
|
||||
meritous = callPackage ../games/meritous { };
|
||||
|
||||
opendune = callPackage ../games/opendune { };
|
||||
|
Loading…
Reference in New Issue
Block a user