WIP / INCOMPLETE: Modification Discussed in Previous Meeting #10
46
.github/workflows/create-outputs.yml
vendored
Normal file
46
.github/workflows/create-outputs.yml
vendored
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
name: create-ouputs
|
||||||
|
run-name: ${{ github.actor }} is learning GitHub Actions
|
||||||
|
on: [push]
|
||||||
|
jobs:
|
||||||
|
generate-outputs:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
container:
|
||||||
|
image: kicad/kicad:8.0.1
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Verify KiCad installation
|
||||||
|
run: kicad-cli --version
|
||||||
|
|
||||||
|
- run: mkdir build
|
||||||
|
- run: mkdir build/gerbers
|
||||||
|
- run: mkdir build/drill
|
||||||
|
|
||||||
|
- name: Sch ERC
|
||||||
|
run: kicad-cli sch erc *.kicad_sch -o build/erc.rpt --exit-code-violations
|
||||||
|
|
||||||
|
- name: Pcb DRC
|
||||||
|
run: kicad-cli pcb drc *.kicad_pcb -o build/drc.rpt --exit-code-violations
|
||||||
|
|
||||||
|
- name: Export Gerbers
|
||||||
|
run: kicad-cli pcb export gerbers *.kicad_pcb -o build/gerbers/
|
||||||
|
|
||||||
|
- name: Export Drill Files
|
||||||
|
run: kicad-cli pcb export drill *.kicad_pcb -o build/drill/
|
||||||
|
|
||||||
|
# generate dxf
|
||||||
|
# generate glb
|
||||||
|
# generate step
|
||||||
|
# generate SVG
|
||||||
|
# export Sch to PDF
|
||||||
|
|
||||||
|
- name: Export BOM
|
||||||
|
run: kicad-cli sch export bom badge.kicad_sch -o build/bom.csv
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: build
|
||||||
|
path: build/
|
||||||
|
|
||||||
|
# generate interactive BOM
|
||||||
|
|
8
.gitignore
vendored
8
.gitignore
vendored
@ -31,3 +31,11 @@ fp-info-cache
|
|||||||
|
|
||||||
# Exported Gerbers
|
# Exported Gerbers
|
||||||
*.gbr
|
*.gbr
|
||||||
|
*.gbrjob
|
||||||
|
*.gts
|
||||||
|
*.gto
|
||||||
|
*.gta
|
||||||
|
*.gm1
|
||||||
|
*.gbs
|
||||||
|
|
||||||
|
build
|
||||||
|
LOADING
@ -6,14 +6,14 @@
|
|||||||
"apply_defaults_to_fp_fields": false,
|
"apply_defaults_to_fp_fields": false,
|
||||||
"apply_defaults_to_fp_shapes": false,
|
"apply_defaults_to_fp_shapes": false,
|
||||||
"apply_defaults_to_fp_text": false,
|
"apply_defaults_to_fp_text": false,
|
||||||
"board_outline_line_width": 0.09999999999999999,
|
"board_outline_line_width": 0.1,
|
||||||
"copper_line_width": 0.19999999999999998,
|
"copper_line_width": 0.2,
|
||||||
"copper_text_italic": false,
|
"copper_text_italic": false,
|
||||||
"copper_text_size_h": 1.5,
|
"copper_text_size_h": 1.5,
|
||||||
"copper_text_size_v": 1.5,
|
"copper_text_size_v": 1.5,
|
||||||
"copper_text_thickness": 0.3,
|
"copper_text_thickness": 0.3,
|
||||||
"copper_text_upright": false,
|
"copper_text_upright": false,
|
||||||
"courtyard_line_width": 0.049999999999999996,
|
"courtyard_line_width": 0.05,
|
||||||
"dimension_precision": 4,
|
"dimension_precision": 4,
|
||||||
"dimension_units": 3,
|
"dimension_units": 3,
|
||||||
"dimensions": {
|
"dimensions": {
|
||||||
@ -24,7 +24,7 @@
|
|||||||
"text_position": 0,
|
"text_position": 0,
|
||||||
"units_format": 1
|
"units_format": 1
|
||||||
},
|
},
|
||||||
"fab_line_width": 0.09999999999999999,
|
"fab_line_width": 0.1,
|
||||||
"fab_text_italic": false,
|
"fab_text_italic": false,
|
||||||
"fab_text_size_h": 1.0,
|
"fab_text_size_h": 1.0,
|
||||||
"fab_text_size_v": 1.0,
|
"fab_text_size_v": 1.0,
|
||||||
@ -58,10 +58,7 @@
|
|||||||
"width": 0.0
|
"width": 0.0
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"drc_exclusions": [
|
"drc_exclusions": [],
|
||||||
"silk_over_copper|125937379|139159432|5bd8971c-b086-4e86-893d-a946ae743855|00000000-0000-0000-0000-000000000000",
|
|
||||||
"silk_over_copper|88376794|101220292|0af5989f-38c7-4b37-b934-9628cadc3428|00000000-0000-0000-0000-000000000000"
|
|
||||||
],
|
|
||||||
"meta": {
|
"meta": {
|
||||||
"version": 2
|
"version": 2
|
||||||
},
|
},
|
||||||
@ -99,7 +96,7 @@
|
|||||||
"pth_inside_courtyard": "ignore",
|
"pth_inside_courtyard": "ignore",
|
||||||
"shorting_items": "error",
|
"shorting_items": "error",
|
||||||
"silk_edge_clearance": "warning",
|
"silk_edge_clearance": "warning",
|
||||||
"silk_over_copper": "warning",
|
"silk_over_copper": "ignore",
|
||||||
"silk_overlap": "warning",
|
"silk_overlap": "warning",
|
||||||
"skew_out_of_range": "error",
|
"skew_out_of_range": "error",
|
||||||
"solder_mask_bridge": "error",
|
"solder_mask_bridge": "error",
|
||||||
@ -123,15 +120,15 @@
|
|||||||
"min_copper_edge_clearance": 0.0,
|
"min_copper_edge_clearance": 0.0,
|
||||||
"min_hole_clearance": 0.25,
|
"min_hole_clearance": 0.25,
|
||||||
"min_hole_to_hole": 0.25,
|
"min_hole_to_hole": 0.25,
|
||||||
"min_microvia_diameter": 0.19999999999999998,
|
"min_microvia_diameter": 0.2,
|
||||||
"min_microvia_drill": 0.09999999999999999,
|
"min_microvia_drill": 0.1,
|
||||||
"min_resolved_spokes": 2,
|
"min_resolved_spokes": 2,
|
||||||
"min_silk_clearance": 0.0,
|
"min_silk_clearance": 0.0,
|
||||||
"min_text_height": 0.7999999999999999,
|
"min_text_height": 0.8,
|
||||||
"min_text_thickness": 0.08,
|
"min_text_thickness": 0.08,
|
||||||
"min_through_hole_diameter": 0.3,
|
"min_through_hole_diameter": 0.3,
|
||||||
"min_track_width": 0.0,
|
"min_track_width": 0.0,
|
||||||
"min_via_annular_width": 0.09999999999999999,
|
"min_via_annular_width": 0.1,
|
||||||
"min_via_diameter": 0.5,
|
"min_via_diameter": 0.5,
|
||||||
"solder_mask_clearance": 0.0,
|
"solder_mask_clearance": 0.0,
|
||||||
"solder_mask_min_width": 0.0,
|
"solder_mask_min_width": 0.0,
|
||||||
@ -483,7 +480,7 @@
|
|||||||
"gencad": "",
|
"gencad": "",
|
||||||
"idf": "",
|
"idf": "",
|
||||||
"netlist": "",
|
"netlist": "",
|
||||||
"plot": "",
|
"plot": "outputs/",
|
||||||
"pos_files": "",
|
"pos_files": "",
|
||||||
"specctra_dsn": "",
|
"specctra_dsn": "",
|
||||||
"step": "",
|
"step": "",
|
||||||
@ -601,7 +598,7 @@
|
|||||||
"sheets": [
|
"sheets": [
|
||||||
[
|
[
|
||||||
"997a009a-450f-4061-9c08-30af5a78357e",
|
"997a009a-450f-4061-9c08-30af5a78357e",
|
||||||
""
|
"Root"
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"text_variables": {}
|
"text_variables": {}
|
||||||
|
LOADING
61
flake.lock
generated
Normal file
61
flake.lock
generated
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"flake-utils": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1710146030,
|
||||||
|
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1711124224,
|
||||||
|
"narHash": "sha256-l0zlN/3CiodvWDtfBOVxeTwYSRz93muVbXWSpaMjXxM=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "56528ee42526794d413d6f244648aaee4a7b56c0",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-23.11",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
|
"nixpkgs": "nixpkgs"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
29
flake.nix
Normal file
29
flake.nix
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
{
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-23.11";
|
||||||
|
flake-utils.url = "github:numtide/flake-utils";
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = { self, nixpkgs, flake-utils }:
|
||||||
|
flake-utils.lib.eachDefaultSystem
|
||||||
|
(system: let
|
||||||
|
pkgs = nixpkgs.legacyPackages.${system};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
packages = {
|
||||||
|
};
|
||||||
|
|
||||||
|
devShell = pkgs.mkShell {
|
||||||
|
buildInputs = [
|
||||||
|
pkgs.figlet
|
||||||
|
|
||||||
|
pkgs.act
|
||||||
|
];
|
||||||
|
|
||||||
|
shellHook = ''
|
||||||
|
figlet "Badge"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user