"In every walk with nature one receives far more than he seeks" --John Muir
 

WLN Bushcraft & Outdoor Blog

 
WoodlandsNorth Bushcraft Blog was started in February 2019 to keep our subscribers up-to-date with our current projects
 

Bushcraft Breakfast 2019

head into the woods with my trusty Silky Saw, Gransfors Bruks Axe, Condor Hudson Bay knife and my appetite! I put together a bacon weave and egg scramble for breakfast, cooked on the fire. Of course, a side of coffee never hurt anyone, either! 
Click here for the full video

Full winter Backpacking gear loadout!

I take time to go through my current winter camping gear in this loadout video. My trips usually involve short - medium hikes and temps that dip into the low 20's -- For your reference, the items and related weights are listed below.View Full LoadOut Video 
Shelter            
    ENO Hammock        19    
    ENO Straps        12.2    
    Warbonet Superfly    19    
    Snugpack cocoon        68.8    
Sleep            
    Klymit Cush        3.3    
    JRB Down Quilt        18.8    
    SOL Reflectix sheet    9    
Tools            
    Gransfors Wilderness Hatchet    23.8    
    Condor Hudson Bay        18    
    silky gomboy        11.4    
    leather gloves        5.5    
Cooking            
    GSI Cook w/canis    22.5    
Misc            
    cordage orange pouch    6.7    
    Catch 22 kit w/med    22.7    
    Water Filter        10.3    
    fire kit        6.7    
    clothing kit        44    
    Nalgene Canteen        2.5    
    Ivation lantern        4.9    
    mess kit        7.3    
    toiletrees        9    
    Washroom Kit        .2    
Pack            
    Snugpack Rocket Pack    70    
    
    Total Weight            422.6    26.4125 lbs
 

Snugpack Rocket Pack

Woodlands North has been testing the Snugpack Rocket pack for a few months now. The pack features:
  • weighs in at 70 oz
  • Main compartment: 2,440 cubic-inch /40 liters
  • Side pockets(each): 915 cubic-inch /15 liters
  • Total volume: 4,270 cubic-inch /70 liters
  • Removeable Side pockets
  • Optional yoke to effectively give you two backpacks in one!
Full review coming soon! 

Woodlands North, we love to facilitate outdoor learning

Resources

