Compare commits

...

10 Commits

Author SHA1 Message Date
Brooke Kuhlmann
bd3caab3fc Added version release notes 2023-04-02 10:50:32 -06:00
Brooke Kuhlmann
2f0fa77831 Fixed programs without extensions to install to user directory
Necessary to ensure the Homebrew directory remains clean and is *only* managed by Homebrew. All other programs are downloaded straight from the provider and placed in the `/usr/local/bin` instead.
2023-03-30 14:50:26 -06:00
Brooke Kuhlmann
017f79442b Updated to Ruby 3.2.2
[Details](https://www.ruby-lang.org/en/news/2023/03/30/ruby-3-2-2-released).
2023-03-30 14:50:20 -06:00
Brooke Kuhlmann
cf648adae7 Updated site URLs to use bare domain
Necessary to point to `https://alchemists.io` instead of `https://www.alchemists.io` for short URL convenience. Both URLs work but use of `https://alchemists.io` is now preferred.
2023-02-19 11:22:36 -07:00
Brooke Kuhlmann
af7aa4d0d0 Updated to Ruby 3.2.1
[Details](https://www.ruby-lang.org/en/news/2023/02/08/ruby-3-2-1-released).
2023-02-08 12:29:22 -07:00
Brooke Kuhlmann
0bafd0ea25 Added version release notes 2023-02-05 10:43:52 -07:00
Brooke Kuhlmann
045a254219 Updated to Caliber 0.25.0
[Details](https://www.alchemists.io/projects/caliber/versions).
2023-02-05 10:28:38 -07:00
Brooke Kuhlmann
113f3b88f5 Added Rake binstub
Necessary to reduce typing and be consistent with existing binstub use.
2023-01-22 09:31:11 -07:00
Brooke Kuhlmann
4b77ecefd5 Updated to Git Lint 5.0.0
[Details](https://www.alchemists.io/projects/git-lint/versions).
2022-12-27 17:50:49 -07:00
Brooke Kuhlmann
fc2cca07cf Updated to Caliber 0.21.0
[Details](https://www.alchemists.io/projects/caliber/versions).
2022-12-27 17:32:46 -07:00
8 changed files with 46 additions and 34 deletions

View File

@@ -1 +1 @@
3.2.0
3.2.2

View File

@@ -2,9 +2,9 @@ cff-version: 1.2.0
message: Please use the following metadata when citing this project in your work.
title: macOS
abstract: Provides a shell based framework for automating the setup of a macOS machine.
version: 16.0.0
version: 16.0.2
license: Hippocratic-2.1
date-released: 2022-12-25
date-released: 2023-04-02
authors:
- family-names: Kuhlmann
given-names: Brooke
@@ -17,5 +17,5 @@ keywords:
- automation
- setup
- recovery
repository-code: https://www.alchemists.io/projects/mac_os
repository-artifact: https://www.alchemists.io/projects/mac_os
repository-code: https://alchemists.io/projects/mac_os
repository-artifact: https://alchemists.io/projects/mac_os

View File

@@ -4,6 +4,6 @@ ruby File.read(".ruby-version").strip
source "https://rubygems.org"
gem "caliber", "~> 0.16"
# gem "git-lint", "~> 4.0"
gem "caliber", "~> 0.25"
gem "git-lint", "~> 5.0"
gem "rake", "~> 13.0"

View File

@@ -8,13 +8,13 @@ Shell scripts for automated macOS machine setup.
This project is a framework for automating the setup of a macOS machine. In order to illustrate the
potential of what this project can do, please see the companion
link:https://www.alchemists.io/projects/mac_os-config[macOS Config] project for details. The _macOS
link:https://alchemists.io/projects/mac_os-config[macOS Config] project for details. The _macOS
Config_ project is an opinionated configuration which meets the needs of my development environment
but is also meant to serve as an example and guide for building your own personalized setup. Here is
how the two projects are meant to be used:
* *macOS* (this project) - The foundational framework for building custom macOS machine setups.
* *link:https://www.alchemists.io/projects/mac_os-config[macOS Configuration]* - The layer on top of
* *link:https://alchemists.io/projects/mac_os-config[macOS Configuration]* - The layer on top of
this _macOS_ project which defines a custom machine implementation. The project is meant to be
forked for as many custom machine setups as needed.
@@ -40,8 +40,8 @@ toc::[]
== Screencast
[link=https://www.alchemists.io/screencasts/mac_os]
image::https://www.alchemists.io/images/screencasts/mac_os/cover.svg[Screencast,600,240,role=focal_point]
[link=https://alchemists.io/screencasts/mac_os]
image::https://alchemists.io/images/screencasts/mac_os/cover.svg[Screencast,600,240,role=focal_point]
== Requirements
@@ -56,7 +56,7 @@ To install, run:
----
git clone https://github.com/bkuhlmann/mac_os.git
cd mac_os
git checkout 16.0.0
git checkout 16.0.2
----
== Usage
@@ -172,9 +172,9 @@ All executable scripts can be found in the `bin` folder:
* `bin/run` (required): The main script and interface for macOS setup.
The `lib` folder provides the base framework for installing, re-installing, and uninstalling
software. Everything provided via the link:https://www.alchemists.io/projects/mac_os-config[macOS
software. Everything provided via the link:https://alchemists.io/projects/mac_os-config[macOS
Config] project is built upon the functions found in the `lib` folder. See the
link:https://www.alchemists.io/projects/mac_os-config[macOS Config] project for further details.
link:https://alchemists.io/projects/mac_os-config[macOS Config] project for further details.
* `lib/settings.sh`: Defines global settings for software applications, extensions, etc.
@@ -216,18 +216,18 @@ git clone https://github.com/bkuhlmann/mac_os.git
cd mac_os
----
== link:https://www.alchemists.io/policies/license[License]
== link:https://alchemists.io/policies/license[License]
== link:https://www.alchemists.io/policies/security[Security]
== link:https://alchemists.io/policies/security[Security]
== link:https://www.alchemists.io/policies/code_of_conduct[Code of Conduct]
== link:https://alchemists.io/policies/code_of_conduct[Code of Conduct]
== link:https://www.alchemists.io/policies/contributions[Contributions]
== link:https://alchemists.io/policies/contributions[Contributions]
== link:https://www.alchemists.io/projects/mac_os/versions[Versions]
== link:https://alchemists.io/projects/mac_os/versions[Versions]
== link:https://www.alchemists.io/community[Community]
== link:https://alchemists.io/community[Community]
== Credits
Engineered by link:https://www.alchemists.io/team/brooke_kuhlmann[Brooke Kuhlmann].
Engineered by link:https://alchemists.io/team/brooke_kuhlmann[Brooke Kuhlmann].

View File

@@ -1,9 +1,9 @@
# frozen_string_literal: true
# require "git/lint/rake/setup"
require "git/lint/rake/register"
require "rubocop/rake_task"
Git::Lint::Rake::Register.call
RuboCop::RakeTask.new
# task default: %i[git_lint rubocop]
task default: %i[rubocop]
task default: %i[git_lint rubocop]

View File

@@ -1,5 +1,19 @@
= Versions
== 16.0.2 (2023-04-02)
* Fixed programs without extensions to install to user directory - Brooke Kuhlmann
* Updated site URLs to use bare domain - Brooke Kuhlmann
* Updated to Ruby 3.2.1 - Brooke Kuhlmann
* Updated to Ruby 3.2.2 - Brooke Kuhlmann
== 16.0.1 (2023-02-05)
* Added Rake binstub - Brooke Kuhlmann
* Updated to Caliber 0.21.0 - Brooke Kuhlmann
* Updated to Caliber 0.25.0 - Brooke Kuhlmann
* Updated to Git Lint 5.0.0 - Brooke Kuhlmann
== 16.0.0 (2022-12-25)
* Fixed Node installer to detect Node and version - Brooke Kuhlmann

6
bin/rake Executable file
View File

@@ -0,0 +1,6 @@
#! /usr/bin/env ruby
# frozen_string_literal: true
require "bundler/setup"
load Gem.bin_path "rake", "rake"

View File

@@ -77,18 +77,10 @@ export -f get_install_path
# Parameters: $1 (required) - The file name.
get_install_root() {
local file_name="$1"
local file_extension=$(get_extension "$file_name")
# Special cases not supported by Homebrew.
if [[ "$file_name" == "elm" ]]; then
printf "/usr/local/bin"
return
fi
# Dynamically build the install path based on file extension.
case $file_extension in
case $(get_extension "$file_name") in
'')
printf "$(get_homebrew_bin_root)";;
printf "/usr/local/bin";;
'app')
printf "/Applications";;
'prefPane')