public inbox for cygwin-apps@cygwin.com
 help / color / mirror / Atom feed
From: Jon Turney <jon.turney@dronecode.org.uk>
To: Takashi Yano <takashi.yano@nifty.ne.jp>,
	"cygwin-apps@cygwin.com" <cygwin-apps@cygwin.com>
Subject: Re: [ITP] openh264 (2.3.1)
Date: Sun, 19 Feb 2023 15:37:47 +0000	[thread overview]
Message-ID: <3fcd159f-3925-d541-8a91-ef7431608a00@dronecode.org.uk> (raw)
In-Reply-To: <20230217174959.c4172f9b903763dc58df4320@nifty.ne.jp>

On 17/02/2023 08:49, Takashi Yano via Cygwin-apps wrote:
> On Thu, 16 Feb 2023 19:24:24 +0000
> Jon Turney wrote:
>> On 14/02/2023 21:21, Takashi Yano via Cygwin-apps wrote:
>>> On Tue, 14 Feb 2023 17:41:16 +0100
>>> ASSI wrote:
>>>> Takashi Yano via Cygwin-apps writes:
>>>>> Thanks for the advice. I have revised the cygport file.
>>>>
>>>> You are getting the file and the hash from the same unprotected source.
>>>> I was thinking you should put the hash into the cygport file and hence
>>>> the postinstall script.
>>>>
>>>> Also note that the system doing the postinstall will not necessarily
>>>> have internet access, so you'll need to cope with errors that will
>>>> produce.
>>>
>>> Thanks.
>>>
>>> The new cygport file attached downloads md5hash during
>>> the packaging process and embeds it into postinstall
>>> script. Does this make sense?
>>
>> Thanks.
>>
>> So, this looks like it works, and meets the requirements.
>>
>> Is md5 the only hash available?  This is not really considered "good
>> enough" any more.
>>
>> As a thought-experiment, consider doing it slightly differently:
>>
>> package contains:
>> - the headers
>> - a data file with the version (or maybe URL) and hash
>> - a script which can fetch (using above data) or remove the DLL
>> - postinstall and preremove scripts which invoke that script appropriately
>>
>> (I think this means the post/pre scripts can be static, and packaged via
>> $C, rather than written by the cygport itself)
>>
>> What do you think of that?
> 
> Thanks for the advice!
> 
> So, how about this one?
> 
> package contains:
> - the headers
> - the data files with the version and hash
> - postinstall and preremove scripts which fetch (using above data)
>    and remove the DLL

Great, thanks.  I hope this means you think this is a better approach, 
rather than just humouring me :)

A few minor points:

* It seems like the empty dummy archive could be made with something 
like just:

   tar -Jcf ${SRC_URI} --files-from /dev/null

* If the postinstall failed somehow, the preremove script will fail 
trying to remove a file which doesn't exist.  It might be a good idea to 
use 'rm -f' to ensure that doesn't happen.

* I don't think you should need:

> 	# Install postinstall/preremove scripts
> 	mkdir -p ${D}/etc/postinstall  ${D}/etc/preremove
> 	cp ${C}/lib${NAME}.postinstall ${D}/etc/postinstall/lib${NAME}.sh
> 	cp ${C}/lib${NAME}.preremove ${D}/etc/preremove/lib${NAME}.sh
> 

This should happen automatically if the files are in $C (and you can 
list them in CYGWIN_FILES or make them with cygwin.patch file to put 
them there)


  reply	other threads:[~2023-02-21  4:59 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-05  8:37 Takashi Yano
2023-02-05 16:36 ` Jon Turney
2023-02-06 12:22   ` Takashi Yano
2023-02-06  2:44 ` Yaakov Selkowitz
2023-02-06  5:11   ` Brian Inglis
2023-02-06  5:16     ` Yaakov Selkowitz
2023-02-06  5:25       ` Takashi Yano
2023-02-09 12:02         ` Takashi Yano
2023-02-10  4:35         ` Yaakov Selkowitz
2023-02-10  5:05           ` Takashi Yano
2023-02-10  5:18             ` Takashi Yano
2023-02-10  5:25               ` Takashi Yano
2023-02-13 18:30                 ` Jon Turney
2023-02-13 19:03                   ` Brian Inglis
2023-02-14  9:11                     ` Takashi Yano
2023-02-14 11:02                       ` ASSI
2023-02-14 12:28                         ` Takashi Yano
2023-02-14 16:41                           ` ASSI
2023-02-14 21:21                             ` Takashi Yano
2023-02-16 19:24                               ` Jon Turney
2023-02-17  8:49                                 ` Takashi Yano
2023-02-19 15:37                                   ` Jon Turney [this message]
2023-02-20  8:55                                     ` Takashi Yano
2023-02-21 14:11                                       ` Jon Turney
2023-02-22  3:33                                         ` Takashi Yano
2023-02-23 12:54                                           ` Jon Turney
2023-02-24  9:16                                             ` Takashi Yano
2023-02-06 22:40       ` Lee
2023-02-07  5:19       ` Brian Inglis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3fcd159f-3925-d541-8a91-ef7431608a00@dronecode.org.uk \
    --to=jon.turney@dronecode.org.uk \
    --cc=cygwin-apps@cygwin.com \
    --cc=takashi.yano@nifty.ne.jp \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).