From mboxrd@z Thu Jan 1 00:00:00 1970 From: swedebugia Subject: Re: Idea: guix printer configuration generation Date: Thu, 17 Jan 2019 08:22:39 +0100 Message-ID: <94845DC3-751F-4D99-A0E2-62A3A9BF9CCB@pretty.Easy.privacy> References: ; ; Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="----QXKRZ0Z0P5TCJLPCVJ62KMHFJ1I2I9" Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([209.51.188.92]:39183) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gk20v-0003OT-N5 for guix-devel@gnu.org; Thu, 17 Jan 2019 02:22:58 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gk20r-0000oo-3h for guix-devel@gnu.org; Thu, 17 Jan 2019 02:22:54 -0500 Received: from mx1.riseup.net ([198.252.153.129]:56702) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gk20q-0000gB-4A for guix-devel@gnu.org; Thu, 17 Jan 2019 02:22:52 -0500 In-Reply-To: ; ; 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+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: =?ISO-8859-1?Q?G=E1bor_Boskovits?= Cc: guix-devel ------QXKRZ0Z0P5TCJLPCVJ62KMHFJ1I2I9 Content-Type: multipart/alternative; boundary="----WFMJLGIMTR9OXUAC65Q1H5YVLZ7E3G" Content-Transfer-Encoding: 7bit ------WFMJLGIMTR9OXUAC65Q1H5YVLZ7E3G Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable
"G=C3=A1bor Boskov= its" <boskovits@gmail=2Ecom> skrev: (16 januari 2019 16:00:30 CE= T)
Hello,

<swedebugia@riseup=2Enet> ezt = =C3=ADrta (id=C5=91pont: 2019=2E jan=2E 16=2E, Sze, 15:35):

Hi

I would rather not hav= e to learn the CUPS web interface just to
configure my printer=2E Do we= have a way to do this yet from config=2Escm? I
think we should abstrac= t away everything CUPS=2E

Maybe we could make a guix printer import= er?

The idea is to extract information about the printer via Guile = and print
what the user need to add to the config=2Escm=2E

Some= thing like this:
$ guix printer

