The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)
User:Sledge/Nemo/Development
From Mer Wiki
(Difference between revisions)
(→Packaging best practises - WIP - please comment/edit) |
|||
| (9 intermediate revisions by one user not shown) | |||
| Line 1: | Line 1: | ||
| + | == Packaging best practises - WIP - please comment/edit == | ||
| + | |||
{| border="1" cellspacing="1" cellpadding="1" style="width: 500px;" | {| border="1" cellspacing="1" cellpadding="1" style="width: 500px;" | ||
|- | |- | ||
| − | | style="vertical-align: bottom;" | + | | style="vertical-align: bottom; text-align: center;" | '''Where is the .yaml/.spec ?''' |
| − | | ''' | + | | rowspan="1" colspan="3" style="text-align: center;" | '''Where is the source code?''' |
| − | | | + | |
| − | | ''' | + | |
|- | |- | ||
| − | | '''./ | + | | style="vertical-align: bottom;" | <br/> |
| − | | | + | | style="text-align: center;" | '''github.com/nemomobile<br>(nemo is upstream)''' |
| − | | <br | + | | style="text-align: center;" | '''Any public git repository<br>(upstream is not nemo)''' |
| − | | - | + | | style="text-align: center;" | '''Not in git (tarball, svn, ...)''' |
|- | |- | ||
| − | | ''' | + | | style="text-align: center;" | '''under ./rpm/''' |
| − | | | + | | style="text-align: center;" | tar_git |
| − | tar_git | + | | style="text-align: center;" | |
| + | then what? | ||
| − | | - | + | | style="text-align: center;" | N/A |
| − | | | + | |
|- | |- | ||
| − | | '''under pkg-mer branch''' | + | | style="text-align: center;" | '''github.com/nemomobile-packages''' |
| − | | git_pkg | + | | <p style="text-align: center;">N/A</p> |
| − | | git_pkg | + | | style="text-align: center;" | N/A |
| − | | - | + | | style="text-align: center;" | git_subtree |
| + | |- | ||
| + | | style="text-align: center;" | '''under pkg-mer branch''' | ||
| + | | style="text-align: center;" | git_pkg | ||
| + | | style="text-align: center;" | git_pkg | ||
| + | | style="text-align: center;" | N/A | ||
|} | |} | ||
| + | |||
| + | === How to package upstream tarballs (no vcs) for github.com/nemomobile-packages with git subtree === | ||
| + | |||
| + | <pre> | ||
| + | git clone git@github.com:nemomobile-packages/uthash.git | ||
| + | |||
| + | cd uthash | ||
| + | |||
| + | git commit --allow-empty -m "initial commit" | ||
| + | git checkout -B upstream | ||
| + | tar -xvf ../uthash-1.9.4.tar.bz2 --strip-components=1 | ||
| + | git add -A | ||
| + | git commit -a -m "import from upstram tarball uthash-1.9.4.tar.bz2" | ||
| + | git tag upstream/1.9.4 | ||
| + | |||
| + | # OPTIONALLY use pristine tar to record any delta for later reproducing EXACTLY same tarball | ||
| + | pristine-tar commit ../uthash-1.9.4.tar.bz2 | ||
| + | |||
| + | git checkout master | ||
| + | git subtree add --squash --prefix=uthash upstream | ||
| + | mkdir rpm | ||
| + | cp /somewhere/packaging/uthash.spec rpm/ | ||
| + | #modify spec to do %setup -q -n %{name}-%{version}/%{name} | ||
| + | git add -A | ||
| + | git commit -a -m "[packaging] add rpm packaging" | ||
| + | git tag nemo/1.9.4 | ||
| + | git push --all | ||
| + | gut push --tags | ||
| + | </pre> | ||
Latest revision as of 10:32, 12 June 2013
[edit] Packaging best practises - WIP - please comment/edit
| Where is the .yaml/.spec ? | Where is the source code? | ||
| |
github.com/nemomobile (nemo is upstream) |
Any public git repository (upstream is not nemo) |
Not in git (tarball, svn, ...) |
| under ./rpm/ | tar_git |
then what? |
N/A |
| github.com/nemomobile-packages | N/A |
N/A | git_subtree |
| under pkg-mer branch | git_pkg | git_pkg | N/A |
[edit] How to package upstream tarballs (no vcs) for github.com/nemomobile-packages with git subtree
git clone git@github.com:nemomobile-packages/uthash.git
cd uthash
git commit --allow-empty -m "initial commit"
git checkout -B upstream
tar -xvf ../uthash-1.9.4.tar.bz2 --strip-components=1
git add -A
git commit -a -m "import from upstram tarball uthash-1.9.4.tar.bz2"
git tag upstream/1.9.4
# OPTIONALLY use pristine tar to record any delta for later reproducing EXACTLY same tarball
pristine-tar commit ../uthash-1.9.4.tar.bz2
git checkout master
git subtree add --squash --prefix=uthash upstream
mkdir rpm
cp /somewhere/packaging/uthash.spec rpm/
#modify spec to do %setup -q -n %{name}-%{version}/%{name}
git add -A
git commit -a -m "[packaging] add rpm packaging"
git tag nemo/1.9.4
git push --all
gut push --tags