Received: from pmta31.teksavvy.com (pmta31.teksavvy.com [76.10.157.38]) by nld3-dev1.alpinelinux.org (Postfix) with ESMTPS id 69D8C78076D for <~alpine/devel@lists.alpinelinux.org>; Thu, 30 Jun 2022 06:16:52 +0000 (UTC) IronPort-SDR: r2XgZTmSqwAH7BR3XPnAeIupYf1z2CBI4rAuNseE/FiCuqpWEj5MntSYMbqaJbTgG0NT7U9Bs+ BQ5mC8pFWIqA== IronPort-PHdr: =?us-ascii?q?A9a23=3AMFGX8RFgJm86cZEIBTTP451GftMY04WdBeZdw?= =?us-ascii?q?oUqgbJJabjl45nhJ0XB++Qrh1jMDuC5o7oMw6Ke++j7QWJV+Z+aqzhCa5FKW?= =?us-ascii?q?xIfweQu1w07SJfdVguic6+sNXRkWp4TFRd++m2jd01cGcLwfVrX93G84SYPE?= =?us-ascii?q?BH+PiJqJ+D5BoPZj8u+zey//dvYak1TgSalJ7N/KBLjnlyA7I9P39skceBom?= =?us-ascii?q?kr8ykY=3D?= IronPort-Data: =?us-ascii?q?A9a23=3A3WxYvah4nw5X5rutPvK7+vxtX161pBIKZh0uj?= =?us-ascii?q?C45NGQN5FlHY01jehtvWjrXMvncajT0e9B/aI2w8h4Hu8OGztZkGVdlqHo9H?= =?us-ascii?q?ikW8JqUDtmwEBz9bniYRiHhoOKLzCm/huEtpanYd1eEzvuWGuWn/CMUOZ2gH?= =?us-ascii?q?OKmUraaYXgpHGeIdQ944f5ds79h6mJXqYXha++9kYuaT/z3YDdJ6RYtWo4nw?= =?us-ascii?q?/jrRCdUgRjHkGhwUmrSxRx8lAS2e3E9VPrzLEwqRpfyatE88uWSH44vwFwll?= =?us-ascii?q?49wEspENz+rrlr7WhVirr/6IgWEin1NR+6+jxtZrzIsw+AwM/90hUV/0W3Px?= =?us-ascii?q?o0ojooW88XpFW/FPYWV8AgZexVWHzljN6lH85fYIHyzrcGYz0LPaXfhxbNlB?= =?us-ascii?q?SnaOKVBqrkuWj8XrKBwxDclK0rra/iN6KSyTvFtgMlkIMT1MYc3vnB70SqfB?= =?us-ascii?q?PI+QJbOR6TM+M8e2y0/7v2it962i9ExdjdlbBPbf1tTN1QMAYwgjaGjgXyXT?= =?us-ascii?q?tGRk3rNzYJf3oQZ5FUZPGDRDefo?= IronPort-HdrOrdr: =?us-ascii?q?A9a23=3AoxhCHK6F/gf7qSpF1APXwPnXdLJyesId70?= =?us-ascii?q?hD6qkQc3Fom7+j5qKTdZMgpHnJYVcqKRYdcLW7UpVoLkmzyXcY2/h1AV7AZm?= =?us-ascii?q?jbUQmTQ72KhLGKq1bd9jXFmtK1vp0QF5SWZueAbmSSwfyb3OE+eexQueVuds?= =?us-ascii?q?qT9J/j80s=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2H9BgBVP71i/3JJlxRagQmBUYIigQG?= =?us-ascii?q?BBAdMAoRNg0+NPYQmlnqBaoFoCwEBAQEBAQEBAQk3CwQBAQMBAoE8iQ8nOBM?= =?us-ascii?q?BAgQBAQESAQEBBQEBAQEBBwQCAoEYhWgNQAEMAYJjeAEBAQEBAQEBAScBKgI?= =?us-ascii?q?NUiRsDwENAQEsDBgcAhkNAmwIAQGCeQGDGBKQK5wUgTGBAYIIAQEGgQaBWYU?= =?us-ascii?q?HCYERLAGGHxdHh3lDgg2BPIYjBIEpAQwFAgEIZYMJgmWXXoI1JgQPAxotLxK?= =?us-ascii?q?BIG4BCAYDAwcKBTAGAgwYFAQCExJTHAISBQcKGw4UHCQXDA8DEgMRAQcCCRI?= =?us-ascii?q?IFSsIAwIDCAMCAysCAxYJBwoDHQgKHBIQFAIEER4LCAMZHiwJAgQOA0AICwo?= =?us-ascii?q?DEQQDExgJFggQBAYDCC8NJwsDFA0BBgMGAgUFAQMgAxQDBSQHAyEPJg0NBCI?= =?us-ascii?q?dAwMFJQMCAhsHAgIDAgYVBgICbi4NCAQIBDckDwUCBy8FBC8CHgQFBhEIAhY?= =?us-ascii?q?CBgQFAgQEFgIQCAIIJxcHExgbGQEFWRAJIRwKHxAFBhYDIW4FCjsPKDQ2PCw?= =?us-ascii?q?fGwqBGiwrFgMEBAMCBhoDAyICEikGNwMWBisoHAKbM4EBLX0FGwI2KDAvVES?= =?us-ascii?q?JW4hGAxuNeaBUBwODTgWJeoEilGAGEy2FRZElkXqSFIRfjTKUGzogAYUbgXi?= =?us-ascii?q?BD3CBQIJoCUgZD5E+gUOFYoQpWQc0AgYBCgEBAwmJWIJmgkcBAQ?= X-IPAS-Result: =?us-ascii?q?A2H9BgBVP71i/3JJlxRagQmBUYIigQGBBAdMAoRNg0+NP?= =?us-ascii?q?YQmlnqBaoFoCwEBAQEBAQEBAQk3CwQBAQMBAoE8iQ8nOBMBAgQBAQESAQEBB?= =?us-ascii?q?QEBAQEBBwQCAoEYhWgNQAEMAYJjeAEBAQEBAQEBAScBKgINUiRsDwENAQEsD?= =?us-ascii?q?BgcAhkNAmwIAQGCeQGDGBKQK5wUgTGBAYIIAQEGgQaBWYUHCYERLAGGHxdHh?= =?us-ascii?q?3lDgg2BPIYjBIEpAQwFAgEIZYMJgmWXXoI1JgQPAxotLxKBIG4BCAYDAwcKB?= =?us-ascii?q?TAGAgwYFAQCExJTHAISBQcKGw4UHCQXDA8DEgMRAQcCCRIIFSsIAwIDCAMCA?= =?us-ascii?q?ysCAxYJBwoDHQgKHBIQFAIEER4LCAMZHiwJAgQOA0AICwoDEQQDExgJFggQB?= =?us-ascii?q?AYDCC8NJwsDFA0BBgMGAgUFAQMgAxQDBSQHAyEPJg0NBCIdAwMFJQMCAhsHA?= =?us-ascii?q?gIDAgYVBgICbi4NCAQIBDckDwUCBy8FBC8CHgQFBhEIAhYCBgQFAgQEFgIQC?= =?us-ascii?q?AIIJxcHExgbGQEFWRAJIRwKHxAFBhYDIW4FCjsPKDQ2PCwfGwqBGiwrFgMEB?= =?us-ascii?q?AMCBhoDAyICEikGNwMWBisoHAKbM4EBLX0FGwI2KDAvVESJW4hGAxuNeaBUB?= =?us-ascii?q?wODTgWJeoEilGAGEy2FRZElkXqSFIRfjTKUGzogAYUbgXiBD3CBQIJoCUgZD?= =?us-ascii?q?5E+gUOFYoQpWQc0AgYBCgEBAwmJWIJmgkcBAQ?= X-IronPort-AV: E=Sophos;i="5.92,233,1650945600"; d="scan'208";a="187136114" Received: from webhost.teksavvy.com ([20.151.73.114]) by hsmtp13.teksavvy.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 30 Jun 2022 02:16:50 -0400 Received: from [192.168.3.189] (107-179-206-29.cpe.teksavvy.com [107.179.206.29]) by webhost.teksavvy.com (Postfix) with ESMTPSA id 707DF314D0DF for <~alpine/devel@lists.alpinelinux.org>; Thu, 30 Jun 2022 02:16:50 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wildtechgarden.ca; s=default; t=1656569810; bh=1+jAKlffrC8dr2QFI96g9yM2+98NbyCVeEZ2M+dwN8o=; h=To:From:Subject; b=KxWimuYduRDU3WWJiGH8Ggo8Dtn3g9JLDGKxI2WUps+PkMK1+sTOVDOhFORJKcw2B 3j5xlFUobZvuFnRD1AKndDrBaxN3TmACpRrXkPiB8PicOfeg6+JovVTMSgz/yA5mXf aLtKCkcvB3RZeuf7GVo5zOJ3jFAacHgGwuNCZqhc= Authentication-Results: webhost.teksavvy.com; spf=pass (sender IP is 107.179.206.29) smtp.mailfrom=dfdpublic@wildtechgarden.ca smtp.helo=[192.168.3.189] Received-SPF: pass (webhost.teksavvy.com: connection is authenticated) Message-ID: <4caa8c5f-7ebf-ad2f-0e92-29428785fe60@wildtechgarden.ca> Date: Thu, 30 Jun 2022 02:16:49 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.10.0 To: ~alpine/devel@lists.alpinelinux.org Content-Language: en-CA From: "Daniel F. Dickinson" Subject: Fixing shell script libraries like /lib/libalpine.sh Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-PPP-Message-ID: <20220630061650.26641.37928@webhost.teksavvy.com> X-PPP-Vhost: wildtechgarden.ca Hello, I've noticed some issues with the Alpine shell script libraries (one example below)[1] I'm new to Alpine but not to Linux, *BSD, or (way back) Ultrix, and have not (yet) dug into the Alpine code base and infrastructure. (Although I have my 'notes-to-self' documentation[2] that I intend (RSN...) to integrate into the Wiki and have published on my website). My questions with respect to the issues mentioned are: 1. Do you prefer the GitLab merge request interface or the mailing list for patches?[3] 2. If you are not already using tools like shellcheck / shellfmt and or shell unit tests in your CI, do you have objections to such being added? I'm hoping to spend some time fixing this type of issue as they result in annoying hiccups when trying to automate setup-alpine, and I'd like that to work well. A final note: I've got some cloud-init image creation using Packer that I soon intend to push to public repository, along with Terraform usage of the same; is there interest in those here? I almost forgot; what is the status the work on the 'tiny' cloud-init substitute or other alternatives in Alpine? Regards, Daniel [1]: # test the first argument against the remaining ones, return success on a match isin() {     local _a=$1 _b     shift     for _b; do         [ "$_a" = "$_b" ] && return 0     done     return 1 } _b is never assigned a value. This is why automating ntp setup fails (specifically the following code in /sbin/setup-ntp) will never skip the 'ask': while [ $# -eq 0 ] && ! isin "$resp" busybox openntpd chrony none abort; do     ask "Which NTP client to run? ('busybox', 'openntpd', 'chrony' or 'none')" chrony done [2]: https://wildtechgarden.ca/deploy-admin/server-alpine-linux-docs4web/ [3]: I've been off in frontend-land for a while and am somewhat out of sync with current systems development preferences. Speaking of which, I don't see at https://useplaintext.email/#thunderbird how to limit the line length to 72 characters as requested (or is this unnecessary due to things Thunderbird does in background when sending plaintext?). I unfortunately need features of Thunderbird that aren't available in what I preferred in the days before MS 365 and Gmail were what most of the folks I needed to communicate with dependent on, which was Claws Mail. -- https://wildtechgarden.ca Technical and professional website https://princesandmadmen.ca Personal and political blog