Bug#964087: RFS: TomboyReborn/1.0-1 - Drop in replacement of deprecated Gnome Tomboy

2020-07-04 Thread Joan Moreau

When you say "write a proper source package ", are you referring to the
actual ".deb"  package ? or something else ?

Bottom line : What is actually needed ? I mean, in concrete terms ?
Something I can actually type on a command line ? 


On 2020-07-04 21:23, Andrey Rahmatullin wrote:

On Sat, Jul 04, 2020 at 08:39:36PM +0100, Joan Moreau wrote: 


(1) As a "software provider", what files are expected (besides the
sources, the Makefile and the binary) ? ( please kindly refer to :
https://github.com/grosjo/tomboy-reborn )

The sources and the build system to build them. Binaries should never be
shipped in the sources.


(2) As a "package maintainer" , the error below keeps poping up, so most
probably I am missing something

I have no idea what does debmake do when you already have some files in
debian/. The doc you are reading certainly doesn't expect that.


How to concretely create the ".deb" package (which tool does create the
deb format, what does it contains really )besides the theory not
describing the actual content) ), so I can pack it directly ?

You don't need to "pack the deb directly", you already have your deb from
checkinstall. On the other hand, if you want a proper package acceptable
in Debian, you shouldn't "pack the deb directly" but write a proper source
package.

Bug#964087: RFS: TomboyReborn/1.0-1 - Drop in replacement of deprecated Gnome Tomboy

2020-07-04 Thread Joan Moreau
Hello, 

Concretely: 


(1) As a "software provider", what files are expected (besides the
sources, the Makefile and the binary) ? ( please kindly refer to :
https://github.com/grosjo/tomboy-reborn ) 


(2) As a "package maintainer" , the error below keeps poping up, so most
probably I am missing something 


How to concretely create the ".deb" package (which tool does create the
deb format, what does it contains really )besides the theory not
describing the actual content) ), so I can pack it directly ? 

Thank you very much 


On 2020-07-04 18:16, Andrey Rahmatullin wrote:

On Sat, Jul 04, 2020 at 06:06:05PM +0100, Joan Moreau wrote: 


Input file sare visibles on
https://github.com/grosjo/tomboy-reborn/tree/master/packages

You are supposed to include thesoftware source in the package, not this.
So debian/ should be in the root of the repo.


This is the exact ouptut I get (from debuild -d)

