SlideShare a Scribd company logo
Mothra
A FreeBSD send-pr tool for bugzilla system
Daniel Lin (pct), BSDTW 2017
https://github.com/pct/mothra
https://github.com/pct/freebsd_utils
Preface
When I was 20, I was a
journalism student.
Preface
Because of the School
BBS system, I start
using FreeBSD.
// do you ever make world everyday?
Preface
Thanks for FreeBSD, I
got my first job as a
sysadmin. I like the job
better than be a
reporter.
Preface
I love FreeBSD so
much, want to improve
it, then I start learning
programming.
Preface
There are some ports maintained by me:
- benchmarks/tsung
- devel/rubygem-rodzilla
- graphics/p5-Image-ExifTool-devel
- sysutils/py-pywatchman
- sysutils/py-ranger
- sysutils/rsyncrypto
- sysutils/rubygem-mothra
- sysutils/watchman
- www/node (until 2016/4/11, been very busy)
- www/phalcon
Preface
I love to using porttools to
send-pr in early years, but
FreeBSD using bugzilla to
manage PRs for these years,
I just could not send-pr from
command line as before.
Preface
I develop a send-pr tool
named “Mothra” (to battle
bugZilla).
// Project since 2014/12/29
Preface
Mothra
Godzilla
My next project?
http://www.alternateending.com/images/l6WyL0fZW8wkNEzZLIRWUFQdMEk.
Normal send-pr flow
At normal send-pr flow, you may switch to browser
and terminal (ex: www/phalcon):
1. Open Browser, go to https://bugs.freebsd.org,
check if there is already a new version update pr.
2. Open terminal, `cd /usr/ports/www/; cp -rpf
phalcon phalcon.orig` to save original ports.
3. `cd phalcon`, update Makefile, set PORTVERSION.
4. `make makesum`, to update distinfo file.
5. make port patch files and test.
Normal send-pr flow
6. `genplist test` and check pkg-plist file.
7. `genplist clean`
8. `cd ..; diff -ruN phalcon.orig phalcon >
phalcon-3.2.5.diff`
9. scp phalcon-3.2.5.diff to your desktop.
10. Back to browser, sign in bugzilla.
11. File a bug: fill complex form, add attachment
(phalcon-3.2.5.diff).
12. Submit Bug.
Normal send-pr flow
Hmmm…
12 steps.
Mothra
What’s the Mothra way?
Mothra
Install:
# gem install mothra
Get setting example:
# curl https://raw.githubusercontent.com/
pct/mothra/master/.mothra.yml >
~/.mothra.yml
Mothra
Setting (~/.mothra.yml):
BZ_URL: https://bugs.freebsd.org/bugzilla/
BZ_USER: test@example.com
BZ_PASSWD: test ### IT’S DANGER HERE!!! ###
PRODUCT: Ports & Packages
COMPONENT: Individual Port(s)
STATUS: ['New', 'Open', 'In Progress', 'UNCONFIRMED']
Mothra
Usage:
- mothra search <keyword>, <days_ago=180>
- mothra submit <summary>, <file_path>
- mothra attach <bug_id>, <file_path>
- mothra browse <bug_id>
- mothra create <summary>
- mothra get <bug_id>
Mothra
Mothra, with my `up2` scripts, save 12 -> 4 steps:
1. `mothra search phalcon` to check if already a update PR
2. `. up2 www/phalcon 3.2.4 3.2.5`, and check and
fix files
3. `diff -ruN phalcon.orig phalcon >
phalcon-3.2.5.diff`
4. `mothra submit “[MAINTAINER] www/phalcon
update to 3.2.5” phalcon-3.2.5.diff`
Mothra
Lazy, but save more time to
maintain more ports :-)
ex: I just send-pr this noon.
But…
I just know “pgollucci/
freebsd-bugzilla-cli” this
week.
You could try It also, it
seems more functional.
One more thing
The https://bsdtw.org/ website is designed by my team, 4Point
Design. We provide Graphic Design, Printing, Web and iOS/
Android App Design/Develop.
Hope to have the opportunity to work with you!
Source Code
GitHub:
- pct/mothra
- pct/freebsd_utils (send-pr)

More Related Content

KEY
今さら聞けないAWS on Rails
ODT
Document install arubaito
PDF
Conhecendo o-composer-por-nandokstronet
PDF
Curses
PDF
Docker and plone
PDF
MongoDB World 2019 Builder's Fest - Open source command line power tools for ...
PDF
Plone and docker
PDF
vagrant-php
今さら聞けないAWS on Rails
Document install arubaito
Conhecendo o-composer-por-nandokstronet
Curses
Docker and plone
MongoDB World 2019 Builder's Fest - Open source command line power tools for ...
Plone and docker
vagrant-php

