From 167ccd7d315538daaf7de4a877e128a3aaed9c29 Mon Sep 17 00:00:00 2001 From: Berk Arslan Date: Wed, 11 Sep 2024 15:16:38 +0300 Subject: [PATCH] Add printing service in chromium-vm and bussiness-vm CUPS is enabled in chromium-vm and bussines-vm CUPS overlay is applied due to printer webpage bug. Avahi service reflection is added in net-vm Signed-off-by: Berk Arslan --- modules/microvm/virtualization/microvm/netvm.nix | 5 +++++ modules/reference/appvms/business.nix | 7 +++++++ modules/reference/appvms/chromium.nix | 7 +++++++ overlays/custom-packages/cups/default.nix | 14 ++++++++++++++ overlays/custom-packages/default.nix | 1 + 5 files changed, 34 insertions(+) create mode 100644 overlays/custom-packages/cups/default.nix diff --git a/modules/microvm/virtualization/microvm/netvm.nix b/modules/microvm/virtualization/microvm/netvm.nix index b22ace7009..9c88f970fc 100644 --- a/modules/microvm/virtualization/microvm/netvm.nix +++ b/modules/microvm/virtualization/microvm/netvm.nix @@ -85,6 +85,11 @@ let firewall.allowedTCPPorts = [ 53 ]; firewall.allowedUDPPorts = [ 53 ]; }; + services.avahi = { + enable = true; + nssmdns4 = true; + reflector = true; + }; services.openssh = config.ghaf.security.sshKeys.sshAuthorizedKeysCommand; diff --git a/modules/reference/appvms/business.nix b/modules/reference/appvms/business.nix index 2fe8908bbe..93d608400d 100644 --- a/modules/reference/appvms/business.nix +++ b/modules/reference/appvms/business.nix @@ -99,6 +99,13 @@ in # Set default PDF XDG handler xdg.mime.defaultApplications."application/pdf" = "ghaf-pdf.desktop"; + services.printing.enable = true; + services.avahi = { + enable = true; + nssmdns4 = true; + reflector = true; + }; + # TODO: Add a way to configure the gpclient # also check the openconnect cli options https://discourse.nixos.org/t/globalprotect-vpn/24014/5 services.globalprotect = { diff --git a/modules/reference/appvms/chromium.nix b/modules/reference/appvms/chromium.nix index 2b70947200..7b836c5b64 100644 --- a/modules/reference/appvms/chromium.nix +++ b/modules/reference/appvms/chromium.nix @@ -89,6 +89,13 @@ in # Set default PDF XDG handler xdg.mime.defaultApplications."application/pdf" = "ghaf-pdf.desktop"; + + services.printing.enable = true; + services.avahi = { + enable = true; + nssmdns4 = true; + reflector = true; + }; } ]; borderColor = "#630505"; diff --git a/overlays/custom-packages/cups/default.nix b/overlays/custom-packages/cups/default.nix new file mode 100644 index 0000000000..c71773c29f --- /dev/null +++ b/overlays/custom-packages/cups/default.nix @@ -0,0 +1,14 @@ +# Copyright 2022-2024 TII (SSRC) and the Ghaf contributors +# SPDX-License-Identifier: Apache-2.0 +{ final, prev }: +prev.cups.overrideAttrs ( + _final: _prev: { + version = "17.5.229"; + src = final.fetchFromGitHub { + owner = "OpenPrinting"; + repo = "cups"; + rev = "313c388dbc023bbcb75d1efed800d0cfc992a6cc"; + hash = "sha256-weu12hlrYUYY90pe0dJ6CiLtm8ynrLA9nT4j7iRwA+Q="; + }; + } +) diff --git a/overlays/custom-packages/default.nix b/overlays/custom-packages/default.nix index 82ef7845d8..2d4f7d1844 100644 --- a/overlays/custom-packages/default.nix +++ b/overlays/custom-packages/default.nix @@ -19,4 +19,5 @@ mitmweb-ui = final.callPackage ../../packages/mitmweb-ui { }; gtklock = import ./gtklock { inherit prev; }; hardware-scan = final.callPackage ../../packages/hardware-scan { }; + cups = import ./cups { inherit final prev; }; })