# How to get the source for 9.0-RELEASE-p3  without SVN or CVS?



## marwis (Nov 19, 2012)

I'm on a machine

```
# uname -a | fold -w 80
FreeBSD machine.name.local 9.0-RELEASE-p3 FreeBSD 9.0-RELEASE-p3 #0: Tue Jun 12 
01:47:53 UTC 2012     root@i386-builder.daemonology.net:/usr/obj/usr/src/sys/GE
NERIC  i386
```

Is it possible to get the source /usr/src without CVS or SVN?  I could download the 9.0-RELEASE .txz package.  I don't know how I'd update it to FreeBSD 9.0-p3 without SVN or CSV, however.  I haven't found any official .txz package for 9.0-RELEASE-p3.

Any input is appreciated.


----------



## chatwizrd (Nov 19, 2012)

Why can't you use svn or cvs?


----------



## marwis (Nov 19, 2012)

A firewall blocks the TCP ports that are used by these services.  It allows TCP/80 port.


----------



## kpa (Nov 19, 2012)

You can use http with devel/subversion if the server supports it, it does in this case:

`# svn co [url]http://svn.freebsd.org/base/releng/9.0[/url] /usr/src`


----------



## marwis (Nov 20, 2012)

Thank you, kpa.  This partialy solves my problem as it allows me to get the source.  Still, in order to use devel/subversion I would to have to install it first which implies downloading and installing many unnecessary packages:


```
machine# pkg_info | wc -l
       9
machine# portmaster devel/subversion

[...]

===>>> The following actions will be taken if you choose to proceed:
        Install devel/subversion
        Install databases/db42
        Install devel/libtool
        Install databases/sqlite3
        Install devel/pkgconf
        Install devel/apr1
        Install converters/libiconv
        Install databases/gdbm
        Install devel/gmake
        Install devel/gettext
        Install devel/autoconf
        Install devel/autoconf-wrapper
        Install devel/m4
        Install misc/help2man
        Install devel/p5-Locale-gettext
        Install devel/automake
        Install devel/automake-wrapper
        Install lang/python27
        Install textproc/expat2
        Install www/neon29
===>>> Proceed? y/n [y] n


===>>> If you would like to upgrade or install some, but not
       all of the above try adding '-i' to the command line.
Terminated
```

I would go from 9 installed 3rd party applications to 29.

I'd like to keep the system as clean as possible.  Ideally, I'd get the source, use it (i.e. in my case compile VMWare Tools using this guide) and `# rm -rf /usr/src` afterwards.  Deleting the source would prevent me using it in the future with wrong release.

Reading manual pages cvs(1) (which is part of the base system, thus wouldn't require to triple the amount of third party applications), I don't see a similar way to use CVS via port TCP/80.

I see this as a sensible workaround leaving my system clean after I'm done:

Temporarily install devel/subversion using portmaster(8) with --delete-build-only option `# portmaster --delete-build-only devel/subversion`
get the source /usr/src `# svn co [url]http://svn.freebsd.org/base/releng/9.0[/url] /usr/src`
compile VMWare Tools (using this guide)
delete the source /usr/src `# rm -rf /usr/src`
uninstall devel/subversion `# pkg_delete `pkg_info | grep ^subversion- | cut -d " " -f 1``

Initially, I wanted to install ports-mgmt/pkg and use its autoremove option, but then discovered portmaster(8)'s --delete-build-only option.


----------



## wblock@ (Nov 20, 2012)

Download the source as a tar file.  See the first method from http://forums.freebsd.org/showthread.php?t=29172.


----------



## chatwizrd (Nov 20, 2012)

wblock@ said:
			
		

> Download the source as a tar file.  See the first method from http://forums.freebsd.org/showthread.php?t=29172.



He wanted the updated source not the release.


----------



## bbzz (Nov 20, 2012)

Why not just use something like net/proxychains and SOCKSify svn trough any socks5 listening at 80? 
Even better, *ssh -D* to your own ssh server outside if you're allowed to connect to that port (or you are like me and keep ssh server on port 80).


----------



## marwis (Nov 21, 2012)

Thank you, bbzz, for the suggestion.  SSH tunneling (or any other kind of tunneling) is not an option, however.


----------



## marwis (Nov 23, 2012)

For the record, running `# portmaster --delete-build-only devel/subversion` didn't exactly leave my system clean as I expected.  Instead of adding a single package, I ended up with 12 additional packages.  I had to manually pkg_delete them after I was done.

Other than that, VMWare Tools installed and run nicely.


----------

