# My journey to installing FreeBSD is incomplete. (Story/intro/help request).



## Ceegen (Jun 10, 2019)

Read this post at your own risk.

Talk about learning curve...

Yes, I read the manual. Read FAQs. Didn't understand a damned word anything was, let alone where to find definitions to things. I have the attention span of a squirrel. About four years ago I started using Ubuntu as just a way of fulfilling a curiosity, and part out of looking for *ahem* alternative operating systems. I had problems using the command line. I was a clicker in World of Warcraft for a few months, anyway. Things got better, I promise. Eventually learning about FreeBSD and the whole philosophy behind the free software movement, watching endless YouTube videos, went back to college and learned math stuff. (I'm American, and it is "M-A-T-H" you heathens).

_TLDR_: "Instructions unclear: Smoked weed and learned to program in CPython." (Obligatory: https://xkcd.com/353/ )

That's not a joke though. About a year and a half ago that is exactly what happened. I'm a disabled vet and would rather do that, than take pills. (It is legal in my state, before you xyz about it one way or the other). Before I hurt my back really bad (it was already bad), the promising prospects of being a carpenter and electrician were in hand. Not so much now. But, I have a bit of experience and background with electricity, which helped me become extremely interested in a more academic approach to computers. Previously, I had only viewed computers and their operation an arcane art, and beyond my comprehension.

It was. Life is hard. I didn't have a computer as a kid. First gaming system was an Atari 1600 dad picked up at the flea market. Came with a bunch of games. Was probably stolen. Later, got an upgrade: Super Nintendo Entertainment System. It was 100% legit. Pressing buttons was my thing. I could press buttons really good.

Anyway, I read the documentation to Python. After about a week of straight reading (and smoking), programmed a text-based "dungeon" game from just all the CPython 3.6 built-ins. I think it was 3.6. Not sure. No pip or fancy 3rd party things though.

Did you know that the calculation for the "power factor" of electricity is the same calculation as the Pythagorean theorem? This is what originally piqued my interest in how computers operate. I want to know all the things. Eventually learning about resistors, capacitors and transistors. Stuff.

Currently learning about LLVM and LLVMlite for Python. PyPy is a thing. Read about Pyglets and OpenGL and OpenGLES. Can read binary and hex fairly well, because math. Not sure what its use for is, aside from feeding machine code directly into the cpu somehow. Probably seen a video about it at some time in the distant past. Don't remember.

Narrowing it down to the point though, sparing __all__ the details:
Been reading about the various flavors of BSD-inspired platforms. Thought FreeBSD would be a great start point, if nothing else, as a way of learning about more systems in general.

*Short term goals:*
Have a FreeBSD install USB. It seems to work on this laptop, but I didn't commit to anything. Didn't even try booting into the live environment.

Too scary to attempt alone, yet. I DID, however, read this page:
https://wiki.freebsd.org/Laptops
And I am fascinated with the idea of possibly helping/contributing by getting it to run on laptops with a production date of anything from 2013 to the current day. Will be acquiring a newer laptop soonish, and I can then safely mess around with this one. Mostly because I'm not comfortable without some kind of backup device, as this is currently my only personal cpu. Can't even run Civ IV, V or VI tho. Disappoint.

Speaking of: Tried installing on an older system (desktop setup) using an AMD Phenom II x4 995. Got as far as getting to some kind of command prompt after entering password and stuff, setting up the user/groups and such, but couldn't get it connect to the internet. Older outdated hardware that required I manually edit something in some configuration file with vi or whatever. DID NOT HAPPEN LOL. That was about a year ago, so gave up trying to do that again, for now.

*Mid-term goals:*
Get FreeBSD installed on this CPU (a Dell laptop) eventually.
Finish programming an "access tracker" application written in CPy3.7 for a real-world job, as a hobby.
Not getting paid, don't want to get paid. Want to contribute. Will be open source, as soon as it isn't crappy. Too embarrassed to post it.

*Long-term goals:*
Write a desktop environment with possibly PyPy or some Python-variant, maybe even a real video game. With graphics. Thinking of learning more about OpenGL. Still noob.

*To the point:*
Can you help me achieve my short term goal of installing FreeBSD on __this__ laptop?
More importantly, from the wiki previously linked to:


```
# mount -u -o rw /
# dmesg > /dmesg.out.txt
# pciconf -lv > /pciconf.out.txt
# devinfo -v > /devinfo.out.txt
# acpidump -dt > /acpidump.out.txt
# mount -u -o ro / ; sync
# zzz
```

I think I can handle that. But, is there anything else I should be doing? Other special commands? Not a whole lot on tutorials concerning installing FreeBSD on laptops that aren't even listed on any website when searching several different search engines, non of which shall be named.

Thank you for your time. Please excuse my ignorance. Reading the forum guidelines resulted in this post. Just going cross-eyed trying to read documentation. A little shove in the right direction is appreciated.


----------



## zirias@ (Jun 10, 2019)

Wall of text is a bit scary ... is there some actual question? No offense, but I'm not sure what exactly you're looking for help with?

Just a word of warning:


Ceegen said:


> Older outdated hardware that required I manually edit something in some configuration file with vi or whatever. DID NOT HAPPEN LOL.


Which editor you use doesn't matter, but if you're unwilling to edit configuration files yourself, FreeBSD isn't the operating system you're looking for. Really. Maybe TrueOS could be for you, I'm not sure, never tried myself.


----------



## Ceegen (Jun 10, 2019)

I find it ironic that a wall of text scares a FreeBSD user.

Just sayin'.


----------



## tingo (Jun 10, 2019)

Learning is the process of failing enough times to finally figure out how things works for the subject you are trying to learn - without giving up (it is ok to take breaks when things are too hard).
There is no magic, only try and try again until you get it to work. Asking smart questions helps.


----------



## Phishfry (Jun 10, 2019)

Ceegen said:


> Get FreeBSD installed on this CPU (a Dell laptop) eventually.


I run Dell E6420, E6220 and E6330 laptops. They work fine except for the ones with "Optimus".
This is Nvidia graphics built in with the Intel CPU graphics as well. Sort of a dual graphics machine.
They work badly on FreeBSD with ACPI being the culprit. Fans at full blast.
The ordinary Dell E6xx0 Intel CPU HD Graphics works very well. Optimus was an option. Service tag will show it.
Optimus machines are Windows centric and the Windows driver is best on these. Good AutoCAD machines.


----------



## Ceegen (Jun 11, 2019)

I've been at it for nearly a year now. Just thought I'd ask a few questions as where to look next for answers.


----------



## zirias@ (Jun 11, 2019)

Well, the answer is probably 42 then. *scnr*

Seriously, first you need to know and articulate the concrete question. For all the generic guidance:

The FreeBSD Handbook should have you covered for installation and configuration of the base system, and a few things beyond that
FreeBSD's manpages are excellent, they're the first thing to look at for specific problems
FreeBSD is a "general purpose" OS, but many settings are more tuned to server operation by default. If you want a desktop, you will find the most common tuning options for that in many online resources like blogs and howtos.
If you run into a specific problem, you can search the bug tracker and/or ask here with a decent description of the problem.
In any case, be prepared to do a lot of configuration, mostly by editing text files. FreeBSD base comes configured in a way that should work for the most common scenarios, but is minimal. FreeBSD ports follow the philosophy to deliver software as originally provided by the authors, leaving you with the configuration (but often installing samples you can look at).


----------



## Gustaaf (Jun 11, 2019)

Forget about FreeBsd as a desktop environment.
I'm really sorry to say so, but unless you're lucky and your hardware is fully supported, it's a waste of time.


----------



## zirias@ (Jun 11, 2019)

Gustaaf said:


> Forget about FreeBsd as a desktop environment.
> I'm really sorry to say so, but unless you're lucky and your hardware is fully supported, it's a waste of time.



I wonder what that unsupported hardware should be? I'm running desktop systems here on an actual desktop PC and on a notebook without any hardware issues. And another desktop system runs in a jail on the server, for remote-desktop access via RDP...

FreeBSD had some problems with GPU support up to version 10 (IIRC), but since the inclusion of Linux drivers (graphics/drm-kmod), there shouldn't be many issues left.


----------



## ShelLuser (Jun 11, 2019)

Ceegen said:


> I find it ironic that a wall of text scares a FreeBSD user.


It doesn't, but it _does_ eat away in the time we reserved for trying to help someone out. And if such a story doesn't help us learn more about the exact problem it automatically becomes a waste of time. Note: for the purpose of trying to help out, nothing wrong with a story from time to time.

My take: get something such as VirtualBox which is a virtual machine that you can run on top of your current OS. Then install BSD in there, this will allow you to experiment to your hearts desire and by doing so learn more about the whole process. It doesn't matter if your specs aren't too high; you don't need a GUI, but more so hands on experience in running BSD.

Heck... I've been using BSD for _years_ now and still remember doing this myself. I actually completely messed up the OS yet also managed to recover all my "breakages" through trial and error, which was quite an educational experience...

This way you can experiment, get hands on experience and you don't have to worry about accidentally trashing your system. Best of both worlds IMO.


----------



## Gustaaf (Jun 11, 2019)

Zirias said:


> I wonder what that unsupported hardware should be? I'm running desktop systems here on an actual desktop PC and on a notebook without any hardware issues. And another desktop system runs in a jail on the server, for remote-desktop access via RDP...
> 
> FreeBSD had some problems with GPU support up to version 10 (IIRC), but since the inclusion of Linux drivers (graphics/drm-kmod), there shouldn't be many issues left.


Well, I'm on a mid 2010 macpro.
It has a Broadcom BCM4322 wireless card.
I had to recompile the kernel to get some support, and even then performance is flaky.
It has an ATI R6xx Audio Group.
I had to recompile the kernel to get HDMI sound out of it.
It has a Macintosh Extended AZERTY Keyboard.
There is no keymap available for it.
I have to make do with a French Macintosh keyboard, which serves its purpose, but has no sound-up, sound-down, mute, and cd/dvd eject/insert keys.
I have two Brother printers available, which I can print to using generic drivers that don't recognize half of the options, and misinterpret the other half.

For the last three months, I spent most of my spare time trying to get basic things to work, and what have I got to show for it ?
Something that very vaguely resembles an operational desktop.

I won't badmouth FreeBsd.
I enjoyed the experience, but as a desktop environment, at least in my case, it's a waste of time.


----------



## malavon (Jun 11, 2019)

Gustaaf said:


> I enjoyed the experience, but as a desktop environment, at least in my case, it's a waste of time.


Yeah, with exotic unsupported and undocumented hardware it becomes difficult. The same statement isn't true on supported hardware though, I've been running a full-time FreeBSD
for 17 years now.


----------



## zirias@ (Jun 11, 2019)

ShelLuser said:


> My take: get something such as VirtualBox which is a virtual machine that you can run on top of your current OS. Then install BSD in there, this will allow you to experiment to your hearts desire and by doing so learn more about the whole process. It doesn't matter if your specs aren't too high; you don't need a GUI, but more so hands on experience in running BSD.
> 
> Heck... I've been using BSD for _years_ now and still remember doing this myself. I actually completely messed up the OS yet also managed to recover all my "breakages" through trial and error, which was quite an educational experience...



This might be the best advice so far. I did the very same thing before deciding to switch to FreeBSD. And, of course, I started from scratch with that virtual machine a few times. Once I was satisfied, I used this VM to build my own FreeBSD installation memory-stick (which is impressively simple to do from the source tree) and used that to install my new server (because back then, I was on 11-CURRENT, as 10-RELEASE didn't have some stuff I needed). I'd advice against doing that, though -- if -RELEASE has everything you need (which should be the case almost always), use an official installer image 

Anyways, I keep saying: don't even try if you're unwilling to edit config files (a lot of them).


----------



## Gustaaf (Jun 11, 2019)

malavon said:


> Yeah, with exotic unsupported and undocumented hardware it becomes difficult. The same statement isn't true on supported hardware though, I've been running a full-time FreeBSD
> for 17 years now.


I wouldn't call Broadcom, Ati Radeon, Brother or Mac exotic or undocumented hardware.


----------



## Sevendogsbsd (Jun 11, 2019)

Apple hardware is designed for OSX. I would certainly not base my FreeBSD experience on a hardware platform that is designed and married to a proprietary OS. I'm just sayin...

I am running FreeBSD as my desktop on a homebuilt PC and have zero hardware issues. The install of the OS takes about 7-8 minutes and the packages longer because of their size. I have done some tweaking for desktop use but nothing drastic.


----------



## malavon (Jun 11, 2019)

Gustaaf said:


> I wouldn't call Broadcom, Ati Radeon, Brother or Mac exotic or undocumented hardware.


undocumented: not having public documentation available which can be used to write drivers
unsupported: not on the FreeBSD supported hardware list
exotic: anything that's not supported as tier 1

Broadcom: doesn't release anything remotely close to documentation in the form of developer manuals
Brother: has no open source drivers for FreeBSD (as opposed to e.g. HP which does support it 10 years past release), no public documentation to write drivers with
ATI: more complex to say, only recently AMD started to open-source its drivers and before that there was next to no documentation, no idea about R6xx exactly
Mac: don't even get me started, Apple does everything it can to prevent people from using their machines (and software) in a way that is not supported by them

I stand by my statement. It's an issue with hardware makers not disclosing how their hardware works. Drivers aren't extremely difficult to write with documentation, but when reverse engineering
comes into play that changes drastically.

I have noticed that in general it's harder to get FreeBSD running correctly on Laptops than it is on desktops (built from parts, not brand ones).  Laptops tend to use more _exotic _hardware 
That might be because the general desktop motherboards will have processors and chipsets that can be expected in low-end servers, which FreeBSD does tend to target as well as high-end ones.


----------



## CraigHB (Jun 12, 2019)

Zirias said:


> I'm running desktop systems here on an actual desktop PC and on a notebook without any hardware issues.



Same here.  I'm currently putting together a new machine to run FreeBSD, but I had no issue with it as a desktop system on my old hardware (I moved long distance recently and retired all of my old hardware, putting together a new FreeBSD box right now).

The trick is you pick the hardware for the OS rather than picking up a box and expecting everything to work.  You can do that with a mainstream retail OS, but that's not FreeBSD on the desktop.  You have build the box (or chose component options) with FreeBSD compatibility in mind.

For example my new laptop computer was purchased to run Windows.  I won't even try to load FreeBSD on it, I already know of several hardware issues I'd run into if I tried.  I'm putting together a little mini-ITX desktop system for FreeBSD using components I know will work well.  Though I'm thinking of taking it to the edge a little with the latest AMD APU, haven't decided yet.


----------



## Sevendogsbsd (Jun 12, 2019)

Funny, I built a new PC (first in 10 years) and didn't pick anything specifically for FreeBSD. Everything works perfectly.  Intel CPU, Msi motherboard,  flawless experience. Maybe I am lucky but my last PC, now my build server, was commercial  and also worked flawlessly.  maybe maybe sticking to mainstream hardware is the way to go.


----------



## mark_j (Jun 12, 2019)

malavon said:


> [...]
> 
> I stand by my statement. It's an issue with hardware makers not disclosing how their hardware works. Drivers aren't extremely difficult to write with documentation, but when reverse engineering
> comes into play that changes drastically.
> ...



I think you should stop saying 'exotic' and simply say unsupported?

Regardless, if a driver isn't available for the most basic of devices, then it's a unarguable point whether FreeBSD is waste of time; it is. If a hardware manufacturer cannot be bothered writing a driver and releasing code for Linux, then they will not even consider the even tinier install base of FreeBSD. Kudos to AMD for at least trying to rectify this. Firmware availability is even a problem in Linux where reverse engineering is the only solution. Linux therefore has the edge over FreeBSD - there's more developers working on it.

Don't get me wrong, FreeBSD is a good OS, it's just not a strong point on the desktop. It's nowhere near the level of Windows 10 (Eek! but supports nearly everything) or even OSX (supports only its own hardware mainly) and probably far behind Linux.

I think we can argue all day about supported devices, but in the end, if the end user can't use a printer, a keyboard, scanner, wifi or network (to name but a few) then they're going to continue to not use FreeBSD. FreeBSD is terrific headless as a server OS, I wouldn't try to use it on a laptop UNLESS:

As CraigHB wrote:
"The trick is you pick the hardware for the OS rather than picking up a box and expecting everything to work "

That is the absolute key.

Some makers (DELL, System76 and Purism) do make laptops designed for Linux, with devices that Linux can support.


----------



## mark_j (Jun 12, 2019)

Sevendogsbsd said:


> Funny, I built a new PC (first in 10 years) and didn't pick anything specifically for FreeBSD. Everything works perfectly.  Intel CPU, Msi motherboard,  flawless experience. Maybe I am lucky but my last PC, now my build server, was commercial  and also worked flawlessly.  maybe maybe sticking to mainstream hardware is the way to go.


Go buy a laptop and let us know how successful you are?
Support for the 'basic' PC is pretty good, it is when you get a bunch of realtek and broadcom hardware that things go ... BOOOM ...


----------



## Sevendogsbsd (Jun 12, 2019)

I hate laptops so nope! Still an oldschool PC guy


----------



## mark_j (Jun 12, 2019)

Sevendogsbsd said:


> I hate laptops so nope! Still an oldschool PC guy


I hate their keyboards, but I'm not lugging a PC, keyboard, monitor and extension cord around in the car! Truth.


----------



## Gustaaf (Jun 12, 2019)

Sevendogsbsd said:


> Apple hardware is designed for OSX. I would certainly not base my FreeBSD experience on a hardware platform that is designed and married to a proprietary OS. I'm just sayin...


Why not ?
On that same Apple hardware I'm running Windows10 and Ubuntu18.
Windows10 needed some minor tweaking, Ubuntu was operational right out of the box, including the Broadcom driver, the Ati Radeon card, and the Brother printers.



			
				Malavon said:
			
		

> As CraigHB wrote:
> "The trick is you pick the hardware for the OS rather than picking up a box and expecting everything to work "


Sure, probably the right thing to do for FreeBsd, but in my opinion that's a serious drawback.

Anyhow, I'm afraid this is getting way off topic.


----------



## Deleted member 9563 (Jun 12, 2019)

Sevendogsbsd said:


> I hate laptops so nope! Still an oldschool PC guy


Yeah, laptops are too exotic for me.


----------



## CraigHB (Jun 12, 2019)

That line is actually getting a little fuzzy now between laptop and desktop with these small form factor desktop devices.  You can even use ARM devices that would fit in a pants pocket.  Right now I keep a keyboard/mouse combo in my laptop bag.  So really the only difference from a small form factor desktop system is there's no attached monitor and no battery.  Otherwise I could fit the stuff in the same bag.

In any case laptop computers are notorious for using specialized hardware, that's just what makers do when they design them.  It is possible to use FreeBSD on a laptop and people do it.  You have to be super picky about the hardware and there's a FreeBSD laptop computer compatibility list I've viewed around here somewhere.

At one I thought in terms of using a laptop system with FreeBSD, but I've decided to go with a small form factor desktop system instead.  Still not as portable as a laptop, but I don't travel much so it's not a problem.


----------



## Sevendogsbsd (Jun 12, 2019)

The laptop specialized hardware is what keeps me from using a laptop for FreeBSD, plus I absolutely hate typing on them. I have a large office and a large desk, so have plenty of room for my FreeBSD PC, my build machine, my work laptop and my only Windows laptop. I do use a separate keyboard for my work laptop to resolve the typing issue. 

I am still an advocate of having way more more computing horsepower than I actually need so that's another reason I like PCs: I can custom build one to my liking.


----------



## NapoleonWils0n (Jun 12, 2019)

Apart from Broadcom wifi Freebsd works perfectly on my 2011 Macbook Air

I had to build a custom kernel to add asmc settings to get the keyboard backlight working
The mini display port works with hdmi or ethernet adaptors

i have an external usb fiio dac and asynchronous 24bit 192khz usb to spdiff converter,
with bitperfect audio enabled on Freebsd and everything worked out of the box

The audio on Freebsd is the best i have ever come across on any operating system

Playing audio files with different sample rates on the Mac with my usb dac
like a  96khz followed by a 44.1 khz  results in the audio slowing down or speeding up,
and you have to stop and restart the audio

On Freebsd it works perfectly first time every time


----------



## CraigHB (Jun 12, 2019)

NapoleonWils0n said:


> The audio on Freebsd is the best i have ever come across on any operating system



That's good to hear since I'd like to get FreeBSD going as a basis for an HTPC, pretty untrodden territory.  But it's also an adventure.


----------



## itsthosestonesman (Jun 12, 2019)

I've been slowly writing a howto for setting up freebsd on a  thinkpad T61, its kind of a a work in progress but try giving this a read, it might give you some ideas.  And you can pick up these laptops second hand pretty cheaply and make a nice machine out of one if you decided to go that way.  Hopefully this can give you some idea of what is involved.

Making a nice FreeBSD laptop at low cost using the Thinkpad T61.

The thinkpad T61 is part of the line of T-series thinkpads produced by Lenovo around 2008.
The machine is cheaply available on ebay and from similar second-hand sources.
Build quality is generally very good, these are robust machines that can stand a lot of
wear and tear.  Many of the examples on sale are corporate disposals which have only had
light duty use, for example it may have sat on a managers desk for years only being used
for email and light web browsing.

The X61 is almost identical hardware but in a smaller 12 inch screen form-facgtor;
much of this tutorial also applies to the X61.

The T61 has a number of desirable features, in particular it was one of the last
thinkpads made with the IBM-style thinkpad keyboard, before Lenovo switched over
to the chiclet style keyboard used on modern thinkpads.  It also has the thinklight,
integrated touchpad and trackpoint, switchable wifi, a built-in DVD drive, matt surface screen
for low screen reflections, gigabit ethernet and a high capacity battery is available.  A docking
station is available which adds features such as a DVI monitor connector and many
more i/o ports.

With a small amount of work these machines can be upgraded to approach the specification
of a modern laptop, at minimal cost.  The CPU can be upgraded, additional memory can be
installed and the hard drive can be replaced with an SSD, all of which bring the performance
up to acceptable levels.  The CPU itself, while not being as powerful as Intel's latest offerings,
still has reasonable performance.  The hardware is well-supported by FreeBSD, I have installed three
T61s and a couple of X61's with very few real problems.  It is worth remembering that only ten years
ago this was a top-specification laptop that sold for thousands for dollars.  Altogether this makes
the T61 a very attractive target to make a FreeBSD laptop at minimum cost.

Of course there are other thinkpads which make good FreeBSD machines, the X201 with slightly
faster core i3 processor is another example.  At the other end of the scale you can get
a new P72 workstation-class thinkpad albeit at a higher price.  So it's worth having a look around
at other models before deciding to jump for the T61, especially as prices in the second-hand
market tend to be very fluid.

Buying the hardware.

I recommend buying a T61 using the intel graphics chip, not the higher specification
nvidia graphics (ie, not the T61p).  The intel graphics is well supported by FreeBSD,
but I am not so sure about the nvidia graphics chip version.  Furthermore, the 'T61p' version
comes with a very high resolution display which can make all your standard X11 fonts and icons
rather small and hard to read, whereas the standard T61 comes with a standard resolution screen.
So I personally prefer the standard T61 over the 'p' version; and its usually cheaper 

Buying tips:- check the level of wear on the keyboard - a very shiny keyboard indicates
it has been used quite a lot, although it may well still be in good working order.
Also check for any sign that the screen backlight is becoming dim, this will be
immediately apparant when you switch it on, but generally this is not an issue.
Check the case for cracks where it may have been dropped, and for missing screws or rubber feet.

One common fault is loose screen hinges, and this happens on most of the older thinkpads.
With the screen open, you may find that there is some play in the screen, you will be able to rock
it forwards and backwards by a few mm.  This is not a major issue as long as the play is not too great.
Replacement hinges are available from online sellers but require dismantling the laptop screen to install.

Even a cheap generic SSD will be much faster than the installed hard disk, 256GB seems
to be the current sweet-spot for maximum value for money, in the UK these sell
for around 30 pounds online.  IMHO it's not worth going for a high-performance drive
like the samsung 840, the price is double that of a standard SSD and the T61 is limited to SATA2 speeds

so you won't obtain that much of a performance improvement over a standard SSD.

The only caveat with respect to the T61 is the cost of the memory upgrade to 8GB;
it requires DDR2-800 SODIMMs which sell for quite a high price because (I think) they are no
longer in production.  Despite this, the low initial cost of the machine itself can
still make it attractive.  And having 4GB or even 2GB memory installed can still
make a perfectly good machine.  I have personally run KDE Plasma 5 desktop, libreoffice,
Firefox, etc all on a machine with 2GB of memory without problems.  It just depends on
what software you want to run.

The wifi adapter is one area that may be problematic.  I have found that
the Intel 4965 adapter works fine with FreeBSD 12 (at least, with MY wifi router!)
I have not tried the atheros adapters, but have read some comments regarding people having problems
with them.  So depending on what your thinkpad comes installed with, it may be necessary
to get an intel wifi card.  Luckily the Intel 4965 wifi adapter is cheaply available on ebay,
for example I bought one recently for 2 pounds (3 dollars) including postage direct from Hong Kong.

In the bill of materials below I have shown the prices I actually paid for my latest T61
build, naturally YMMV depending on what is available on ebay and similar sites when you actually
buy.

Example T61 bill of materials:-
(these are the actual prices I paid; but I think I got lucky with the T61, 60 pounds might be
more realistic.  Right now, 1 pound is approx 1.4 us dollars.
                                                                        £
T61 thinkpad (ebay auction,with 4GB RAM)       30
(includes battery and mains power adapter)
256GB SSD (used, itechonline)                         20
Intel T7300 CPU (ebay, direct from HK)             12
8GB RAM upgrade (ebay)                                 42
Intel 4965 wifi adapter (ebay)                               2

T61/8GB RAM/256GB SSD total cost               106

Upgrading the hardware.

Tools: you will need small philips head screwdrivers typically sold as 'jewellers
screwdrivers' in tools stores.

The T61 hardware service manual is available here :-
this gives instructions with diagrams on how to upgrade the hardware components.
There are also many useful videos on youtube providing instructions on how to do
these upgrades for your T61.

The sequence of steps to upgrade your T61 are as follows:-

1. Install the middleton BIOS; this is an improved BIOS which can be downloaded from here:

After downloading the image, burn it onto a cdrom and boot your T61 from the cdrom using
its built-in dvd drive; the new bios will install automatically.  Please remember that there is
a small level of risk attached to this process, if it goes wrong, it can brick the machine
and you will likely not be able to recover it.  Having said that, it is rather rare for
anything to go wrong, I have personally never seen a problem.  The middleton BIOS is essential
to do the rest of the upgrades; it unlocks the machine to allow full 300GB/s SATA2 disk interface
speed, allows 8GB memory to be installed, and allows the CPU upgrade to be installed.

2. Changing the HDD to the new SSD is very easy, simply pull out the HDD and push in the SSD.

3. The memory upgrade is a little more involved, you must remove the wrist rest and the keyboard
to reveal the SO-DIMM memory slots; the new memory then just slots into place.

4. Upgrading the CPU is the most complicated process but IMHO is well worth doing, given the low
cost of the better CPU.  This procedure gives you both a faster CPU and also replaces the existing
heatsink compound which has likely degraded on a ten-year old machine; the best instructions I have found for
doing this are here: (link)

Replacing the heatsink compound will help your machine run cooler and quieter allowing the fan to stay off
for longer.  When you do this process, remember to brush out the fan with a small artists paint brush
to remove accumulated dust.

While it may appear a little daunting on the first reading, the CPU uggrade procedure is really not very
difficult to carry out.  The golden rule is to proceed methodically and slowly and not rush
things, as always   A note on heatsink compound: I have found that the ebay sellers usually include a small
sachet of heatsink compound when they send you a CPU like the T7300 (although check the advert for details),
which I have found to work perfectly well; if you want something better you can buy a tube of arctic
silver 5 or some other exotic stuff.  Whether you will see any real improvement over using the sachet
that comes with the cpu is very debatable IMHO, but hey, it's your money ;-)

BIOS configuration.

After upgrading your hardware, it's time to configure your BIOS.  Do this BEFORE you install FreeBSD.
Power on the machine and hold down the F1 key so that you get the BIOS setup screen.
Check that the main BIOS screen shows you have the T7300 CPU installed (if you decided to upgrade the CPU)
and the correct amount of memory you have installed.  Then make the following selections:-

1. chose AHCI
2. disable the thinkpad security chip

Installing FreeBSD.

After upgrading your hardware and configuring the BIOS, it's time to install your favourite operating system.
Download the FreeBSD iso from one of the mirror sites, and either burn the ISO onto a DVD
or onto a USB stick, following the instructions on the FreeBSD website.  Installing from a USB stick is
usually a lot faster than installing from cdrom.  You need a stick large enough to hold the iso image,
so an 8GB USB stick to hold the DVD image (say).

Then boot from the install device, and install FreeBSD.  After booting the machine, select the
install freebsd option, and follow the sequence of dialogs.  When asked to choose filesystem, I
recommend using the UFS filesystem on this type of laptop hardware rather than ZFS.
UFS uses a lot less memory and is less resource intensive, which is important on a small machine,
unless you have some specific use case that requires the facilities provided by ZFS.
Of course if you do have some specific use case that requires features of ZFS then go ahead and use ZFS.
I found that choosing the automatic 'use whole disk' partitioning scheme and UFS in the FreeBSD
installer resulted in partitions correctly aligned to 4K boundaries, to get the best performance from the SSD.

Tuning FreeBSD to the hardware.

Finally you can use my loader.conf, sysctl.conf and rc.conf files attached here to save yourself some effort in tuning
FreeBSD to run well on the T61 hardware (UFS install assumed).

These configuration files provide a starting point for further tuning, there may be some settings that
are incomplete or non-optimal.  However I am running with these settings and everything works nicely 

These files set up to support a typical single-user workstation, with the following features:-

1. use link aggregation to provide transparent failover between the wired ethernet and wifi network ports
I have both wired ethernet and wifi at my location, and like to use both.
With this configuration, if the ethernet cable is present, the system will use wired ethernet in preference to wifi.
If you pull out the ethernet cable it will automatically switch to wifi, and vice versa.
Of course if you only have wifi then don't bother with this step and simply configure the wifi interface as usual.

You will need to make the following change to make this work:
1. run ifconfig em0 and record the mac address reported at the 'ether' line in the output
2. edit rc.conf and place the value you just read in this line in rc.conf:-
  create_args_wlan0="wlanaddr 00:1f:e2:10:ef:35"

2. use powerd++ for adaptive power management, this gives a nice silent and cool machine when running on battery,
unless doing something CPU intensive like a long development build.  Frequency scaling ramps up the CPU clock
frequency on-demand and reduces it again as soon as the intensive work ends.

Unfortunately the fan comes on more often when runnning on the mains adapter, I have tried various things to stop
this but so far have been unable to stop it completely, so it may be a limitation of the thinkpad's embedded controller.
If anyone knows any more about this then please let me know.
4. drm2.ko and i915kms.lo are loaded to support the built-in intel G965 graphics chip

5. ntpd and sshd are enabled

6. the ipfw firewall set up for a workstation

7. the acpi_ibm module is loaded to provide support for thinkpad Fn key combinations, eg for screen brightness and LED


----------



## itsthosestonesman (Jun 12, 2019)

Bah, the links didn't paste in properly.  Here they are:-
1. the middleton bios is here http://www.thinkwiki.org/wiki/Middleton's_BIOS
2. the lenovo T61 service manual is here https://download.lenovo.com/ibmdl/pub/pc/pccbbs/mobiles_pdf/42x3547_05.pdf
3. the cpu upgrade instructions are here:- 



_View: https://www.youtube.com/watch?v=yYZtZGX9pQA_

4. Someone has made a very nice page showing how to install freebsd on a virtualbox here: https://kifaru[nix.com/how-to-install-freebsd-12-on-virtualbox.  I recommend working through this for practice before installing freebsd on the real hardware.  It's really easy once you've done it a couple of times.

A final remark - you don't actually NEED to upgrade the memory, bios or cpu if you are happy with the hardware as it comes when you buy it.  So you could just ignore everything I've said about upgrade the hardware and just install it on the laptop as it comes, at least for starting out.  Then when you are more familiar with it, think about whether you want to do the hardware upgrades.  At least you have the option to upgrade the hardware to make it more powerful.


----------



## itsthosestonesman (Jun 12, 2019)

It just occurred to me that you might have got as far as booting the freebsd box and have a console command prompt, and are wondering how to set up the graphical desktop.  There are a couple of ways you can do that.

1. From here http://www.unibia.com/unibianet/freebsd/mate-desktop you can find a nice automated script that will install the mate desktop on your machine for you.  I haven't used that myself but it looks like an easy way to get the desktop set up.  Just read through the instructions on that page.

2. If you want to do it manually, the user vermaden has made a very nice freebsd desktop setup tutorial on his blog, here https://vermaden.wordpress.com/freebsd-desktop/.  You can follow all the steps he sets out to set up your system.  His series is very thorough, covering just about everything you might ever need.


----------



## Ceegen (Jun 15, 2019)

Zirias said:


> Seriously, first you need to know and articulate the concrete question. For all the generic guidance:


Hey man, there was a disclaimer. It was an articulate story with questions interwoven.

My reasoning for being less than specific and making a post with more story-like elements, is that perhaps someone would read it and help me figure out what kind of question to ask. It all sort of goes together, as a bundled explanation, of general principals and knowledge-seeking. The questions I asked weren't as specific as some of the "read this first" material asks for, because it isn't a specific problem I'm having. Just asking where I should look to next for more answers, which is not the same as just simply demanding answers. Right?



> The FreeBSD Handbook should have you covered for installation and configuration of the base system, and a few things beyond that


I had mentioned I attempted to install this about a year ago [nearly two years now, actually] in my OP. Well a year ago when I attempted to install various flavors of BSD, I believe there was a problem with most BSD systems regarding UEFI for laptops? I think NetBSD, specifically, had a notice on their web page about it. Anyway, it wouldn't work, and no config file could fix it. I looked around for answers... A lot. Some of the possible solutions at the time were not feasible for various reasons, part of which was a lack of knowledge, partly a lack of hardware with which to work with.



> FreeBSD's manpages are excellent, they're the first thing to look at for specific problems


Aye, but without being able to install it, seems kind of pointless. If I can't work with what I have, doesn't matter if I can read manpages online, I need the practice. Learning Python for me was more about actually typing and making mistakes with a working system, than learning by only reading. Theory is great, but practice makes perfect, right? <3



> FreeBSD is a "general purpose" OS, but many settings are more tuned to server operation by default. If you want a desktop, you will find the most common tuning options for that in many online resources like blogs and howtos.


Well like I said in my OP, I am getting a second laptop soon. Didn't want to experiment with a new OS that isn't fully supported for my laptop, without having some kind of backup mechanism that requires reinstalling everything from scratch. On a more personal note, I'm just getting by with minimum wage. I want a more technical job, and to be more marketable, playing around with BSD as a server/desktop OS would help me towards bettering myself and my situation. I think, anyway, that's how it works.



> If you run into a specific problem, you can search the bug tracker and/or ask here with a decent description of the problem.
> In any case, be prepared to do a lot of configuration, mostly by editing text files. FreeBSD base comes configured in a way that should work for the most common scenarios, but is minimal. FreeBSD ports follow the philosophy to deliver software as originally provided by the authors, leaving you with the configuration (but often installing samples you can look at).


I have no problem with editing text files from the command line and navigating file systems from a terminal, after using Ubuntu regularly for 3ish years or so now, as an FYI. Progress is being made. <3


----------



## Deleted member 9563 (Jun 16, 2019)

Ceegen said:


> perhaps someone would read it and help me figure out what kind of question to ask.



I'm with you on that concept. Been there, done that.  Me being an amateur it is sometimes difficult in some situations to put my finger on a useful way forward.



Ceegen said:


> *To the point:*
> Can you help me achieve my short term goal of installing FreeBSD on __this__ laptop?



A link or description would be more helpful. (But perhaps I missed it.)

I have noticed though, that when people come here with first time difficulties installing, they often are trying some convoluted methods rather than just hitting the enter button for automatic install. In almost all cases that would work fine, with the possible exception of the wireless card which is easily fixed with a cheap dongle.

That said, if it was me I would try installing on something else if it was really important. Working desktop computers suitable for experimentation are generally a dime a dozen, if not free, from the garbage - at least in North America. That's been my go-to for experimentation. Anyway, without knowing which laptop you are talking about it is difficult to offer an opinion on the matter.


----------



## rigoletto@ (Jun 16, 2019)

Brother printers often have BR-Script3 support and so those don't ever need a driver to work with LPD. Just search how to setup them, there are plenty of information in older threads fo this forum.


----------



## Ceegen (Jun 19, 2019)

Okay fam, new laptop here. Old one is now running FreeBSD. Some things work right away, others not so much.

From the information found at: https://wiki.freebsd.org/Laptops
I have followed the steps under the section labeled "Testing and collecting technical information".
Resume on wake does not work (the last test "zzz").
Where should I post the contents of those files to?
Are there any other tests I should run?

The laptop is a Dell Inspiron 15 3567.


----------



## mvivirito (Jun 19, 2019)

c0ffee.net click the freebsd on a laptop link


----------



## mark_j (Jun 20, 2019)

Ceegen said:


> Okay fam, new laptop here. Old one is now running FreeBSD. Some things work right away, others not so much.
> 
> From the information found at: https://wiki.freebsd.org/Laptops
> I have followed the steps under the section labeled "Testing and collecting technical information".
> ...


I guess the bigger issue is WHY can't we edit the wiki? You know, wikis being designed with that functionality in mind. Then you could just add your data. I remember asking about this years ago, and got nowhere. (IIRC, something about the captcha, care-factor of zero and so on...)


----------