"Found 1 USB printer: HP DeskJe= t 4330
(cups-configuration
(printer
(name "HP DeskJet 4330"=
(connection "usb://34234556"
(settings
(paper "a4"<= br> (source "default"
=2E=2E=2E"

When the user adds t= his to their config=2Escm and reconfigures the printer
JUST WORKS=2E
Thoughts?

--
Cheers
Swedebugia


I'= ve found the CUPS config stuff somewhat problematic=2E
The config file i= s generated from another config file, and some other
things, that trigge= r
regenerating the config=2E Sometimes even the printer ink level is
= regenerating cups configs,
which is really annoying=2E Modifying files i= n /etc is not a very nice
way to handle that indeed=2E
The problem is= known upstream, and seems to be won't fix=2E If we could
get around tha= t in any sane way,
I would be very happy=2E

Best regards,
g_bo= r

I did not understand what y= ou meant=2E Does the cups server regenerate you printer config automaticall= y?

I'm surprised nobody forked the CUPS project long ago=2E Maybe this sh= ould be a high priority for GNU?
--
Sent from my p=E2=89=A1p for Android=2E
------WFMJLGIMTR9OXUAC65Q1H5YVLZ7E3G Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable "G=C3=A1bor Boskovits" skrev: (16 januari 2019 16:0= 0:30 CET) >Hello, > > ezt =C3=ADrta (id=C5=91pont: 2019=2E jan=2E 16= =2E, Sze, 15:35): >> >> Hi >> >> I would rather not have to learn the CUPS web interface just to >> configure my printer=2E Do we have a way to do this yet from >config=2Escm? I >> think we should abstract away everything CUPS=2E >> >> Maybe we could make a guix printer importer? >> >> The idea is to extract information about the printer via Guile and >print >> what the user need to add to the config=2Escm=2E >> >> Something like this: >> $ guix printer >> >> "Found 1 USB printer: HP DeskJet 4330 >> (cups-configuration >> (printer >> (name "HP DeskJet 4330" >> (connection "usb://34234556" >> (settings >> (paper "a4" >> (source "default" >> =2E=2E=2E" >> >> When the user adds this to their config=2Escm and reconfigures the >printer >> JUST WORKS=2E >> >> Thoughts? >> >> -- >> Cheers >> Swedebugia >> > >I've found the CUPS config stuff somewhat problematic=2E >The config file is generated from another config file, and some other >things, that trigger >regenerating the config=2E Sometimes even the printer ink level is >regenerating cups configs, >which is really annoying=2E Modifying files in /etc is not a very nice >way to handle that indeed=2E >The problem is known upstream, and seems to be won't fix=2E If we could >get around that in any sane way, >I would be very happy=2E > >Best regards, >g_bor I did not understand what you meant=2E Does the cups server regenerate you= printer config automatically?=20 I'm surprised nobody forked the CUPS project long ago=2E Maybe this should= be a high priority for GNU? --=20 Sent from my p=E2=89=A1p for Android=2E ------WFMJLGIMTR9OXUAC65Q1H5YVLZ7E3G-- ------QXKRZ0Z0P5TCJLPCVJ62KMHFJ1I2I9 Content-Type: application/pgp-keys; name="pEpkey.asc" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="pEpkey.asc"; size=3825 LS0tLS1CRUdJTiBQR1AgUFVCTElDIEtFWSBCTE9DSy0tLS0tCgptUUlOQkZ3Y25XMEJFQURhNWti U0t0ZEd6ZzQ1SjZkQnRFS21lZFM2bEtEQkx1UmlNZTRTNHppTFVMaVV5RTlWCmVNeTA0TUUzbFN6 WHg4TlpSNjVxSzdENDRhVlRvV29iUlcxMEhGWi9YOWh5bFlrcnFzUk45cndieW5mOTFrcU0KcVI2 TkRxQjJKRHZTek9LRzM0U2dnTzVkVGh1RE1GdzNmT3Z1cGhtSnN5b2s3OGVYQlFqTkxyaXNvQnhT SEFyVgpzZjdIMlJIYlNmTmZaclMxaEtUUzRtbFBpNnJZS2ZFMUFvbm8wdUs5SnVVZHBTTyswODdV ejhRam5GVTE5c09BClJWTWtUTnpuZk12MHVzeUsxSzc5U2pjYzJjTzhkNDRUalJlTGkxcFlHMjBV OHhtQXBpRlJhRXhaOHlyR3c5RTkKYm9CcVo2TUZoNjhQWFNQa0ZjMWhTQ3BUV0xVZW1ZdEFrMkpE RHo4R1EwYWNRNU1aMlRJSzZJR0RCaEw4b0xCNwo2anZOMlBVYUN3VmFDYUNwS1JncU9Fd2dvdDBr MlFZRnZkODZUM0kwYVVNMDkzYVZ6aWdmUnYzaDlaMFhINytUCmZickhxalMrUlZTcjVKYytVeGox KzlqWEFQeEllVmRqMWpIOXE2ejJ2Z3UzSHRpaXlsQUp4SlFhUFFEZkhHQzEKNm9HODBwd3JoWWFj Q3JPT2QxUWhwZzhSOUlsaUQ4bU85WERTcHZoNGo2UFpXY1F6YWRYOFl5b3Z0UDNLS1B1dQpUM0h0 UDRmcXJhVmIzV2p2Si9ST0E3aTd5UHhGMTk4TExyKy9kMC9uamEvZHlWTjNHam1BellaL2dnZTdW aHp1CmZ2SFNGNFdLWWRFWFZWZzBhRjFVZ2FyTW1BaTUyNlhzTm1QRDU4cHdwc2hjL1F5SkV5Znlq ZnJuVndBUkFRQUIKdENKemQyVmtaV0oxWjJsaElEeHpkMlZrWldKMVoybGhRSEpwYzJWMWNDNXVa WFEraVFJK0JCTUJDQUFvQlFKYwpISjF0QWhzdkJRa0I0VE9BQndzSkNBY0RBZ0VHRlFnQ0NRb0xB eFlDQVFJZUFRSVhnQUFLQ1JBWWdFY1UxcWYyCjIwOGhEL29EcktQOTJIRDdKbVdWd0FKTkF6Qzh5 aW4wLzllVFJKb05XaXNjd2IrMG9hOVhzdXFwTktZNjdiWHgKamxUZmwxZSsvSmM2ZEoxTmR3cDVm Vk5FTmxhYmMxcnU0L3BQVk5PaXJOVjMrZFRYTU5ISEZkeHhRRWxENFhLYwowTmxLN0ZrUWxCdmNR ay94cmlQR1JuZEx4MmtZeVRFSStLcTRVdWNiZnVkT1YzaFJmOExaWVY3SzZEcTlWM2l2CmY4OWJV Q3lQRjhoZGN1czJBMnJvUU5NWUdLK2FPTGFWRzJYVnM1QS9DZFA3UEh2Yzk5TjY4a2xYbHZ5ZU1Y NGYKdG1FUFhOcnBsVElxQm5PbHdHZkN3QUY2OHIvVlVxcjNzek5OV3hDTk1sTmdORnA4ZmpKdjVx S3hnMkpzbGU4awppb0RYcUtJaWtISDBQTXJ2Nm5xNHEwbU96M2N5VkEwclpCS2E0WVhlTEhINDVm T1N5Yit3aStqSUJDaTlsQms2ClM1c2Y4dGVmd0hIaS9GNGZEZVI2NXdlSmhZTVpWRHlZS1NwKytx b2NFMHQ4NVFjOGdKS0pqQmRWQ3IwTTcrVWwKeGtybjBUQzRSelc4ck5ZQ2FiYWZxenVuRmplcmxG TDRXWnVNS2ZNNXFkUUxRUTFLZWJleTN2TlB3M2xUZ21VcgpLb2hmVXpKcmhmMkFNdXdQWjl6N1Vl WVZVSHNOS2Q2aTk2eGpkZHZFTkprOExlUDZHM3QrR3RSNWExWTRDdnk1CnVPcXpVczlUSnlXM3dj ejFYSkI0TS9UUkt6aDJaZWNHSUNSM2lPb1AxRHlZUlpuZ0ZSQ0FiOEQ1ZFAvWTdSM0YKYmNIeDR4 NHQ2a2Z3K0VVZituS2tKNzhPTHJOUVhiNlR1a3RiZy8wSWRCN2NNeWcwc2JrQ0RRUmNISjF0QVJB QQp1K2c3K2Y0VnJub3pwRGJzejNsRXAzZ1NtS3BmUFl2WXdTK0h3VTZEQm4vblVaNmVIUGRvcXcv RUE4bFl1OFkyCmhHY2ZGKzRxZUxmWEptWEg2SC9RVXdTNU1QTjZLcnJzUnVKU083OFR3UWRNUmtB RzJVbktrT3YrM2hRbk9LTG8KMmFySTVzNDZRbk0ya0JMN3lIM0t3N3ArUEFyT0JUOSs1alN2V0FM dUFvMWNpNCsybTR2cmhha05wR0NFcFhZNQpjcG9MYnlrQlNOMGwwTVFrYnZ0UHE1RmJpb1pRclpF MUVQQ2ZLdU1Ld25vL3pWcDBtbWNpZmluSEdENVVodENoCmt5VUoxaUxnMTdLZlo0eXNOMmVWOHFx YklqbWRnN00wRlVWMHhodGY3S1FpWFo2K1k1YWpBSi9BVHVYQUs3T2YKak1JdG50TzltSnBsQ0JH Y3VRbERtd1JpaHVQTjkrczVrak0rcTdTUENzNDFxREdNaXp2ZnVuSk1LblJMQmRNUApsS0NMNWhE QWhDSHRyTzhqSnJNS1lWcnkyemRkT1VhK1FmOFNwNFRjTVhaMjN4d1hqU3B5UkpDUU9ibG5DaUkv ClI0NUpsZERsYm42V29UZWlzUThJSTE1cnlibEtPeDVwdlk2VC9QQ1hxWW9nSENxSmJwVXNiMitU b29uZHU5Z0kKSENDSFFUZUhET3J3UGFheVZCSWcyNjhOUEZFalJza2hnOFg1a0FpZTZWYTNOajR6 elpmdk93ektpQjVDZktnbgpJaTgvbTN5QnZwZ2ZDK1RSQWMrdmhDYWEvejBTQU5UTXJjMzhLd0Vu ZmNJSG9Mek9JZzEvS0dWNlpnUzRmYVFECjlWeGswT0NNL3JscHZCT3ptNjJ5bzcxZWtzOUUrQTd1 L3pOOWdWZ0JHaFVBRVFFQUFZa0VSQVFZQVFnQUR3VUMKWEJ5ZGJRSWJMZ1VKQWVFemdBSXBDUkFZ Z0VjVTFxZjIyOEZkSUFRWkFRZ0FCZ1VDWEJ5ZGJRQUtDUkFCUEtQZwpwcWRNTFdweEQvNG0zLy8z MVAvS0JkZlJtTkk3UVV4akN5WVhibDBOYUpiT1NrUWMvRjk4TDlabk9FaGR2dU0zCmpoM1hrWW16 WWZmT21RMWV1TFppV1N2bEk5WWhSU1N1dmI0dVhtR1JVVGJZbVdMRVNaQmF3bElPNW1rT3h6cTQK cU5oK0UrTW4wZDFBSkw3cHVUd2RETDFPVXBML3hZUUFYVzF3bS9HOTcrOHQ2WVhkdTd4SG5uaHpE UmpIMUVDTQpPOXZ3YXp3V2tEUjdTc1Y2MHI1blhNcUw5dDhxZDJpRTRqNVFISXljTkxnSGsrSmIw QmxMclAvNHphcDFNNFNOCk0xMk4vSlZ0LzZ3ancrNk5KS0ZldE1OcG9Ic3pxOC80K0w2cEEzOUdP VkxYY3dmZzQ0T0JxRHRsUTlFVFF4VGMKV0JCSTg3ZVlNQU9Db3QyQlF2Rms5aENZRFJlQ2NFckxF YmsxV0RtWTNHcyswZDIrQnRSNmNEYnZHSWlaSDEvVQp3Mnc3eVJaMWgvenNYYWpva2tJM2ljTXhh VGVlVVJCSUNjOFBESWNVS0EzemVsdThuS25pUmZscUE3dGNtMHV2CktGSjVjS0JUa3N6RWdNb2x2 cUR6VWlhUkdyeko2R2grMTV1bHc2NTd4SnRTUkZ4Y3RpN3hENnlkUmt1VkFqSmgKVHRqTCtOZEtm VXl6ZFJCQlhoaFppTklsLzgxSkZ1b2ZJLzhLN1NvODRKb0h6V1JDbVVsdVladXMvdWFkalBkSApQ TXRySnZqKys1a01vYjV4OEg0eHIwdHA0Q0Y4TWo1VkRyYitiU0NsMFBOU2xaQVdUVkJDTm92QlZp MUVod0daCnRUMXNNU3dsblgrRjlxbERhdVBzVEhvb1NYRkVvU21lZmwrQ3VCZDZ0WG44eGFpZWhE NHNQMzJBRC80eGxkWWQKczhSM0haTTBIOGo2akFmRUgwbmY2NnoySXZ0cEE3eDdyVGVNd21IVFNK NjIvVUxiVXdJeUZYWkxWSTVSSVJmYgp4cVNBb3NIbklhVktlanBUMXgyN0t2bEREQ3ZUTnVnMUxR OEozSU05U1pqOVNTV005RjZFMjh2SGt1ejNEMGpYCmpmL0ZHMEQvelhlTFFleVE3cWZ3KzUxUzR3 YUZHT0dwNitOOGRJL2FuQTdaR0ZpMmFjd2FVUENBZ1hvc2pienYKMkRzdVgvZGFMS0FLSWxNMXYx akVob0ttblRPYXk3SGtTbFZCT29TWWRYeG55cUN3SkI2bE42dm45ZzBCQ2M0NQo2U1pObXdkZW1K bXdLQlJjV2phWStZY2c0UUg5WUxGdHZjYlZwVDNsOU1rVkxYWGxiM2xXZE5vbDliaTJSY2kvCkJs dGZVY1RnVHhTS0lQWTBpd2J0SXVRSU4rTVBPbGtVZ1lKY1JIRlFWamhZTW9iMk16MHpjRjRTazdW elRTQmYKbzFvTlUzcGRDTDVTNXkyM2ZqWGc1dkk4QmtLTmt6OVV1ZUlJSzE2WnZ4RjBaaUorYWtm SjZGbGpVc044S1ZyNgo1T2w5akdraXQ1b01ZZUpmeXptZ2tudEExaS9MVWVDZG94d0l2cUprZSs4 VmxWMURzNnFUTVc2ZUh3NEwvSTltCmhsZG5nK2Q3eWJQbXFtL0FRZFhXZVR3aFpiRG81MU1XQW84 SFJPK0pIMEdXRmVLOFdpRWJTbFB2MFBrWG83cDIKUTVvcUpkc0p5cDlwNjlYOGpvQjFxQm9MczJ1 RWJRWFM5MnJJVHFEVDYybVFZdTNQQ09kTzdBOGdqWUpDSENndgpZQWpWUjcrRWlJM0gyVXVWWjBT aVVwS0ZuZXhzdEthcm9Id1dTZz09Cj1iV1RRCi0tLS0tRU5EIFBHUCBQVUJMSUMgS0VZIEJMT0NL LS0tLS0K ------QXKRZ0Z0P5TCJLPCVJ62KMHFJ1I2I9--