aboutsummaryrefslogtreecommitdiff
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 Mathieu Othacehe <othacehe@gnu.org>
;;; Copyright © 2023 Simon Tournier <zimon.toutoune@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix 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.
;;;
;;; GNU Guix 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 GNU Guix.  If not, see <http://www.gnu.org/licenses/>.

(define-module (gnu packages barrier)
  #:use-module (guix build-system cmake)
  #:use-module (guix utils)
  #:use-module (guix gexp)
  #:use-module (guix git-download)
  #:use-module (guix download)
  #:use-module ((guix licenses) #:prefix license:)
  #:use-module (guix packages)
  #:use-module (gnu packages avahi)
  #:use-module (gnu packages check)
  #:use-module (gnu packages cpp)
  #:use-module (gnu packages curl)
  #:use-module (gnu packages pkg-config)
  #:use-module (gnu packages qt)
  #:use-module (gnu packages tls)
  #:use-module (gnu packages xorg))

(define-public barrier
  (package
    (name "barrier")
    (version "2.4.0")
    (source
     (origin
       (method git-fetch)
       (uri (git-reference
             (url "https://github.com/debauchee/barrier")
             (commit (string-append "v" version))
             (recursive? #t)))
       (file-name (git-file-name name version))
       (sha256
        (base32 "19bwa9qidq2mxv1fkyxxc1xdmv3jx6bj35bkaaw70jzkblnfmlfs"))))
    (build-system cmake-build-system)
    (arguments
     (list
      #:configure-flags
      #~(list "-DBARRIER_USE_EXTERNAL_GTEST=ON")
      #:tests? #f ;; tests require a running x server
      #:phases
      #~(modify-phases %standard-phases
          (add-after 'unpack 'fix-null
            (lambda _
              (substitute* "src/lib/base/Event.h"
                (("#include \"common/stdmap\\.h\"")
                 "#include \"common/stdmap.h\"\n#include <cstddef>")))))))
    (native-inputs
     (list googletest pkg-config))
    (inputs
     (list avahi curl gulrak-filesystem libx11 libxtst openssl qtbase-5))
    (synopsis "Keyboard Video Mouse switch software")
    (description "@code{Barrier} is software that mimics the functionality of
a KVM switch, which historically would allow you to use a single keyboard and
mouse to control multiple computers by physically turning a dial on the box to
switch the machine you're controlling at any given moment.  Barrier does this
in software, allowing you to tell it which machine to control by moving your
mouse to the edge of the screen, or by using a keypress to switch focus to a
different system.")
    (home-page "https://github.com/debauchee/barrier")
    (license license:gpl2)))
to 0.36.0....Jai Vetrivelan 2022-02-27gnu: Add font-atui-feather....Wamm K. D 2022-02-21gnu: Add font-termsyn....kitzman 2022-02-08gnu: font-jetbrains-mono: Update to 2.242....jgart 2022-01-23gnu: Add font-charter....Philip McGrath 2022-01-18gnu: Add font-bravura....Philip McGrath 2022-01-18gnu: Add font-cormorant....Philip McGrath 2022-01-17gnu: Add font-plemoljp....Taiju HIGASHI 2022-01-13gnu: font-fira-go: Note lack of corresponding source....Philip McGrath 2022-01-13gnu: font-fira-code: Update to 6.2....Philip McGrath 2022-01-13gnu: font-fira-mono: Inherit from font-fira-sans....Philip McGrath 2022-01-13gnu: font-fira-sans: Update to 4.203....Philip McGrath 2021-12-30gnu: font-openmoji: Update to 13.1.0....Raghav Gururajan 2021-12-14gnu: font-cozette: Update to 1.13.0....Marius Bakke 2021-12-13gnu: Simplify package inputs....Ludovic Courtès 2021-12-05gnu: font-iosevka: Update to 11.2.0....simendsjo 2021-11-17gnu: font-adobe-source-code-pro: Update to 2.032R-ro-1.052R-it-1.012R-VAR....phodina 2021-11-08gnu: packages: Remove last year's deprecations....Tobias Geerinckx-Rice 2021-10-23gnu: font-juliamono: Update to 0.043....Konrad Hinsen 2021-10-21gnu: font-gnu-unifont: Cross-compile binaries....Tobias Geerinckx-Rice 2021-10-21gnu: font-gnu-unifont: Update to 14.0.01....Tobias Geerinckx-Rice 2021-10-18gnu: font-borg-sans-mono: Update to 0.3.3....Charles 2021-10-17gnu: font-liberation: Update to 2.1.5....Tobias Geerinckx-Rice 2021-10-16gnu: font-abattis-cantarell: Update to 0.303....Tobias Geerinckx-Rice 2021-10-16gnu: font-overpass: Update to 3.0.5....Tobias Geerinckx-Rice 2021-10-15gnu: font-abattis-cantarell: Downgrade to 0.301....Maxim Cournoyer 2021-10-15gnu: font-abattis-cantarell: Update variable name....Tobias Geerinckx-Rice 2021-10-13gnu: Remove duplicate python-google-brotli package....Tobias Geerinckx-Rice 2021-10-07gnu: font-canada1500: Update hash of source file....Ludovic Courtès 2021-09-26gnu: font-borg-sans-mono: Update to 0.3.2....Charles 2021-06-21gnu: font-overpass: Fix typo in description....Tobias Geerinckx-Rice 2021-06-21gnu: font-terminus: Build Open Type Bitmap....Boris A. Dekshteyn 2021-06-19gnu: Add new variable font-borg-sans-mono....Charles 2021-06-18gnu: Iosevka fonts: Update to 7.0.3....Paul A. Patience 2021-06-18gnu: Add font-overpass....Sarah Morgensen via Guix-patches via 2021-06-15gnu: font-terminus: Update to 4.49.1....Boris A. Dekshteyn