Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    PSA: Ports tree no longer supports FreeBSD 8.3

    Scheduled Pinned Locked Moved Development
    15 Posts 6 Posters 5.4k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      razzfazz
      last edited by

      PSA: The FreeBSD ports tree is no longer compatible with the "make" version used in FreeBSD 8.3 (which officially became unsupported at the end of April). That means it is no longer possible to build any ports from a tree newer than rev 352986 (May 5) on an 8.3 system. To anyone still operating build machines for pfSense 2.1, do not update your ports tree!

      1 Reply Last reply Reply Quote 0
      • M
        msi
        last edited by

        Thanks for the heads-up! If you use SVN you can just checkout the previous commit r352985, or corresponding hash for the github mirror this seems to be 14ce842120fdd1ffdce18f634bcf3696ef4995f9

        Here are some references:

        • FreeBSD SVNweb: http://svnweb.freebsd.org/ports?view=revision&revision=352986

        • Github: https://github.com/freebsd/freebsd-ports/commit/1fa39fd2c3d6f5edbc6d4a9d6f9ceae142a0f184

        Which should result into something like this if you use SVN or git:

        
        svn checkout -r 352985 svn+ssh://svn.freebsd.org/ports/head /usr/ports
        
        git clone https://github.com/freebsd/freebsd-ports.git
        git checkout -b 8.3-compatible 14ce842120fdd1ffdce18f634bcf3696ef4995f9
        
        

        If someone has to backport things he/she will have to take extra measures to not import changes that don't work for 8.3.

        1 Reply Last reply Reply Quote 0
        • L
          lonevipr
          last edited by

          I need some help guys. I essentially have just needed to get access to a FreeBSD port & have never installed or messed with them before. I've just setup a new jail (with ezjail) & used portsnap fetch extract to get the port files. After figuring this out that the new ports aren't supported due to a error in the make build command. How can I now essentially rollback my ports to before the update that breaks ports for FreeBSD 8.3?

          I just need access to NUT port (Network UPS Tools) for UPS monitoring/shutdown purposes. I am confused what your post says MatSim about svn & git. I don't mess much with FreeBSD outside of pfSense GUI. I tried the commands you posted from inside my jail. They say command not found. Please explain how I can rollback my ports. I'm guessing this will all get fixed in pfSense 2.2 since it looks to be based on FreeBSD 10, then ports should start working again?

          Running pfSense 2.2-RELEASE (amd64)

          1 Reply Last reply Reply Quote 0
          • R
            razzfazz
            last edited by

            You'll need to install svn or git first. Try "pkg_add svn" and the retry the first command in MatSim's list. You will probably have to delete the existing ports tree first (or at least move it out of the way).

            1 Reply Last reply Reply Quote 0
            • L
              lonevipr
              last edited by

              @razzfazz:

              You'll need to install svn or git first. Try "pkg_add svn" and the retry the first command in MatSim's list. You will probably have to delete the existing ports tree first (or at least move it out of the way).

              I did completely delete the ezjail and remade it from scratch.

              Not working. "pkg_add svn" gives "pkg_add: can't stat package file 'svn' "

              Tried command from both outside the jail & inside the jail. Same error on both. Please explain further what I need to do to get ports package working.

              ETA:Ok via google, i've located command "pkg_add -r subversion". It will not successfully run from within my jail. It fails. It did successfully run OUTSIDE the jail. I then ran MatSim's command "svn checkout -r 352985 svn+ssh://svn.freebsd.org/ports/head /usr/ports" received error

              "svn: E210002: Unable to connect to a repository at URL 'svn+ssh://svn.freebsd.org/ports/head'
              svn: E210002: To better debug SSH connection problems, remove the -q option from 'ssh' in the [tunnels] section of your Subversion configuration file.
              svn: E210002: Network connection closed unexpectedly"

              ETA2:Ok I ran "svn checkout -r 352985 svn://svn.freebsd.org/ports/head /usr/ports" & all kinds of stuff started loading, but this was outside the jail. Mabye it needs to be reran inside the jail?

              ETA3:Ok so "svn checkout -r 352985 svn://svn.freebsd.org/ports/head /usr/ports" won't run in jail, because svn package is not installed. Why am I not able to install it inside my jail?

              Running pfSense 2.2-RELEASE (amd64)

              1 Reply Last reply Reply Quote 0
              • ?
                Guest
                last edited by

                The clue here is NOT "don't update your ports tree".  That way lies madness and security holes.

                pfSense 2.1.4 (coming soon) uses the ports tree and is still based on 8.3.

                1 Reply Last reply Reply Quote 0
                • R
                  razzfazz
                  last edited by

                  Then perhaps you could provide some details on the preferable solution?

                  1 Reply Last reply Reply Quote 0
                  • ?
                    Guest
                    last edited by

                    Why do you want me to document the requisite steps here when you could just study the code and do the work yourself?

                    Often, knowing that a solution is possible is reason enough to pursue it.

                    1 Reply Last reply Reply Quote 0
                    • R
                      razzfazz
                      last edited by

                      What, specifically, is "the code"? You can't possibly be suggesting that the solution is to undo the changes in r352986 and manually convert any subsequently introduced :tu and :tl instances after every ports tree update, so I guess what you have in mind must be something along the lines of installing a newer make on the builder? Given how fragile the whole pfSense build system is, that strikes me as at least somewhat adventurous.

                      1 Reply Last reply Reply Quote 0
                      • C
                        clem68
                        last edited by

                        If you're still interested, I faced the same problem and fixed it by replacing make with bmake.
                        I had no issues so far and pfSense 2.1.4 builds just fine with the latest ports.

                        1 Reply Last reply Reply Quote 0
                        • F
                          freebee
                          last edited by

                          Hi.
                          You replace the make for bmake in some pfsense build script or make.conf ?.

                          Thank you.

                          1 Reply Last reply Reply Quote 0
                          • C
                            clem68
                            last edited by

                            No, I directly replaced the binary.
                            The whole system uses it now without a problem.

                            1 Reply Last reply Reply Quote 0
                            • ?
                              Guest
                              last edited by

                              @razzfazz:

                              What, specifically, is "the code"? You can't possibly be suggesting that the solution is to undo the changes in r352986 and manually convert any subsequently introduced :tu and :tl instances after every ports tree update, so I guess what you have in mind must be something along the lines of installing a newer make on the builder? Given how fragile the whole pfSense build system is, that strikes me as at least somewhat adventurous.

                              all build systems are fragile.  Even FreeBSD's.

                              1 Reply Last reply Reply Quote 0
                              • F
                                freebee
                                last edited by

                                @clem68:

                                No, I directly replaced the binary.
                                The whole system uses it now without a problem.

                                Have you compiled in FreeBSD 8.4 and just substitute the FreeBSD 8.3 version ?.  If i wrong, just correct me.

                                1 Reply Last reply Reply Quote 0
                                • C
                                  clem68
                                  last edited by

                                  @freebee:

                                  Have you compiled in FreeBSD 8.4 and just substitute the FreeBSD 8.3 version ?.  If i wrong, just correct me.

                                  I reverted to an older port snapshot.
                                  But you can also simply substitute the 8.3 make with the 8.4 one, grabbed from a livefs iso for example.

                                  1 Reply Last reply Reply Quote 0
                                  • First post
                                    Last post
                                  Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.