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
signature.asc
Description: This is a digitally signed message part.