Manuel,

Thanks for your quick turnaround.  I currently can’t build the packages from 
the repository.

soren@soren-desktop:~/Downloads/baby/baby$ sbuild
dpkg-source: info: using options from baby/debian/source/options: --extend-
diff-ignore=(^|/)(\.cache|\.go|go\.mod|go\.sum|\.git|\.gitignore)($|/)
dh clean
   debian/rules override_dh_auto_clean
make[1]: Entering directory '/home/soren/Downloads/baby/baby'
dh_auto_clean
rm -f baby
rm -rf /home/soren/Downloads/baby/baby/.cache
rm -rf /home/soren/Downloads/baby/baby/.go
make[1]: Leaving directory '/home/soren/Downloads/baby/baby'
   dh_clean
        rm -f debian/debhelper-build-stamp
        rm -rf debian/.debhelper/
        rm -f -- debian/baby.substvars debian/files
        rm -fr -- debian/baby/ debian/tmp/
        find .  \( \( \
                \( -path .\*/.git -o -path .\*/.svn -o -path .\*/.bzr -o -path 
.\*/.hg -o -path .\*/CVS -o -path .\*/.pc -o -path .\*/_darcs \) -prune -o -
type f -a \
                \( -name '#*#' -o -name '.*~' -o -name '*~' -o -name DEADJOE \
                 -o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \
                 -o -name '.*.orig' -o -name .*.rej -o -name '.SUMS' \
                 -o -name TAGS -o \( -path '*/.deps/*' -a -name '*.P' \) \
                \) -exec rm -f {} + \) -o \
                \( -type d -a \( -name autom4te.cache -o -name __pycache__ \) 
-prune -exec rm -rf {} + \) \)
dpkg-source: info: using options from baby/debian/source/options: --extend-
diff-ignore=(^|/)(\.cache|\.go|go\.mod|go\.sum|\.git|\.gitignore)($|/)
dpkg-source: info: using source format '3.0 (quilt)'
dpkg-source: info: building baby using existing ./baby_1.0.55.orig.tar.gz
dpkg-source: warning: file baby/README.md has no final newline (either original 
or modified version)
dpkg-source: info: local changes detected, the modified files are:
 baby/README.md
dpkg-source: info: Hint: make sure the version in debian/changelog matches the 
unpacked source tree
dpkg-source: info: you can integrate the local changes with dpkg-source --
commit
dpkg-source: error: aborting due to unexpected upstream changes, see /tmp/
baby_1.0.55-1.diff.ClmJAq
E: Failed to package source directory /home/soren/Downloads/baby/baby

Attached is the /tmp/baby_1.0.55-1.diff.ClmJAq file.

I believe the problem is that README.md is not the same in the tarball and the 
repository, but I didn’t look at it too deeply.  If you are able to figure out 
and fix the problem just send me an email and I will try the build again.  If 
you are not able to figure out the problem, send me an email and I can dig into 
it deeper.

Soren

On Sunday, July 28, 2024 7:44:31 AM MST Manuel Guerra wrote:
> Hi Soren
> 
> Sorry for the delay in replying, I decided to take action as soon as I
> 
> saw the message. Now, forks to the spaghetti:
> > THINGS THAT NEED TO BE ADDRESSED BEFORE SPONSORSHIP
> > 
> > 
> > 1. Your debian/control file specifies:
> > 
> > 
> > Rules-Requires-Root: binary-targets
> > 
> > 
> > This is used when the binary targets require root during build time
> > (as contrasted with install time).  It is quite rare to need this.  If
> > your program does need root during build time that is fine.  But I
> > would like to understand why before sponsoring the package.
> 
> I changed it to Rules-Requires-Root: no
> 
> > 2. Your debian/postinst creates:
> > 
> > 
> > /home/$install_user/.config/baby/baby.conf
> > 
> > 
> > at installation time.  Typically this is done at runtime. Otherwise,
> > only the person who installs the package will have the file created. 
> > Other users on the system will not.
> > 
> > 
> > I would recommend that you move the logic for creating this file to
> > your runtime program, so that any user who runs the program will have
> > ~/.config/baby/baby.conf created.
> > 
> > 
> > If for some reason I have misunderstood what is happening, just
> > explain it to me and I can sponsor it as currently packaged.
> 
> This is a very important observation. The configuration file is now
> created at runtime and the debian/postinst is no more needed. This lets
> any user run Baby on the hypothetical multiuser system.
> 
> > 3. Your debian/upstream/metadata contains four of the same URLs, and
> > they point to the Debian packaging repository.  These should point to
> > the upstream repository, and it would be nice if they were more
> > direct, like this:
> > 
> > 
> > Bug-Database: https://github.com/manuwarfare/baby/issues
> > 
> > Bug-Submit: https://github.com/manuwarfare/baby/issues/new
> > 
> > Repository: https://github.com/manuwarfare/baby.git
> > 
> > Repository-Browse: https://github.com/manuwarfare/baby
> 
> Changed according to recommendations. Nothing more to say :-)
> 
> > COMMENTS THAT DON’T NEED TO BE ADDRESSED BEFORE SPONSORSHIP
> > 
> > 
> > 1. Your debian/sources contains both options and local-options with
> > similar content.  Looking at the instructions it would appear that you
> > only need options.
> > 
> > 
> > https://www.debian.org/doc/manuals/maint-guide/dother.en.html#sourcel
> > 
> > 
> > But if for some reason you need both that is OK.
> 
> I leave only options that is the one needed.
> 
> > 2. You have debian/baby.install, which works fine.  If you have
> > multiple binaries you use binary-name.install for each install file. 
> > But as you have only one binary, you can just use debian/install if
> > you like.
> 
> Changed to debian/install
> 
> Note: I've been reading Gregor and Yavor's posts with the other
> suggestions about this, but since you're the potential sponsor I'd
> rather wait for your final recommendation.
> 
> 
> Greetings,
> 
> 
> Manuel