I: check_all_licenses completed for 32 files.
I: bunch_all_licenses
I: format_all_licenses
I: make debian/* template files
I: found "debian/changelog"
I: debmake -x "0" ...
I: skipping :: debian/control (file exists)
I: creating => debian/copyright
I: substituting => /usr/share/debmake/extra0/rules
I: skipping :: debian/rules (file exists)
I: substituting => /usr/share/debmake/extra0/changelog
I: skipping :: debian/changelog (file exists)

You aren't supposed to run debmake with debian/ already existing.

Bug#964087: RFS: TomboyReborn/1.0-1 - Drop in replacement of deprecated Gnome Tomboy

2020-07-04 Thread Andrey Rahmatullin
On Sat, Jul 04, 2020 at 09:35:15PM +0100, Joan Moreau wrote:
> When you say "write a proper source package ", are you referring to the
> actual ".deb"  package ? or something else ?
I'm referring to a Debian source package. I've already linked you to
https://wiki.debian.org/Packaging/SourcePackage. All the docs about Debian
packaging describe creating a source package and then building it to get a
.deb which is a binary package.

> Bottom line : What is actually needed ? I mean, in concrete terms ?
A Debian source package. To get it you need an orig tarball with upstream
sources and a debian/ directory.

> Something I can actually type on a command line ?
No.


-- 
WBR, wRAR


signature.asc
Description: PGP signature


Bug#964087: RFS: TomboyReborn/1.0-1 - Drop in replacement of deprecated Gnome Tomboy

2020-07-04 Thread Joan Moreau

Input file sare visibles on
https://github.com/grosjo/tomboy-reborn/tree/master/packages 

This is the exact ouptut I get (from debuild -d) 


I: check_all_licenses completed for 32 files.
I: bunch_all_licenses
I: format_all_licenses
I: make debian/* template files
I: found "debian/changelog"
I: debmake -x "0" ...
I: skipping :: debian/control (file exists)
I: creating => debian/copyright
I: substituting => /usr/share/debmake/extra0/rules
I: skipping :: debian/rules (file exists)
I: substituting => /usr/share/debmake/extra0/changelog
I: skipping :: debian/changelog (file exists)
I: run "debmake -x1" to get more template files
I: $ wrap-and-sort
dpkg-buildpackage -d -us -uc -ui
dpkg-buildpackage: info: source package tomboy-reborn
dpkg-buildpackage: info: source version 1.0.0-1
dpkg-buildpackage: info: source distribution stable
dpkg-buildpackage: info: source changed by Joan Moreau 
dpkg-source --before-build .
dpkg-buildpackage: info: host architecture amd64
fakeroot debian/rules clean
dh clean
dh: Please specify the compatibility level in debian/compat
make: *** [debian/rules:18: clean] Error 255
dpkg-buildpackage: error: fakeroot debian/rules clean subprocess
returned exit status 2
debuild: fatal error at line 1182:
dpkg-buildpackage -d -us -uc -ui failed 

Thank you so much 


On 2020-07-04 17:57, Joan Moreau wrote:

Is there a web page stating the steps to go through, without all this complexity ? 

similar to the Arch  : https://wiki.archlinux.org/index.php/AUR_submission_guidelines 

On 2020-07-04 17:43, Andrey Rahmatullin wrote: 
On Sat, Jul 04, 2020 at 05:38:05PM +0100, Joan Moreau wrote: Let's imagine I found it (using lazbuild most probably), then where

should I put that command ? override_dh_auto_build, assuming you use dh(1)

How to specifiy the options needed ? As usual in the command arguments.

where to put lazarus is required ? 
Build-Depends.


Following
https://www.debian.org/doc/manuals/debmake-doc/ch04.en.html#step-upstream,
I am getting the error "Please specify the compatibilitle level in
debian/compat' (meaning what should I write where ?) debmake would create that 
file for you, so I'm not sure what exactly did
you do.

Bug#964087: RFS: TomboyReborn/1.0-1 - Drop in replacement of deprecated Gnome Tomboy

2020-07-04 Thread Joan Moreau

Is there a web page stating the steps to go through, without all this
complexity ? 


similar to the Arch  :
https://wiki.archlinux.org/index.php/AUR_submission_guidelines 


On 2020-07-04 17:43, Andrey Rahmatullin wrote:

On Sat, Jul 04, 2020 at 05:38:05PM +0100, Joan Moreau wrote: 


Let's imagine I found it (using lazbuild most probably), then where
should I put that command ?

override_dh_auto_build, assuming you use dh(1)


How to specifiy the options needed ?

As usual in the command arguments.


where to put lazarus is required ?


Build-Depends.


Following
https://www.debian.org/doc/manuals/debmake-doc/ch04.en.html#step-upstream,
I am getting the error "Please specify the compatibilitle level in
debian/compat' (meaning what should I write where ?)

debmake would create that file for you, so I'm not sure what exactly did
you do.

Bug#964087: RFS: TomboyReborn/1.0-1 - Drop in replacement of deprecated Gnome Tomboy

2020-07-04 Thread Joan Moreau

Let's imagine I found it (using lazbuild most probably), then where
should I put that command ? 

How to specifiy the options needed ? where to put lazarus is required ? 


Following
https://www.debian.org/doc/manuals/debmake-doc/ch04.en.html#step-upstream,
I am getting the error "Please specify the compatibilitle level in
debian/compat' (meaning what should I write where ?) 


On 2020-07-04 17:07, Andrey Rahmatullin wrote:

On Sat, Jul 04, 2020 at 04:57:37PM +0100, Joan Moreau wrote: 


Hi Boyuan,

Thank you so much for your feedback.

The program is to be compiled with Lazarus
(https://packages.debian.org/buster/lazarus-ide ), this is pretty
straighforward for anyone willing to compile from source.

SHould I put "lazarus" somewhere ? where ?

You need to find out how to build the project without launching the IDE.
There are suggestions regarding that in another email.

Bug#964087: RFS: TomboyReborn/1.0-1 - Drop in replacement of deprecated Gnome Tomboy

2020-07-04 Thread Andrey Rahmatullin
On Sat, Jul 04, 2020 at 08:39:36PM +0100, Joan Moreau wrote:
> (1) As a "software provider", what files are expected (besides the
> sources, the Makefile and the binary) ? ( please kindly refer to :
> https://github.com/grosjo/tomboy-reborn )
The sources and the build system to build them. Binaries should never be
shipped in the sources.

> (2) As a "package maintainer" , the error below keeps poping up, so most
> probably I am missing something
I have no idea what does debmake do when you already have some files in
debian/. The doc you are reading certainly doesn't expect that.

> How to concretely create the ".deb" package (which tool does create the
> deb format, what does it contains really )besides the theory not
> describing the actual content) ), so I can pack it directly ?
You don't need to "pack the deb directly", you already have your deb from
checkinstall. On the other hand, if you want a proper package acceptable
in Debian, you shouldn't "pack the deb directly" but write a proper source
package.

-- 
WBR, wRAR


signature.asc
Description: PGP signature


Bug#964087: RFS: TomboyReborn/1.0-1 - Drop in replacement of deprecated Gnome Tomboy

2020-07-04 Thread Joan Moreau
Hi Boyuan, 

Thank you so much for your feedback. 


The program is to be compiled with Lazarus
(https://packages.debian.org/buster/lazarus-ide ), this is pretty
straighforward for anyone willing to compile from source. 

SHould I put "lazarus" somewhere ? where ? 

Thank you 


On 2020-07-04 16:28, Boyuan Yang wrote:


Hi Joan,

在 2020-07-04星期六的 13:23 +0100,Joan Moreau写道: 


Hi Evangelos

Found also this page 
https://coderwall.com/p/urkybq/how-to-create-debian-package-from-source


It contains 3 files
- the binary (to go into /usr/bin)
- the icon
- the .desktop file

The sources are here : https://github.com/grosjo/tomboy-reborn

How to know the files needed, and is there "tar" or similar software
to create the ".deb" file form a files tree ?


Disclaimer -- I'm providing you with some information that you might be
missing instead of trying to push this packaging process forward.

It looks like you are in lack of 2 large pieces of knowledge that is
critical to do a proper packaging:

(1) How to act properly as a software upstream, by providing a
functioning build system that can automatically convert source code
into binaries as well as providing handy instructions to install built
binaries into the system. This kind of buildsystem is often achieved
through a build automation software and you may find a list at 
https://en.wikipedia.org/wiki/List_of_build_automation_software .


(2) How to act properly as a downstream (Debian) packager on top of
upstream build system.

These 2 parts are separated but both essential when trying to create a
good software package. The fact that you are using a non-mainstream
programming language (Pascal) further complicates the situation.

From the very beginning (part (1)), you need a proper building system
in your upstream project, https://github.com/grosjo/tomboy-reborn .
Works in part (1) has nothing to do with Debian or any specific Linux
distributions.

In your case, I do not see any build system in your source code
repository. There is a built binary file but there's no script or
instructions describing how the built binary was generated. I have
absolutely no idea how you were building the Pascal source code into
binaries. My best guess is that you are using the building function
embedded in Lazarus IDE -- which is completely unacceptable since a
working build system should be fully automated and require no graphical
IDE tool to function well. It could be a handwritten Makefile, CMake-
based solutions, Meson-based solutions or something else. Since you are
using Pascal, I do not know what proper buildsystem should I recommend.
(If you are using a mainstream programming language like C, C++, C# or
even Python or Java, the buildsystem solution is largely known:
Makefile, CMake, Meson, python-setuptools, Maven, Gradle, etc.)
However, there are several existing Pascal-written software in Debian
and other Linux distributions. It might be easier for you to see what
other Pascal projects are using and do in a similar way. There is also
a Debian Pascal Team [1 [1]] and you may get some help from team members.
Remember that in part (1) you are acting as an upstream software
developer; if necessary, you may refer to Debian's guide to upstream
software developers at [2 [2]].

[1] 
https://qa.debian.org/developer.php?email=pkg-pascal-devel%40lists.alioth.debian.org

[2] https://wiki.debian.org/UpstreamGuide

For the latter part (part (2)), you will finally act as a downstream
software packager. we can discuss it later after you have a functioning
buildsystem. It won't be difficult as long as your build system is
sane. In any case, using prebuilt binaries from upstream is
unacceptable: Debian dislikes this and holds a view that any binaries should be 
generated (automatically) from source code at _build_ time.

I hope those information could be useful to you.



Links:
--
[1]
https://qa.debian.org/developer.php?email=pkg-pascal-devel%40lists.alioth.debian.org
[2] https://wiki.debian.org/UpstreamGuide

Bug#964087: RFS: TomboyReborn/1.0-1 - Drop in replacement of deprecated Gnome Tomboy

2020-07-04 Thread Andrey Rahmatullin
On Sat, Jul 04, 2020 at 06:06:05PM +0100, Joan Moreau wrote:
> Input file sare visibles on
> https://github.com/grosjo/tomboy-reborn/tree/master/packages
You are supposed to include thesoftware source in the package, not this.
So debian/ should be in the root of the repo.

> This is the exact ouptut I get (from debuild -d)
> 
> I: check_all_licenses completed for 32 files.
> I: bunch_all_licenses
> I: format_all_licenses
> I: make debian/* template files
> I: found "debian/changelog"
> I: debmake -x "0" ...
> I: skipping :: debian/control (file exists)
> I: creating => debian/copyright
> I: substituting => /usr/share/debmake/extra0/rules
> I: skipping :: debian/rules (file exists)
> I: substituting => /usr/share/debmake/extra0/changelog
> I: skipping :: debian/changelog (file exists)
You aren't supposed to run debmake with debian/ already existing.

-- 
WBR, wRAR


signature.asc
Description: PGP signature


Bug#964087: RFS: TomboyReborn/1.0-1 - Drop in replacement of deprecated Gnome Tomboy

2020-07-04 Thread Andrey Rahmatullin
On Sat, Jul 04, 2020 at 05:57:51PM +0100, Joan Moreau wrote:
> Is there a web page stating the steps to go through, without all this
> complexity ?
> 
> similar to the Arch  :
> https://wiki.archlinux.org/index.php/AUR_submission_guidelines

https://mentors.debian.net/intro-maintainers is similar to that page.


-- 
WBR, wRAR


signature.asc
Description: PGP signature


Bug#964087: RFS: TomboyReborn/1.0-1 - Drop in replacement of deprecated Gnome Tomboy

2020-07-04 Thread Andrey Rahmatullin
On Sat, Jul 04, 2020 at 05:38:05PM +0100, Joan Moreau wrote:
> Let's imagine I found it (using lazbuild most probably), then where
> should I put that command ?
override_dh_auto_build, assuming you use dh(1)

> How to specifiy the options needed ? 
As usual in the command arguments.

> where to put lazarus is required ?

Build-Depends.

> Following
> https://www.debian.org/doc/manuals/debmake-doc/ch04.en.html#step-upstream,
> I am getting the error "Please specify the compatibilitle level in
> debian/compat' (meaning what should I write where ?)
debmake would create that file for you, so I'm not sure what exactly did
you do.

-- 
WBR, wRAR


signature.asc
Description: PGP signature


Bug#964087: RFS: TomboyReborn/1.0-1 - Drop in replacement of deprecated Gnome Tomboy

2020-07-04 Thread Joan Moreau
Hi Evangelos 


Found also this page
https://coderwall.com/p/urkybq/how-to-create-debian-package-from-source 


But I am not getting anywhere.

My tentative package is however extremely simple 

It contains 3 files 

- the binary (to go into /usr/bin) 

- the icon 

- the .desktop file 

The sources are here : https://github.com/grosjo/tomboy-reborn 


How to know the files needed, and is there "tar" or similar software to
create the ".deb" file form a files tree ? 

Thank you so much 

JM 


On 2020-07-01 22:31, Evangelos Ribeiro Tzaras wrote:


Hi,

I originally got started with [1 [1]], however you should probably consult the 
new
version [2 [2]]. This should hopefully help you figure things out.

[1] https://www.debian.org/doc/manuals/maint-guide/index.html
[2] https://www.debian.org/doc/devel-manuals#debmake-doc

On 7/1/20 9:20 PM, Joan Moreau wrote: Hi

I am really sorry to bother you, but I am a bit lost.

I created a .deb file (see
https://github.com/grosjo/tomboy-reborn/tree/master/packages ) so I should now
create a deb-src package, right ?

The wiki page you mentioned does not really explain how to do so. Is there a
simple, step-by-step, process described somewhere ?

THank you so much

On 2020-07-01 18:46, Andrey Rahmatullin wrote:

On Wed, Jul 01, 2020 at 05:35:21PM +0100, Joan Moreau wrote: This is not a "source 
package" as the source is in Pascal (using Lazarus
compiler package). Should I include the Pascal source also ? You need to create 
a Debian source package that can be built to produce a
Debian binary package.
It doesn't really matter what language is used or what should be contained
in the binary package. The workflow is the same.
https://wiki.debian.org/Packaging/SourcePackage


---

Evangelos Ribeiro Tzaras



Links:
--
[1] https://www.debian.org/doc/manuals/maint-guide/index.html
[2] https://www.debian.org/doc/devel-manuals#debmake-doc

Bug#964087: RFS: TomboyReborn/1.0-1 - Drop in replacement of deprecated Gnome Tomboy

2020-07-04 Thread Andrey Rahmatullin
On Sat, Jul 04, 2020 at 04:57:37PM +0100, Joan Moreau wrote:
> Hi Boyuan,
> 
> Thank you so much for your feedback.
> 
> The program is to be compiled with Lazarus
> (https://packages.debian.org/buster/lazarus-ide ), this is pretty
> straighforward for anyone willing to compile from source.
> 
> SHould I put "lazarus" somewhere ? where ?
You need to find out how to build the project without launching the IDE.
There are suggestions regarding that in another email.

-- 
WBR, wRAR


signature.asc
Description: PGP signature


Bug#964087: RFS: TomboyReborn/1.0-1 - Drop in replacement of deprecated Gnome Tomboy

2020-07-04 Thread The Wanderer
On 2020-07-04 at 11:28, Boyuan Yang wrote:

> In your case, I do not see any build system in your source code 
> repository. There is a built binary file but there's no script or 
> instructions describing how the built binary was generated. I have 
> absolutely no idea how you were building the Pascal source code into 
> binaries. My best guess is that you are using the building function 
> embedded in Lazarus IDE -- which is completely unacceptable since a 
> working build system should be fully automated and require no
> graphical IDE tool to function well.

For what it's worth, there appears to exist a tool called 'lazbuild',
which is apparently supposed to be able to compile a program from the
command line if passed the appropriate Lazarus project file. I find two
different versions of it in Debian, both in the lcl-utils-2.0 package.

Also, https://forum.lazarus.freepascal.org/index.php?topic=37272.0
involves people talking about how to build a Lazarus project from the
command line; they appear to have gotten it working without the use of
lazbuild in at least one case, but whether that's worth the effort I
don't know.

If that's viable, there may not be any need to add a separate build
system, although there would still be a need to add appropriate
how-to-build documentation and (of course) the necessary debian/rules
glue to get it to be run at package-build time.

-- 
   The Wanderer

The reasonable man adapts himself to the world; the unreasonable one
persists in trying to adapt the world to himself. Therefore all
progress depends on the unreasonable man. -- George Bernard Shaw



signature.asc
Description: OpenPGP digital signature


Bug#964087: RFS: TomboyReborn/1.0-1 - Drop in replacement of deprecated Gnome Tomboy

2020-07-04 Thread Boyuan Yang
Hi Joan,

在 2020-07-04星期六的 13:23 +0100,Joan Moreau写道:
> Hi Evangelos
> 
> Found also this page 
> https://coderwall.com/p/urkybq/how-to-create-debian-package-from-source
> 
> It contains 3 files
> - the binary (to go into /usr/bin)
> - the icon
> - the .desktop file
> 
> 
> The sources are here : https://github.com/grosjo/tomboy-reborn
> 
> How to know the files needed, and is there "tar" or similar software
> to create the ".deb" file form a files tree ?

Disclaimer -- I'm providing you with some information that you might be
missing instead of trying to push this packaging process forward.

It looks like you are in lack of 2 large pieces of knowledge that is
critical to do a proper packaging:

(1) How to act properly as a software upstream, by providing a
functioning build system that can automatically convert source code
into binaries as well as providing handy instructions to install built
binaries into the system. This kind of buildsystem is often achieved
through a build automation software and you may find a list at 
https://en.wikipedia.org/wiki/List_of_build_automation_software .

(2) How to act properly as a downstream (Debian) packager on top of
upstream build system.

These 2 parts are separated but both essential when trying to create a
good software package. The fact that you are using a non-mainstream
programming language (Pascal) further complicates the situation.

From the very beginning (part (1)), you need a proper building system
in your upstream project, https://github.com/grosjo/tomboy-reborn .
Works in part (1) has nothing to do with Debian or any specific Linux
distributions.

In your case, I do not see any build system in your source code
repository. There is a built binary file but there's no script or
instructions describing how the built binary was generated. I have
absolutely no idea how you were building the Pascal source code into
binaries. My best guess is that you are using the building function
embedded in Lazarus IDE -- which is completely unacceptable since a
working build system should be fully automated and require no graphical
IDE tool to function well. It could be a handwritten Makefile, CMake-
based solutions, Meson-based solutions or something else. Since you are
using Pascal, I do not know what proper buildsystem should I recommend.
(If you are using a mainstream programming language like C, C++, C# or
even Python or Java, the buildsystem solution is largely known:
Makefile, CMake, Meson, python-setuptools, Maven, Gradle, etc.)
However, there are several existing Pascal-written software in Debian
and other Linux distributions. It might be easier for you to see what
other Pascal projects are using and do in a similar way. There is also
a Debian Pascal Team [1] and you may get some help from team members.
Remember that in part (1) you are acting as an upstream software
developer; if necessary, you may refer to Debian's guide to upstream
software developers at [2].

[1] 
https://qa.debian.org/developer.php?email=pkg-pascal-devel%40lists.alioth.debian.org
[2] https://wiki.debian.org/UpstreamGuide

For the latter part (part (2)), you will finally act as a downstream
software packager. we can discuss it later after you have a functioning
buildsystem. It won't be difficult as long as your build system is
sane. In any case, using prebuilt binaries from upstream is
unacceptable: Debian dislikes this and holds a view that any binaries should be 
generated (automatically) from source code at _build_ time.

I hope those information could be useful to you.

-- 
Thanks,
Boyuan Yang


signature.asc
Description: This is a digitally signed message part