summaryrefslogtreecommitdiff
path: root/sigils/packages/minecraft.scm
blob: 4925aa68878e1baa86249b75b8bd0ca9273f96e3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
(define-module (sigils packages minecraft)
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix gexp)
  #:use-module ((guix licenses)
                #:prefix license:)
  ;; fjord-launcher
  #:use-module (guix build-system cmake)
  #:use-module (gnu packages kde-frameworks)
  #:use-module (gnu packages qt)
  #:use-module (gnu packages markup)
  #:use-module (gnu packages cpp)
  #:use-module (gnu packages compression)
  #:use-module (gnu packages gl)
  #:use-module (gnu packages xdisorg)
  #:use-module (gnu packages vulkan)
  #:use-module (gnu packages pkg-config)
  #:use-module (gnu packages man)
  #:use-module (gnu packages java))

;;; FjordLauncher

(define-public qt6ct
  (package
    (inherit qt5ct)
    (name "qt6ct")
    (version "0.9")
    (source
     (origin
       (method url-fetch)
       (uri (string-append
             "https://github.com/trialuser02/qt6ct/archive/refs/tags/" version
             ".tar.gz"))
       (sha256
        (base32 "0vl2x3livyik5mf8qg4zpkxx9zd1nglxxj6rgjadcbd8a7xw8jda"))))
    (native-inputs (list qttools libxkbcommon vulkan-headers))
    (inputs (list qtsvg qtbase))
    (arguments
     (list
      #:tests? #f ;No target
      #:phases #~(modify-phases %standard-phases
                   (add-after 'unpack 'patch
                     (lambda _
                       (substitute* '("src/qt6ct-qtplugin/CMakeLists.txt"
                                      "src/qt6ct-style/CMakeLists.txt")
                         (("\\$\\{PLUGINDIR\\}")
                          (string-append #$output "/lib/qt6/plugins"))))))))
    (synopsis "Qt6 Configuration Tool")
    (description
     "Qt6CT is a program that allows users to configure Qt6 settings (such
as icons, themes, and fonts) in desktop environments or
+ window managers, that don't provide Qt integration by themselves.")))

(define with-qt6
  (package-mapping (lambda (p)
                     (package
                       (inherit p)
                       (inputs (modify-inputs (package-inputs p)
                                 (replace "qtbase" qtbase)
                                 (append qt5compat)))))
                   (lambda _
                     #t)))

(define-public fjordlauncher
  (package
    (name "fjordlauncher")
    (version "8.4.1")
    (source
     (origin
       (method url-fetch)
       (uri (string-append
             "https://github.com/unmojang/FjordLauncher/releases/download/"
             version "/FjordLauncher-" version ".tar.gz"))
       (sha256
        (base32 "100q9sgimcvi9k8290z01hdb9p96pa5prq8ifzjz22iba9hf43x1"))))
    (build-system cmake-build-system)
    (native-inputs (list extra-cmake-modules vulkan-headers pkg-config scdoc))
    (inputs (list qtbase
                  qt5compat
                  cmark
                  zlib
                  libglvnd
                  gulrak-filesystem
                  ;; no toml++ because they bundled it with an older version
                  (with-qt6 quazip)
                  `(,openjdk17 "jdk")
                  libxkbcommon))
    (arguments
     (list
      #:tests? #f
      #:configure-flags #~'("-DBUILD_TESTING=yes"
                            "-DLauncher_APP_BINARY_NAME=fjordlauncher"
                            "-DLauncher_BUILD_PLATFORM=Guix"
                            "-DLauncher_QT_VERSION_MAJOR=6")))
    (home-page "https://github.com/unmojang/FjordLauncher")
    (synopsis "Prism Launcher fork with support for alternative auth servers")
    (description
     "Fjord Launcher is a fork of Prism Launcher. It was based on PollyMC, which is now unmaintained. It is not endorsed by or affiliated with Prism Launcher or PollyMC.")
    (license license:gpl3)))