-- 
Soren Stoutner
so...@debian.org
Description: <short summary of the patch>
 TODO: Put a short summary on the line above and replace this paragraph
 with a longer explanation of this change. Complete the meta-information
 with other relevant fields (see below for details). To make it easier, the
 information below has been extracted from the changelog. Adjust it or drop
 it.
 .
 baby (1.0.55-1) unstable; urgency=medium
 .
   * Initial release. (Closes: #1076082)
Author: Manuel Guerra <ar.manuelgue...@gmail.com>
Bug-Debian: https://bugs.debian.org/1076082

---
The information above should follow the Patch Tagging Guidelines, please
checkout https://dep.debian.net/deps/dep3/ to learn about the format. Here
are templates for supplementary fields that you might want to add:

Origin: (upstream|backport|vendor|other), (<patch-url>|commit:<commit-id>)
Bug: <upstream-bugtracker-url>
Bug-Debian: https://bugs.debian.org/<bugnumber>
Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
Forwarded: (no|not-needed|<patch-forwarded-url>)
Applied-Upstream: <version>, (<commit-url>|commit:<commid-id>)
Reviewed-By: <name and email of someone who approved/reviewed the patch>
Last-Update: 2024-07-29

--- baby-1.0.55.orig/README.md
+++ baby-1.0.55/README.md
@@ -1,119 +0,0 @@
-# :baby: Baby abbreviator
-Baby comes as an option to the default "alias" command and it's a simple 
program to abbreviate long prompts in GNU/Linux terminal.
-You can easily set rules, delete them, list them and update them with a clear 
list of parameters. It should be functional in any GNU/Linux distribution.
-
-??? **FEATURES**
-
-* Simplify your long commands in terminal
-
-* Improve your times at making repetitive tasks
-
-* You don't need to open any config file
-
-* Store, list, update and delete rules
-
-* Run your rules in bulk, i.e. `baby <rule1> <rule2>`
-
-* Import rules from a local file
-
-* Backup your rules to a local file
-
-* Feeding bottles (adding variables inside a command)
-
-
-:white_check_mark: **PROGRAMMING LANGUAGE**
-
-Baby is completly writen in Golang.
-
-
-:ballot_box_with_check: **COMPILE YOURSELF**
-
-If you preffer to compile yourself the source code run the following commands:
-
-`git clone https://github.com/manuwarfare/baby.git`
-
-`cd baby`
-
-`go build -o baby`
-
-`sudo cp baby /usr/bin/`
-
-**Previous requirements to compile:** golang ('gcc-go', 'golang-bin')
-
-To install Golang in your system run
-
-  `sudo dnf install golang` or `sudo apt install golang` depending on your 
GNU/Linux distribution.
-
-
-:pencil: **CREATING RULES**
-
-First step after install the program is run `baby -h` to know about how the 
script functions. Some examples to create rules in a Fedora system terminal:
-
-  `baby -n update "sudo dnf update -y && sudo dnf upgrade -y"` this long 
command will run after with only type `baby update`.
-
-  `baby -n ssh "ssh u...@example.com"` will connect to your SSH server only 
typing `baby ssh`
-
-  Running a block of rules is as easy as run `baby <name1> <name2>`. This 
command will run two rules continuously but you can set as many as your 
implementation let.
-
-:pencil: **IMPORTING RULES**
-
-  `baby -i <file path>` will import rules from a local file.
-
-  The path must to point to a file extension, i.e: .txt, .md, .html, etc.
-
-  The stored rules must follow this syntax: `b:<rule> = <command>:b`
-
-:pencil: **EXPORTING RULES**
-
-  `baby -e` will start the backup assistant.
-
-:pencil: **LISTING RULES**
-
-There are two options to list the rules stored in baby.conf file.
-
-  `baby -l` will list all the rules stored in baby.conf file.
-
-  `baby -ln <name>` will list an specific rule.
-
-:pencil: **REMOVING RULES**
-
-  `baby -r <name>` will remove an specific rule.
-
-  `baby -r a` will remove all rules stored in baby.conf.
-
-:pencil: **FEEDING BOTTLES**
-
-  The feeding bottles help you adding a variable inside a command. Use only 
one bottle for command.
-
-  The feeding bottle syntax is this `b%('bottle_name')%b` and you can add it 
into any part of the command.
-
-  Usage examples: `baby -n ssh "ssh -p 2222 b%('username')%b...@example.com"`
-
-  Execute the rule with: `baby ssh` and the system will prompt this:
-
-  _The username is?:_
-
-  If the credentials are valid, you will get connection via ssh to 
*example.com*.
-
-  You can also predefine the value of a bottle at any time, this value will be 
automatically applied to all the rules when you run them in bulk, to do this 
use the next argument `-b=<variable:value>`.
-
-  Usage examples: `baby -b=username:user1 ssh`
-
-  This will run the next command: `ssh -p 2222 us...@example.com`
-
-
-# ???? **TESTED ON**
-
-???? Debian
-
-???? Ubuntu
-
-???? Linux Mint
-
-???? MX Linux
-
-???? Fedora
-
-???? Almalinux
-
-???? RockyLinux
\ No newline at end of file

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

Reply via email to