Tools
Clothing
Cooking
packs
shelter
other
Whoops! There was an error.
ErrorException (E_WARNING)
file_put_contents(): Only 0 of 188 bytes written, possibly out of free disk space ErrorException thrown with message "file_put_contents(): Only 0 of 188 bytes written, possibly out of free disk space" Stacktrace: #7 ErrorException in /var/www/html/WoodLandsNorth/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:122 #6 file_put_contents in /var/www/html/WoodLandsNorth/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:122 #5 Illuminate\Filesystem\Filesystem:put in /var/www/html/WoodLandsNorth/vendor/laravel/framework/src/Illuminate/Session/FileSessionHandler.php:83 #4 Illuminate\Session\FileSessionHandler:write in /var/www/html/WoodLandsNorth/vendor/laravel/framework/src/Illuminate/Session/Store.php:129 #3 Illuminate\Session\Store:save in /var/www/html/WoodLandsNorth/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php:87 #2 Illuminate\Session\Middleware\StartSession:terminate in /var/www/html/WoodLandsNorth/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:218 #1 Illuminate\Foundation\Http\Kernel:terminateMiddleware in /var/www/html/WoodLandsNorth/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:189 #0 Illuminate\Foundation\Http\Kernel:terminate in /var/www/html/WoodLandsNorth/public/index.php:60
7
ErrorException
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Filesystem
/
Filesystem.php
122
6
file_put_contents
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Filesystem
/
Filesystem.php
122
5
Illuminate
\
Filesystem
\
Filesystem
put
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Session
/
FileSessionHandler.php
83
4
Illuminate
\
Session
\
FileSessionHandler
write
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Session
/
Store.php
129
3
Illuminate
\
Session
\
Store
save
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Session
/
Middleware
/
StartSession.php
87
2
Illuminate
\
Session
\
Middleware
\
StartSession
terminate
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
218
1
Illuminate
\
Foundation
\
Http
\
Kernel
terminateMiddleware
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
189
0
Illuminate
\
Foundation
\
Http
\
Kernel
terminate
/
public
/
index.php
60
/
var
/
www
/
html
/
WoodLandsNorth
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Filesystem
/
Filesystem.php
     *
     * @param  string  $path
     * @return string
     */
    public function hash($path)
    {
        return md5_file($path);
    }
 
    /**
     * Write the contents of a file.
     *
     * @param  string  $path
     * @param  string  $contents
     * @param  bool  $lock
     * @return int
     */
    public function put($path, $contents, $lock = false)
    {
        return file_put_contents($path, $contents, $lock ? LOCK_EX : 0);
    }
 
    /**
     * Write the contents of a file, replacing it atomically if it already exists.
     *
     * @param  string  $path
     * @param  string  $content
     * @return void
     */
    public function replace($path, $content)
    {
        // If the path already exists and is a symlink, get the real path...
        clearstatcache(true, $path);
 
        $path = realpath($path) ?: $path;
 
        $tempPath = tempnam(dirname($path), basename($path));
 
        // Fix permissions of tempPath because `tempnam()` creates it with permissions set to 0600...
        chmod($tempPath, 0777 - umask());
Arguments
  1. "file_put_contents(): Only 0 of 188 bytes written, possibly out of free disk space"
    
/
var
/
www
/
html
/
WoodLandsNorth
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Filesystem
/
Filesystem.php
     *
     * @param  string  $path
     * @return string
     */
    public function hash($path)
    {
        return md5_file($path);
    }
 
    /**
     * Write the contents of a file.
     *
     * @param  string  $path
     * @param  string  $contents
     * @param  bool  $lock
     * @return int
     */
    public function put($path, $contents, $lock = false)
    {
        return file_put_contents($path, $contents, $lock ? LOCK_EX : 0);
    }
 
    /**
     * Write the contents of a file, replacing it atomically if it already exists.
     *
     * @param  string  $path
     * @param  string  $content
     * @return void
     */
    public function replace($path, $content)
    {
        // If the path already exists and is a symlink, get the real path...
        clearstatcache(true, $path);
 
        $path = realpath($path) ?: $path;
 
        $tempPath = tempnam(dirname($path), basename($path));
 
        // Fix permissions of tempPath because `tempnam()` creates it with permissions set to 0600...
        chmod($tempPath, 0777 - umask());
Arguments
  1. "/var/www/html/WoodLandsNorth/storage/framework/sessions/1ijwnTdoY0uc9FB6N1V0zcvvv7v5MTSUL8mmxTmw"
    
  2. "a:3:{s:6:"_token";s:40:"p6d8XLHOwYZ8w3MOJHgg0PJJxQbUDzRdfjFpBdKf";s:9:"_previous";a:1:{s:3:"url";s:30:"http://woodlandsnorth.net/blog";}s:6:"_flash";a:2:{s:3:"old";a:0:{}s:3:"new";a:0:{}}}"
    
  3. 2
    
/
var
/
www
/
html
/
WoodLandsNorth
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Session
/
FileSessionHandler.php
    /**
     * {@inheritdoc}
     */
    public function read($sessionId)
    {
        if ($this->files->isFile($path = $this->path.'/'.$sessionId)) {
            if ($this->files->lastModified($path) >= Carbon::now()->subMinutes($this->minutes)->getTimestamp()) {
                return $this->files->sharedGet($path);
            }
        }
 
        return '';
    }
 
    /**
     * {@inheritdoc}
     */
    public function write($sessionId, $data)
    {
        $this->files->put($this->path.'/'.$sessionId, $data, true);
 
        return true;
    }
 
    /**
     * {@inheritdoc}
     */
    public function destroy($sessionId)
    {
        $this->files->delete($this->path.'/'.$sessionId);
 
        return true;
    }
 
    /**
     * {@inheritdoc}
     */
    public function gc($lifetime)
    {
        $files = Finder::create()
Arguments
  1. "/var/www/html/WoodLandsNorth/storage/framework/sessions/1ijwnTdoY0uc9FB6N1V0zcvvv7v5MTSUL8mmxTmw"
    
  2. "a:3:{s:6:"_token";s:40:"p6d8XLHOwYZ8w3MOJHgg0PJJxQbUDzRdfjFpBdKf";s:9:"_previous";a:1:{s:3:"url";s:30:"http://woodlandsnorth.net/blog";}s:6:"_flash";a:2:{s:3:"old";a:0:{}s:3:"new";a:0:{}}}"
    
  3. true
    
/
var
/
www
/
html
/
WoodLandsNorth
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Session
/
Store.php
     *
     * @param  string  $data
     * @return string
     */
    protected function prepareForUnserialize($data)
    {
        return $data;
    }
 
    /**
     * Save the session data to storage.
     *
     * @return bool
     */
    public function save()
    {
        $this->ageFlashData();
 
        $this->handler->write($this->getId(), $this->prepareForStorage(
            serialize($this->attributes)
        ));
 
        $this->started = false;
    }
 
    /**
     * Prepare the serialized session data for storage.
     *
     * @param  string  $data
     * @return string
     */
    protected function prepareForStorage($data)
    {
        return $data;
    }
 
    /**
     * Age the flash data for the session.
     *
     * @return void
Arguments
  1. "1ijwnTdoY0uc9FB6N1V0zcvvv7v5MTSUL8mmxTmw"
    
  2. "a:3:{s:6:"_token";s:40:"p6d8XLHOwYZ8w3MOJHgg0PJJxQbUDzRdfjFpBdKf";s:9:"_previous";a:1:{s:3:"url";s:30:"http://woodlandsnorth.net/blog";}s:6:"_flash";a:2:{s:3:"old";a:0:{}s:3:"new";a:0:{}}}"
    
/
var
/
www
/
html
/
WoodLandsNorth
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Session
/
Middleware
/
StartSession.php
        if ($this->sessionConfigured()) {
            $this->storeCurrentUrl($request, $session);
 
            $this->addCookieToResponse($response, $session);
        }
 
        return $response;
    }
 
    /**
     * Perform any final actions for the request lifecycle.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Symfony\Component\HttpFoundation\Response  $response
     * @return void
     */
    public function terminate($request, $response)
    {
        if ($this->sessionHandled && $this->sessionConfigured() && ! $this->usingCookieSessions()) {
            $this->manager->driver()->save();
        }
    }
 
    /**
     * Start the session for the given request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Contracts\Session\Session
     */
    protected function startSession(Request $request)
    {
        return tap($this->getSession($request), function ($session) use ($request) {
            $session->setRequestOnHandler($request);
 
            $session->start();
        });
    }
 
    /**
     * Get the session implementation from the manager.
/
var
/
www
/
html
/
WoodLandsNorth
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
     * @return void
     */
    protected function terminateMiddleware($request, $response)
    {
        $middlewares = $this->app->shouldSkipMiddleware() ? [] : array_merge(
            $this->gatherRouteMiddleware($request),
            $this->middleware
        );
 
        foreach ($middlewares as $middleware) {
            if (! is_string($middleware)) {
                continue;
            }
 
            [$name] = $this->parseMiddleware($middleware);
 
            $instance = $this->app->make($name);
 
            if (method_exists($instance, 'terminate')) {
                $instance->terminate($request, $response);
            }
        }
    }
 
    /**
     * Gather the route middleware for the given request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return array
     */
    protected function gatherRouteMiddleware($request)
    {
        if ($route = $request->route()) {
            return $this->router->gatherRouteMiddleware($route);
        }
 
        return [];
    }
 
    /**
Arguments
  1. Request {
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) { …6}
      #routeResolver: Closure() { …5}
      +attributes: ParameterBag {}
      +request: ParameterBag {#1}
      +query: ParameterBag {#1}
      +server: ServerBag {}
      +files: FileBag {}
      +cookies: ParameterBag {}
      +headers: HeaderBag {}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/blog"
      #requestUri: "/blog"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Response {}
    
/
var
/
www
/
html
/
WoodLandsNorth
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
     */
    protected function dispatchToRouter()
    {
        return function ($request) {
            $this->app->instance('request', $request);
 
            return $this->router->dispatch($request);
        };
    }
 
    /**
     * Call the terminate method on any terminable middleware.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Illuminate\Http\Response  $response
     * @return void
     */
    public function terminate($request, $response)
    {
        $this->terminateMiddleware($request, $response);
 
        $this->app->terminate();
    }
 
    /**
     * Call the terminate method on any terminable middleware.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Illuminate\Http\Response  $response
     * @return void
     */
    protected function terminateMiddleware($request, $response)
    {
        $middlewares = $this->app->shouldSkipMiddleware() ? [] : array_merge(
            $this->gatherRouteMiddleware($request),
            $this->middleware
        );
 
        foreach ($middlewares as $middleware) {
            if (! is_string($middleware)) {
Arguments
  1. Request {
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) { …6}
      #routeResolver: Closure() { …5}
      +attributes: ParameterBag {}
      +request: ParameterBag {#1}
      +query: ParameterBag {#1}
      +server: ServerBag {}
      +files: FileBag {}
      +cookies: ParameterBag {}
      +headers: HeaderBag {}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/blog"
      #requestUri: "/blog"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Response {}
    
/
var
/
www
/
html
/
WoodLandsNorth
/
public
/
index.php
|--------------------------------------------------------------------------
| Run The Application
|--------------------------------------------------------------------------
|
| Once we have the application, we can handle the incoming request
| through the kernel, and send the associated response back to
| the client's browser allowing them to enjoy the creative
| and wonderful application we have prepared for them.
|
*/
 
$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
 
$response = $kernel->handle(
    $request = Illuminate\Http\Request::capture()
);
 
$response->send();
 
$kernel->terminate($request, $response);
 
Arguments
  1. Request {
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) { …6}
      #routeResolver: Closure() { …5}
      +attributes: ParameterBag {}
      +request: ParameterBag {#1}
      +query: ParameterBag {#1}
      +server: ServerBag {}
      +files: FileBag {}
      +cookies: ParameterBag {}
      +headers: HeaderBag {}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/blog"
      #requestUri: "/blog"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Response {}
    

Environment & details:

empty
empty
empty
empty
empty
Key Value
REDIRECT_STATUS
"200"
HTTP_ACCEPT
"*/*"
HTTP_USER_AGENT
"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"
HTTP_ACCEPT_ENCODING
"gzip, br, zstd, deflate"
HTTP_HOST
"woodlandsnorth.net"
PATH
"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
SERVER_SIGNATURE
"<address>Apache/2.4.46 (Ubuntu) Server at woodlandsnorth.net Port 80</address>\n"
SERVER_SOFTWARE
"Apache/2.4.46 (Ubuntu)"
SERVER_NAME
"woodlandsnorth.net"
SERVER_ADDR
"138.197.126.142"
SERVER_PORT
"80"
REMOTE_ADDR
"3.138.174.197"
DOCUMENT_ROOT
"/var/www/html/WoodLandsNorth/public"
REQUEST_SCHEME
"http"
CONTEXT_PREFIX
""
CONTEXT_DOCUMENT_ROOT
"/var/www/html/WoodLandsNorth/public"
SERVER_ADMIN
"[no address given]"
SCRIPT_FILENAME
"/var/www/html/WoodLandsNorth/public/index.php"
REMOTE_PORT
"42754"
REDIRECT_URL
"/blog"
GATEWAY_INTERFACE
"CGI/1.1"
SERVER_PROTOCOL
"HTTP/1.1"
REQUEST_METHOD
"GET"
QUERY_STRING
""
REQUEST_URI
"/blog"
SCRIPT_NAME
"/index.php"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1734797405.855
REQUEST_TIME
1734797405
APP_NAME
"Laravel"
APP_ENV
"local"
APP_KEY
"base64:jc0NINI/eoj8nX/g+ULaxO9lvWDU0TdBzEqZww0fulI="
APP_DEBUG
"true"
APP_URL
"http://www.woodlandsnorth.net"
LOG_CHANNEL
"stack"
DB_CONNECTION
"mysql"
DB_HOST
"127.0.0.1"
DB_PORT
"3306"
DB_DATABASE
"WoodlandsNorth"
DB_USERNAME
"root"
DB_PASSWORD
"BlueTundra09"
BROADCAST_DRIVER
"log"
CACHE_DRIVER
"file"
QUEUE_CONNECTION
"sync"
SESSION_DRIVER
"file"
SESSION_LIFETIME
"120"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"null"
REDIS_PORT
"6379"
MAIL_DRIVER
"smtp"
MAIL_HOST
"127.0.0.1"
MAIL_PORT
"25"
MAIL_USERNAME
"null"
MAIL_PASSWORD
"null"
MAIL_ENCRYPTION
"null"
PUSHER_APP_ID
""
PUSHER_APP_KEY
""
PUSHER_APP_SECRET
""
PUSHER_APP_CLUSTER
"mt1"
MIX_PUSHER_APP_KEY
""
MIX_PUSHER_APP_CLUSTER
"mt1"
NOCAPTCHA_SECRET
"6LevkJIUAAAAAOlNsZLDue5ckBln5QA4dS8Fas72"
NOCAPTCHA_SITEKEY
"6LevkJIUAAAAAJdnUgwvCRDi9EHm3AEmaQmPhZqm"
Key Value
APP_NAME
"Laravel"
APP_ENV
"local"
APP_KEY
"base64:jc0NINI/eoj8nX/g+ULaxO9lvWDU0TdBzEqZww0fulI="
APP_DEBUG
"true"
APP_URL
"http://www.woodlandsnorth.net"
LOG_CHANNEL
"stack"
DB_CONNECTION
"mysql"
DB_HOST
"127.0.0.1"
DB_PORT
"3306"
DB_DATABASE
"WoodlandsNorth"
DB_USERNAME
"root"
DB_PASSWORD
"BlueTundra09"
BROADCAST_DRIVER
"log"
CACHE_DRIVER
"file"
QUEUE_CONNECTION
"sync"
SESSION_DRIVER
"file"
SESSION_LIFETIME
"120"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"null"
REDIS_PORT
"6379"
MAIL_DRIVER
"smtp"
MAIL_HOST
"127.0.0.1"
MAIL_PORT
"25"
MAIL_USERNAME
"null"
MAIL_PASSWORD
"null"
MAIL_ENCRYPTION
"null"
PUSHER_APP_ID
""
PUSHER_APP_KEY
""
PUSHER_APP_SECRET
""
PUSHER_APP_CLUSTER
"mt1"
MIX_PUSHER_APP_KEY
""
MIX_PUSHER_APP_CLUSTER
"mt1"
NOCAPTCHA_SECRET
"6LevkJIUAAAAAOlNsZLDue5ckBln5QA4dS8Fas72"
NOCAPTCHA_SITEKEY
"6LevkJIUAAAAAJdnUgwvCRDi9EHm3AEmaQmPhZqm"
0. Whoops\Handler\PrettyPageHandler