Merge branch 'patch/intune' into 'master'
Draft: Add Microsoft Intune agent See merge request nonguix/nonguix!184
This commit is contained in:
commit
cb18a83a72
225
nongnu/packages/intune.scm
Normal file
225
nongnu/packages/intune.scm
Normal file
|
@ -0,0 +1,225 @@
|
||||||
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
|
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
|
||||||
|
;;;
|
||||||
|
;;; This file is not part of GNU Guix.
|
||||||
|
;;;
|
||||||
|
;;; This program is free software: you can redistribute it and/or modify
|
||||||
|
;;; it under the terms of the GNU General Public License as published by
|
||||||
|
;;; the Free Software Foundation, either version 3 of the License, or
|
||||||
|
;;; (at your option) any later version.
|
||||||
|
;;;
|
||||||
|
;;; This program is distributed in the hope that it will be useful,
|
||||||
|
;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
;;; GNU General Public License for more details.
|
||||||
|
;;;
|
||||||
|
;;; You should have received a copy of the GNU General Public License
|
||||||
|
;;; along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
(define-module (nongnu packages intune)
|
||||||
|
#:use-module (guix packages)
|
||||||
|
#:use-module (guix gexp)
|
||||||
|
#:use-module (gnu packages)
|
||||||
|
#:use-module (gnu packages admin)
|
||||||
|
#:use-module (gnu packages build-tools)
|
||||||
|
#:use-module (gnu packages base)
|
||||||
|
#:use-module (gnu packages ninja)
|
||||||
|
#:use-module (gnu packages curl)
|
||||||
|
#:use-module (gnu packages gnome)
|
||||||
|
#:use-module (gnu packages gtk)
|
||||||
|
#:use-module (gnu packages glib)
|
||||||
|
#:use-module (gnu packages linux)
|
||||||
|
#:use-module (gnu packages tls)
|
||||||
|
#:use-module (gnu packages gcc)
|
||||||
|
#:use-module (gnu packages compression)
|
||||||
|
#:use-module (gnu packages sqlite)
|
||||||
|
#:use-module (gnu packages webkit)
|
||||||
|
#:use-module (gnu packages xorg)
|
||||||
|
#:use-module (gnu packages pkg-config)
|
||||||
|
#:use-module (guix download)
|
||||||
|
#:use-module (guix git-download)
|
||||||
|
#:use-module (nonguix build-system binary)
|
||||||
|
#:use-module (guix build-system cmake)
|
||||||
|
#:use-module ((guix licenses)
|
||||||
|
#:prefix license:))
|
||||||
|
|
||||||
|
(define-public intune
|
||||||
|
(package
|
||||||
|
(name "intune")
|
||||||
|
(version "1.2211.21")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://packages.microsoft.com/ubuntu/20.04/prod/pool/main/i/intune-portal/intune-portal_"
|
||||||
|
version "_amd64.deb"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1m3d0f0x27c4ahv2h0035yw3ihcihw2r31h0in8r34r45nmq2r39"))))
|
||||||
|
(build-system binary-build-system)
|
||||||
|
(arguments
|
||||||
|
(list #:patchelf-plan #~`(("opt/microsoft/intune/bin/intune-agent" ("atk"
|
||||||
|
"libx11"
|
||||||
|
"libsecret"
|
||||||
|
"openssl"
|
||||||
|
"libsoup-minimal"
|
||||||
|
"util-linux"
|
||||||
|
"gtk+"
|
||||||
|
"glibc"
|
||||||
|
"zlib"
|
||||||
|
"inetutils"
|
||||||
|
"sqlite"
|
||||||
|
"curl"
|
||||||
|
"libstdc++"
|
||||||
|
"gcc"
|
||||||
|
"webkitgtk-with-libsoup2"
|
||||||
|
"glib"))
|
||||||
|
("opt/microsoft/intune/bin/intune-portal" ("atk"
|
||||||
|
"libx11"
|
||||||
|
"libsecret"
|
||||||
|
"libsoup-minimal"
|
||||||
|
"openssl"
|
||||||
|
"util-linux"
|
||||||
|
"glibc"
|
||||||
|
"gtk+"
|
||||||
|
"zlib"
|
||||||
|
"sqlite"
|
||||||
|
"inetutils"
|
||||||
|
"pango"
|
||||||
|
"curl"
|
||||||
|
"libstdc++"
|
||||||
|
"gcc"
|
||||||
|
"webkitgtk-with-libsoup2"
|
||||||
|
"glib")))
|
||||||
|
#:install-plan #~`(("opt/microsoft/intune/bin" "bin"))
|
||||||
|
#:phases #~(modify-phases %standard-phases
|
||||||
|
(delete 'validate-runpath)
|
||||||
|
(replace 'unpack
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(let ((debian-files (assoc-ref inputs "source")))
|
||||||
|
(invoke "ar" "x" debian-files)
|
||||||
|
(invoke "tar" "xJf" "data.tar.xz")))))))
|
||||||
|
(inputs (list atk
|
||||||
|
libx11
|
||||||
|
curl
|
||||||
|
;; msalsdk-dbusclient
|
||||||
|
libsecret
|
||||||
|
libsoup-minimal-2
|
||||||
|
glibc
|
||||||
|
openssl
|
||||||
|
(make-libstdc++ gcc)
|
||||||
|
inetutils ;for hostname
|
||||||
|
`(,util-linux "lib")
|
||||||
|
webkitgtk-with-libsoup2
|
||||||
|
`(,gcc "lib")
|
||||||
|
pango
|
||||||
|
gtk+
|
||||||
|
sqlite
|
||||||
|
;; systemd
|
||||||
|
zlib
|
||||||
|
glib))
|
||||||
|
(synopsis "Microsoft Intune Endpoint Agent")
|
||||||
|
(description "This package provides Microsoft Endpoint Manager to protect
|
||||||
|
organization-owned data on devices.")
|
||||||
|
(home-page
|
||||||
|
"https://docs.microsoft.com/en-us/mem/intune/fundamentals/what-is-intune")
|
||||||
|
;; Well what to do
|
||||||
|
;; https://docs.microsoft.com/en-us/mem/intune/fundamentals/licenses
|
||||||
|
(license #f)))
|
||||||
|
|
||||||
|
(define-public msalsdk-dbusclient
|
||||||
|
(package
|
||||||
|
(name "msalsdk-dbusclient")
|
||||||
|
(version "1.0.0")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://packages.microsoft.com/ubuntu/20.04/prod/pool/main/m/msalsdk-dbusclient/msalsdk-dbusclient_"
|
||||||
|
version "_amd64.deb"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0dhbmwrkqg3swd3y8f6r5xrnvrzc1vkpc10sdw4z6fwx0cbqsn3q"))))
|
||||||
|
(build-system binary-build-system)
|
||||||
|
(arguments
|
||||||
|
(list #:patchelf-plan #~`(("usr/lib/libmsal_dbus_client.so" ("glibc"
|
||||||
|
"dbus"
|
||||||
|
"libstdc++"
|
||||||
|
"gcc")))
|
||||||
|
;; #:install-plan
|
||||||
|
;; #~`(("usr/bin" "bin"))
|
||||||
|
#:phases #~(modify-phases %standard-phases
|
||||||
|
(replace 'unpack
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(let ((debian-files (assoc-ref inputs "source")))
|
||||||
|
(invoke "ar" "x" debian-files)
|
||||||
|
(invoke "tar" "xzf" "data.tar.gz")))))))
|
||||||
|
(inputs (list dbus glibc
|
||||||
|
(make-libstdc++ gcc)
|
||||||
|
`(,gcc "lib")
|
||||||
|
;; sdbus-cpp
|
||||||
|
))
|
||||||
|
(synopsis "Microsoft Authentication Library cross platform")
|
||||||
|
(description "")
|
||||||
|
(home-page "")
|
||||||
|
;; Well what to do
|
||||||
|
;; https://docs.microsoft.com/en-us/mem/intune/fundamentals/licenses
|
||||||
|
(license #f)))
|
||||||
|
|
||||||
|
(define-public sdbus-cpp
|
||||||
|
(package
|
||||||
|
(name "sdbus-cpp")
|
||||||
|
(version "1.1.0")
|
||||||
|
(source (origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/Kistler-Group/sdbus-cpp")
|
||||||
|
(recursive? #t)
|
||||||
|
(commit (string-append "v" version))))
|
||||||
|
;; (patches '("patches/sdbus-cpp-remove-systemd.patch"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
;; "1d1fdk47j36mvnmp9lnypj9cfmfkxm3hc507iis775lci7lrjdh2"))))
|
||||||
|
"1d1fdk47j36mvnmp9lnypj9cfmfkxm3hc507iis775lci7lrjdh2"))))
|
||||||
|
(build-system cmake-build-system)
|
||||||
|
(arguments
|
||||||
|
(list #:configure-flags #~(list "-DBUILD_LIBSYSTEMD=ON"
|
||||||
|
"-DBUILD_TESTS=ON")
|
||||||
|
#:phases #~(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'fix-mount-package
|
||||||
|
(lambda* _
|
||||||
|
(substitute* "cmake/LibsystemdExternalProject.cmake"
|
||||||
|
(("MOUNT mount")
|
||||||
|
"UTIL-LINUX util-linux")))))))
|
||||||
|
(native-inputs (list meson ninja pkg-config))
|
||||||
|
(inputs (list dbus util-linux libcap))
|
||||||
|
(home-page "https://github.com/Kistler-Group/sdbus-cpp")
|
||||||
|
(synopsis "High-level C++ D-Bus library")
|
||||||
|
(description "")
|
||||||
|
(license license:lgpl2.1)))
|
||||||
|
|
||||||
|
; TODO: JAVA based
|
||||||
|
(define-public msft-identity-broker
|
||||||
|
(package
|
||||||
|
(name "msft-identity-broker")
|
||||||
|
(version "1.0.6")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://packages.microsoft.com/ubuntu/20.04/prod/pool/main/m/msft-identity-broker/msft-identity-broker_"
|
||||||
|
version "_amd64.deb"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1frbqsvsz74w1sms2sdbn402b2aabp4v354g4qs2nl0agcnvw8sm"))))
|
||||||
|
(build-system binary-build-system)
|
||||||
|
(arguments
|
||||||
|
(list #:phases #~(modify-phases %standard-phases
|
||||||
|
(replace 'unpack
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(let ((debian-files (assoc-ref inputs "source")))
|
||||||
|
(invoke "ar" "x" debian-files)
|
||||||
|
(invoke "tar" "xzf" "data.tar.gz")))))))
|
||||||
|
(synopsis "Microsoft Identity broker")
|
||||||
|
(description "")
|
||||||
|
(home-page "")
|
||||||
|
;; Well what to do
|
||||||
|
;; https://docs.microsoft.com/en-us/mem/intune/fundamentals/licenses
|
||||||
|
(license #f)))
|
Loading…
Reference in New Issue
Block a user