What's hot (20)

PDF
Vagrant are you still develop in a non-virtual environment-
PPTX
AHA-best-msf-interface-ever
PDF
Vagrant - Team Development made easy
PDF
FPM at the Ruby Drink-up of Sophia, September 2011
PDF
Intro to Linux - Skillswap
PDF
Useful Vim Plugins
ODP
Perl dancer
ODP
Ripping web accessible .git files
PDF
Kettunen, miaubiz fuzzing at scale and in style
PDF
Pound & Varnish - Cache e Balanceamento de Carga
PDF
Porting your favourite cmdline tool to Android
ODP
Wonderful world of (distributed) SCM or VCS
ODP
Cryptography implementation weaknesses: based on true story
PDF
Docker workshop-3105
PDF
Picobgp - A simple deamon for routing advertising
PDF
Topologia lab
PDF
fdsaf
PDF
Django & Buildout (en)
PPTX
Linux Commands
PDF
Docker e postgresql
Vagrant are you still develop in a non-virtual environment-
AHA-best-msf-interface-ever
Vagrant - Team Development made easy
FPM at the Ruby Drink-up of Sophia, September 2011
Intro to Linux - Skillswap
Useful Vim Plugins
Perl dancer
Ripping web accessible .git files
Kettunen, miaubiz fuzzing at scale and in style
Pound & Varnish - Cache e Balanceamento de Carga
Porting your favourite cmdline tool to Android
Wonderful world of (distributed) SCM or VCS
Cryptography implementation weaknesses: based on true story
Docker workshop-3105
Picobgp - A simple deamon for routing advertising
Topologia lab
fdsaf
Django & Buildout (en)
Linux Commands
Docker e postgresql
Ad

Similar to Mothra - A FreeBSD send-pr tool for bugzilla system (20)

PDF
Touch your NetBSD
PDF
Puppet Camp Berlin 2014 Closing Keynote: Next steps for doing more awesome th...
PDF
Oscar: Rapid Iteration with Vagrant and Puppet Enterprise - PuppetConf 2013
PDF
Bundling Packages and Deploying Applications with RPM
PPTX
Deploying Foreman in Enterprise Environments
PDF
DevOpSec_DockerNPodMan-20230220.pdf
PPTX
Go profiling introduction
PDF
Puppet at Opera Sofware - PuppetCamp Oslo 2013
PPTX
Os dev tool box
PDF
Omnibus to the future!
PDF
Python on FreeBSD
PDF
Towards the perfect Drupal Dev Machine
PDF
OSMC 2021 | Icinga-Installer – the easy way to your Icinga
PDF
DCEU 18: Tips and Tricks of the Docker Captains
PDF
Ci For The Web 2.0 Guy Or Gal
PDF
Introduction to FreeNAS development by John Hixson
PDF
اسلاید اول جلسه دوم کلاس پایتون برای هکرهای قانونی
PPT
Happy porting x86 application to android
ODP
Ubuntu And Parental Controls
PDF
9 creating cent_os 7_mages_for_dpdk_training
Touch your NetBSD
Puppet Camp Berlin 2014 Closing Keynote: Next steps for doing more awesome th...
Oscar: Rapid Iteration with Vagrant and Puppet Enterprise - PuppetConf 2013
Bundling Packages and Deploying Applications with RPM
Deploying Foreman in Enterprise Environments
DevOpSec_DockerNPodMan-20230220.pdf
Go profiling introduction
Puppet at Opera Sofware - PuppetCamp Oslo 2013
Os dev tool box
Omnibus to the future!
Python on FreeBSD
Towards the perfect Drupal Dev Machine
OSMC 2021 | Icinga-Installer – the easy way to your Icinga
DCEU 18: Tips and Tricks of the Docker Captains
Ci For The Web 2.0 Guy Or Gal
Introduction to FreeNAS development by John Hixson
اسلاید اول جلسه دوم کلاس پایتون برای هکرهای قانونی
Happy porting x86 application to android
Ubuntu And Parental Controls
9 creating cent_os 7_mages_for_dpdk_training
Ad

Recently uploaded (20)

PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PPTX
Introduction to Artificial Intelligence
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PPTX
Transform Your Business with a Software ERP System
PDF
Nekopoi APK 2025 free lastest update
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Digital Strategies for Manufacturing Companies
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PPTX
Odoo POS Development Services by CandidRoot Solutions
PPTX
ai tools demonstartion for schools and inter college
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PPTX
Essential Infomation Tech presentation.pptx
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Understanding Forklifts - TECH EHS Solution
PDF
top salesforce developer skills in 2025.pdf
2025 Textile ERP Trends: SAP, Odoo & Oracle
How to Migrate SBCGlobal Email to Yahoo Easily
wealthsignaloriginal-com-DS-text-... (1).pdf
Wondershare Filmora 15 Crack With Activation Key [2025
Introduction to Artificial Intelligence
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Transform Your Business with a Software ERP System
Nekopoi APK 2025 free lastest update
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Digital Strategies for Manufacturing Companies
Odoo Companies in India – Driving Business Transformation.pdf
Odoo POS Development Services by CandidRoot Solutions
ai tools demonstartion for schools and inter college
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Essential Infomation Tech presentation.pptx
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Design an Analysis of Algorithms II-SECS-1021-03
Understanding Forklifts - TECH EHS Solution
top salesforce developer skills in 2025.pdf

Mothra - A FreeBSD send-pr tool for bugzilla system

  • 1. Mothra A FreeBSD send-pr tool for bugzilla system Daniel Lin (pct), BSDTW 2017 https://github.com/pct/mothra https://github.com/pct/freebsd_utils
  • 2. Preface When I was 20, I was a journalism student.
  • 3. Preface Because of the School BBS system, I start using FreeBSD. // do you ever make world everyday?
  • 4. Preface Thanks for FreeBSD, I got my first job as a sysadmin. I like the job better than be a reporter.
  • 5. Preface I love FreeBSD so much, want to improve it, then I start learning programming.
  • 6. Preface There are some ports maintained by me: - benchmarks/tsung - devel/rubygem-rodzilla - graphics/p5-Image-ExifTool-devel - sysutils/py-pywatchman - sysutils/py-ranger - sysutils/rsyncrypto - sysutils/rubygem-mothra - sysutils/watchman - www/node (until 2016/4/11, been very busy) - www/phalcon
  • 7. Preface I love to using porttools to send-pr in early years, but FreeBSD using bugzilla to manage PRs for these years, I just could not send-pr from command line as before.
  • 8. Preface I develop a send-pr tool named “Mothra” (to battle bugZilla). // Project since 2014/12/29
  • 10. Normal send-pr flow At normal send-pr flow, you may switch to browser and terminal (ex: www/phalcon): 1. Open Browser, go to https://bugs.freebsd.org, check if there is already a new version update pr. 2. Open terminal, `cd /usr/ports/www/; cp -rpf phalcon phalcon.orig` to save original ports. 3. `cd phalcon`, update Makefile, set PORTVERSION. 4. `make makesum`, to update distinfo file. 5. make port patch files and test.
  • 11. Normal send-pr flow 6. `genplist test` and check pkg-plist file. 7. `genplist clean` 8. `cd ..; diff -ruN phalcon.orig phalcon > phalcon-3.2.5.diff` 9. scp phalcon-3.2.5.diff to your desktop. 10. Back to browser, sign in bugzilla. 11. File a bug: fill complex form, add attachment (phalcon-3.2.5.diff). 12. Submit Bug.
  • 14. Mothra Install: # gem install mothra Get setting example: # curl https://raw.githubusercontent.com/ pct/mothra/master/.mothra.yml > ~/.mothra.yml
  • 15. Mothra Setting (~/.mothra.yml): BZ_URL: https://bugs.freebsd.org/bugzilla/ BZ_USER: test@example.com BZ_PASSWD: test ### IT’S DANGER HERE!!! ### PRODUCT: Ports & Packages COMPONENT: Individual Port(s) STATUS: ['New', 'Open', 'In Progress', 'UNCONFIRMED']
  • 16. Mothra Usage: - mothra search <keyword>, <days_ago=180> - mothra submit <summary>, <file_path> - mothra attach <bug_id>, <file_path> - mothra browse <bug_id> - mothra create <summary> - mothra get <bug_id>
  • 17. Mothra Mothra, with my `up2` scripts, save 12 -> 4 steps: 1. `mothra search phalcon` to check if already a update PR 2. `. up2 www/phalcon 3.2.4 3.2.5`, and check and fix files 3. `diff -ruN phalcon.orig phalcon > phalcon-3.2.5.diff` 4. `mothra submit “[MAINTAINER] www/phalcon update to 3.2.5” phalcon-3.2.5.diff`
  • 18. Mothra Lazy, but save more time to maintain more ports :-) ex: I just send-pr this noon.
  • 19. But… I just know “pgollucci/ freebsd-bugzilla-cli” this week. You could try It also, it seems more functional.
  • 20. One more thing The https://bsdtw.org/ website is designed by my team, 4Point Design. We provide Graphic Design, Printing, Web and iOS/ Android App Design/Develop. Hope to have the opportunity to work with you!
  • 21. Source Code GitHub: - pct/mothra - pct/freebsd_utils (send-pr)