From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0.migadu.com ([2001:41d0:303:5f26::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id GKzyNArlimUdVAEAkFu2QA (envelope-from ) for ; Tue, 26 Dec 2023 15:36:58 +0100 Received: from aspmx1.migadu.com ([2001:41d0:403:58f0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0.migadu.com with LMTPS id UKKhLwrlimXHoQAAqHPOHw (envelope-from ) for ; Tue, 26 Dec 2023 15:36:58 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=sarg.org.ru header.s=google header.b=fril29of; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org"; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1703601418; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=cgenmGx5W69IPmQ2xghYqhWCEKRceYNEKeDi1oqTLtE=; b=uIDsBRpktAj/ydatGUO73K6XrN1NTdZQCvNdN77lBUAqBqtJawPxQwmE4B2hneIE0opCw8 debr/oGhOwYVv+LRV4bHyDHp0OO4Nj2xi2o1yCZfo4tOI8f7DRs9edJwr/PV205LEozucI oKTkNI8csF6YUy/9E+ohkQjyOYaGewfh1B5Ed+e9fEs/F5qC6HHtnupQpJOksRZM/dlvfi kokJwMvY0qNh2BL9os7DvECWAolHP91c+aMfymRZGoSyuDrJtTWkgqoB+JPWLlxS2MYMpi XIJS/hNf+J/ns6+WJ9CWvGgvywpZyg0BREocT6Q1rWyq0bjYV4SGPr8fYjOZIw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1703601418; a=rsa-sha256; cv=none; b=FY42bj9bUMj+Bsqqk0F+yuYuaylrGHku39U1gFK0Kbxy72OKvBbsIoK/GT+9YfzUrJgw9s JRfrtO+7gb33QIsuCg1Tl9CJlI/3arDVD505/VO6q0U0kmFia9/3HzROohJE98uOMrM6SY r6b7o7fcBOAQXtc1KugGqWFSrfw8rFnGfxh3O2crUfgG95mfS5kjeKEdSfLWrSOvNQBopo WyS4rxE0OJRLvspSjFJmepJd80KYQeP1VrIXKjnwrdVa0Bb1Bn1R4CwZaeWv5Tt38tX4I4 i/Q8qiI1hKK/W1A4IYmaDPF8X2ZeTv4c318CesqrsLg33nCJaIuwqQ06KjOYTQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=sarg.org.ru header.s=google header.b=fril29of; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org"; dmarc=none Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id A22373CDDF for ; Tue, 26 Dec 2023 15:36:58 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rI8Xg-0004lf-3M; Tue, 26 Dec 2023 09:36:24 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rI8Xd-0004lR-CY for guix-devel@gnu.org; Tue, 26 Dec 2023 09:36:21 -0500 Received: from mail-lf1-x12f.google.com ([2a00:1450:4864:20::12f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rI8Xa-0006cN-9b for guix-devel@gnu.org; Tue, 26 Dec 2023 09:36:21 -0500 Received: by mail-lf1-x12f.google.com with SMTP id 2adb3069b0e04-50e7abe4be4so1337356e87.2 for ; Tue, 26 Dec 2023 06:36:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sarg.org.ru; s=google; t=1703601374; x=1704206174; darn=gnu.org; h=mime-version:message-id:date:subject:to:from:user-agent:from:to:cc :subject:date:message-id:reply-to; bh=cgenmGx5W69IPmQ2xghYqhWCEKRceYNEKeDi1oqTLtE=; b=fril29oft84IY+2AH+Lw4wqee1fUmB/kAiiYePy8FzrcZd/q8PkEEEstZGFw5jUvZG 8bq6xFm6ZOvBMWWcOYdeilOIkiOS3CvinunqDljY2+eyqB4bzCqcRQTw6YUmq07y4AJu 0q9Eme88SZ/uTA2JaUUBGTJML7/nUFKGNM/gY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1703601374; x=1704206174; h=mime-version:message-id:date:subject:to:from:user-agent :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=cgenmGx5W69IPmQ2xghYqhWCEKRceYNEKeDi1oqTLtE=; b=bgQeygxVHmYeZS3eaeWTlK3mZYQiDc26lvYB5JLFATqQQ83IW4MEW0bfTVriTCoOgD iM2Dfs0zbI9gbazHN8JE1EPlwhLTz+gOkKF97S+ebsglvGlFox7/UeONvfnnQxM/N1L2 PyFS1KkAdcGemTK9AAlxQNC7DpxmMsEg8PI+pui3g0rDFRQbbbOm+Q0GoOnxUf9u4Y7q I62FwOME6i/dzF7JH0yXGVpIKFag6xdNlDfu6XbGb7FFyxsPc4714nsB9QRYKLVjTXiB /9zAVh+HOBHLkMaGv30Cif1fzJgw58OMGgEnfNqjxt3/TZqlpTI4enGdjuZ1ZAQvQE5P P8hw== X-Gm-Message-State: AOJu0Yx19bjnfkeJGC8+CAwIXu9/KhebQKzbPdCdHEdPLq5xOYRU+/2U CknHLW7yva97vNyQx0UBs6FoI5LwQfQgZIoZvedu024CfNUBEA== X-Google-Smtp-Source: AGHT+IHQ6Qv3DyDVQ3lyOiXd2i51Wr17L6SBvV4ArWzmGuCw9AgY52nIF+NCWkvFvGjtk2Serg7uDA== X-Received: by 2002:a05:6512:3f9:b0:50e:70ba:db5f with SMTP id n25-20020a05651203f900b0050e70badb5fmr1727052lfq.18.1703601374252; Tue, 26 Dec 2023 06:36:14 -0800 (PST) Received: from localhost ([2a02:2454:a09d:d000:a64e:31ff:fe38:fd6c]) by smtp.gmail.com with ESMTPSA id a5-20020a17090680c500b00a26a4458241sm5576148ejx.18.2023.12.26.06.36.13 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Dec 2023 06:36:14 -0800 (PST) User-agent: mu4e 1.10.8; emacs 30.0.50 From: Sergey Trofimov To: guix-devel@gnu.org Subject: Are declarative app configs worth it? Date: Tue, 26 Dec 2023 14:53:27 +0100 Message-ID: <874jg5hvz7.fsf@sarg.org.ru> MIME-Version: 1.0 Content-Type: text/plain; format=flowed Received-SPF: none client-ip=2a00:1450:4864:20::12f; envelope-from=sarg@sarg.org.ru; helo=mail-lf1-x12f.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: guix-devel-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Spam-Score: -3.19 X-Spam-Score: -3.19 X-Migadu-Queue-Id: A22373CDDF X-Migadu-Scanner: mx11.migadu.com X-TUID: 3YPV3UoLnP49 Hi guix, I want to start a discussion around how to manage user app config files. Copying my message from https://issues.guix.gnu.org/68010, where home-zathura-configuration with 76 fields is proposed. I have mixed feelings about pulling 3rd-party software configurations in guix: - adding it to guix increases maintenance burden: new versions could add or remove config options - it requires documentation/translation, another hidden cost - it bloats guix: imagine if we add configs for every user-configurable app - such configs are not easily transferrable: if I were to use the same app in non-guix env, I'd have to maintain 2 configs Another recent example is `oci-container-configuration` which defines a subset of docker-cli startup arguments. The problem is that `docker run` command has 96 options and the configuration only uses a handful, lacking a way to provide the remaining ones. I think guix should not embed config generators for user software. The only need I see for such generators is when there are options which should be the same among multiple applications (e.g. color schemes or shared directories). For such usecase guix should provide better text manipulation tools which home owners could use to parameterise configs. Best regards, Sergey Trofimov